說明
logstash 功能雖然強(qiáng)大店乐,但是基于ruby的配置語法废离、依賴jdk甜刻、消耗系統(tǒng)資源等弊端,使得考慮其他方式來替換logstash王污,filebeat則是一個(gè)完美的替代者
- filebeat基于YAML罢吃,配置簡(jiǎn)單,格式明了
- filebeat只是一個(gè)二進(jìn)制文件昭齐,沒有任何依賴尿招,所以占用資源極少
安裝
#下載
wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.1.1-linux-x86_64.tar.gz
#解壓安裝
tar zxvf filebeat-5.1.1-linux-x86_64.tar.gz
#啟動(dòng)
./filebeat -e -c conffile.yaml
# -e 輸出日志
# -c 指定配置文件
實(shí)例
- 入門實(shí)例
filebeat.prospectors:
- input_type: log
paths: /var/log/nginx/access.log
output.console:
enabled: true
配置解釋:
filebeat.prospectors: 定義數(shù)據(jù)原型
input_type: log,指定數(shù)據(jù)原型為log類型
- log 指定為日志(默認(rèn))
- stdin 標(biāo)準(zhǔn)輸入
paths: 指定日志路徑
output.console: 指定控制臺(tái)標(biāo)準(zhǔn)輸出
nginx日志實(shí)例
nginx 日志格式已配置成json字符串格式:
{"@timestamp":"2017-01-11T16:38:42+08:00","host":"172.16.11.193","clientip":"172.16.11.239","size":"body_bytes_sent","responsetime":0.000,"upstreamtime":"-","upstreamhost":"-","http_host":"172.16.11.193","url":"/index.html","xff":"-","referer":"-","agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36","status":"200"}
filebeat配置:
filebeat.prospectors:
- input_type: log
paths: /var/log/nginx/access.log
json.message_key:
output.elasticsearch:
hosts: ["172.16.11.199"]
index: "filebeat-nginx-%{+yyyy.MM.dd}"
配置詳解:
- json.message_key:定義日志格式為json格式阱驾,filebeat會(huì)根據(jù)日志格式自動(dòng)轉(zhuǎn)換為key=》value
- output.elasticsearch:指定輸出到elasticsearch
- hosts:指定elasticsearch服務(wù)器地址
- index:配置索引
詳細(xì)配置可查看filebeat解壓自帶的filebeat.full.yml文件