LogStash的安装部署与应用
介绍
1、Logstash是一个接收,处理,转发日志的工具;
2、Logstash支持网络日志、系统日志、应用日志、apache日志等等,总之可以处理所有日志类型;
3、典型应用场景ELK:logstash负责采集、解析日志,elasticsearch负责数据存储,kibana负责前端报表展示。
下载
https://www.elastic.co/cn/downloads/logstash
安装部署
上传服务器、解压即可使用。
配置
根据需要修改配置文件config/logstash.yml,默认不修改即可运行
- 节点名称:node.name
- 日志级别:log.level(默认debug,如果想要看详细日志改为trace)
根据需要调整jvm.options配置文件:
- -Xms256m
- -Xmx1g
测试安装是否成功:
快速启动,标准输入输出作为input和output
./bin/logstash -e 'input { stdin {} } output { stdout {} }'
使用
主要组件
- Input组件:负责采集日志数据,包括文件、syslog、collectd、kafka、redis等等;
- Filter:负责解析日志数据,包括解析、加工、转换数据等;
- Output:负责输出日志数据,对接到redis、kafka、elasticsearch、hdfs等存储组件;
常用启动参数
-e 立即执行,使用命令行里的配置参数启动实例
./bin/logstash -e ‘input {stdin {}} output {stdout {}}'
-f 指定启动实例的配置文件
./bin/logstash -f config/test.conf
-t 测试配置文件的正确性
./bin/logstash-f config/test.conf -t
-l 指定日志文件名称
./bin/logstash-f config/test.conf -l logs/test.log
-w 指定filter线程数量,默认线程数是5
./bin/logstash-f config/test.conf -w
常用input配置
File
文件读取插件主要用来抓取文件的变化信息,将变化信息封装成Event进程处理或者传递。
input
file {
#监听文件的路径
path => ["E:/software/logstash-1.5.4/logstash-1.5.4/data/*","F:/test.txt"]
#排除不想监听的文件
exclude => "1.log"
#添加自定义的