一、logstash是什么?
Logstash是一款轻量级的日志搜集处理框架,可以方便的把分散的、多样化的日志搜集起来,并进行自定义的处理,然后传输到指定的位置,比如某个服务器或者文件。
当然它可以单独出现,作为日志收集软件,你可以收集日志到多种存储系统或临时中转系统,如MySQL,redis,kakfa,HDFS, lucene,solr等并不一定是ElasticSearch。
Logstash就像一个数据管道一样,搜集来自不同源的日志,输出到不同的系统:
二、logstash安装与启动
下载logstash-2.4.0:
https://download.elastic.co/logstash/logstash/logstash-2.4.0.tar.gz
解压缩:
$ tar -zxvf logstash-2.4.0.tar.gz
启动logstash:
$ cd logstash-2.4.0
$ ./bin/logstash -e 'input { stdin { } } output { stdout {} }'
Settings: Default pipeline workers: 4
Pipeline main started
这样会以默认形式输出日志,是最简单的日志格式,输入一个单词测试:
hello world
2016-11-21T20:51:22.252Z yaopan.local hello world
设置为格式化输出:
$ ./bin/logstash -e 'input { stdin { } } output { stdout {codec => rubydebug} }'
Settings: Default pipeline workers: 4
Pipeline main started
hello
{
"message" => "hello",
"@version" => "1",
"@timestamp" => "2016-11-21T20:52:11.973Z",
"host" => "yaopan.local"
}
三、导入日志到Elasticsearch
首先,启动elasticsearch(2.3.3版本)。
在logstash-2.4.0根目录下文件新建文件夹conf:
mkdir conf
新建配置文件:
cd conf
vim logstash.conf
logstash.conf内容如下:
input{
stdin{}
}
output{
elasticsearch{
hosts => "127.0.0.1"
}
stdout{codec => rubydebug}
}
导入成功后会在ES中自动创建索引。