系统: centos 5.6 i386
官方参考: Getting Started With Filebeat
部署 Filebeat# tar zxvf filebeat-5.0.0-linux-x86.tar.gz
# mv filebeat-5.0.0-linux-x86 /usr/local/elasticsearch/files/filebeat
# cd /usr/local/elasticsearch/files/filebeat
方法一: 配置输出到 elasticsearch
以下为默认设置,即把文件(/var/log/*.log)输出到 elasticsearch
# vi filebeat.yml
filebeat.prospectors:
- input_type: log
paths:
- /var/log/*.log
output.elasticsearch:
hosts: ["localhost:9200"]
把配置改为如下,只读取mysql日志,直接输出到 elasticsearch,同时添加模板
filebeat.prospectors:
- input_type: log
paths:
- /var/log/mysqld.log
output.elasticsearch:
hosts: ["192.168.1.222:9200"]
template.name: "filebeat"
template.path: "filebeat.template.json"
template.overwrite: false
启动 filebeat
./filebeat start
打开kibana地址 http://192.168.1.222:5601/ ,创建以下索引匹配模式: filebeat-*
查询 filebeat-* ,数据已经过来了。
方法二: 配置输出到 logstash
logstash 可以统一筛选匹配有用的数据,也可输出到多个目标
需要配置 logstash 到 elasticsearch 的输出输入,再配置 filebeat 到 logstash 的输出输入
参考: Elasticsearch 入门:logstash 5.0.0 安装及输出数据到 elasticsearch
配置filebeat 的输入为redis日志,输出 logstash (注意:先注释方法一的配置)
# vi filebeat.yml
filebeat.prospectors:
-
input_type: log
paths:
- /var/log/redis_6380.log
output.logstash:
hosts: ["192.168.1.222:5044"]
编辑 logstash 配置文件,配置 logstash 的输入和输出
# vi config/logstashtest.conf
input {
beats {
port => 5044
}
}
output{
elasticsearch {
hosts => ["192.168.1.222:9200"]
index => "test"
}
}
重启 logstas
bin/logstash -f config/logstashtest.conf
检查配置是否正确
./filebeat -configtest -e
重启 filebeat
./filebeat start
打开kibana地址 http://192.168.1.222:5601/ ,默认索引test