在这里只讲配置,不讲作用,建议看官网(https://www.elastic.co/cn/)。
filebeat
①配置filebeat.yml文件
- type: log
//开启监视,不开不采集
enable: true
paths: # 采集日志的路径这里是容器内的path
- /var/english.log
#keys_under_root可以让字段位于根节点,默认为false
json.keys_under_root: true
#对于同名的key,覆盖原有key值
json.overwrite_keys: true
#message_key是用来合并多行json日志使用的,如果配置该项还需要配置multiline的设置,后面会讲
json.message_key: message
#将解析错误的消息记录储存在error.message字段中
json.add_error_key: true
# 日志多行合并采集(配置的时候一定要顶格写)
multiline.pattern: '^\['
multiline.negate: true
multiline.match: after
output.logstash:
# The Logstash hosts
hosts: ["192.168.22.68:5044"]
② 启动filebeat
./filebeat -e -c filebeat.yml
logstash
新建.conf文件(我命名的是english.conf)
input {
beats {
#监测的端口
port => 5044
}
}
output {
elasticsearch {
#es地址
hosts => ["192.168.22.68:9200"]
#索引
index => "english"
}
stdout { codec => rubydebug }
}
定位到安装目录运行logstash
./bin/logstash -f ./config/english.conf
当日志内容发生变化时,logstah会自动打印日志
kibana中效果显示(https://blog.csdn.net/fjxcsdn/article/details/102002297)