一 、环境
本例配置到一台服务器,也可以根据相同步骤配置多台(web程序中日志直接输入到logstash,可以配置多台,用destination参数)
192.168.95.128 node-001
二、安装
1. 下载安装,压缩包形式
版本选择跟es版本一致。 logstash-5.6.10.tar.gz
2. 解压到 /opt 目录下
tar -zxvf logstash-5.6.10.tar.gz
3. 启动
[root@node-001 bin]# pwd
/opt/logstash-5.6.10/bin
[root@node-001 bin]# ./logstash -e 'input{stdin{}}output{stdout{codec=>rubydebug}}'
4. 结果测试
5. 集成elasticsearch,创建配置文件
[root@node-001 config]# pwd
/opt/logstash-5.6.10/config
[root@node-001 config]# vi logstash-winy-es.conf
文件内容如下:
[root@node-001 config]# vi logstash-winy-es.conf
input {
tcp {
host =>"192.168.95.128"
port => 4560
codec => "json"
}
}
output {
stdout {
codec => rubydebug
}
elasticsearch {
action => "index"
hosts => ["192.168.95.129:9200"]
index => "winy-portal"
}
}
6. 通过5中的配置文件启动即可
[root@node-001 bin]# pwd
/opt/logstash-5.6.10/bin
[root@node-001 bin]# ./logstash -f /opt/logstash-5.6.10/config/logstash-winy-es.conf
7. 防火墙端口开启
[root@node-001 config]# firewall-cmd --zone=public --add-port=4560/tcp --permanent
success
[root@node-001 config]# firewall-cmd --reload
success
8. 程序集成logback,真实使用到项目参考:
https://github.com/winywork/winy-parent
9. kibana中查询
三、 问题解决
1. 因为日志我是用的程序真实日志,当没日志的时候,上面配置OK了打开kibana,会出现如下:
解决办法:启动程序跑业务,有业务日志即可,然后kibana如下