filebeat采集nginx日志
# filebeat采集nginx日志
# 确认nginx日志的位置
cd /etc/nginx/sites-available/
vim stg.91yu.com.conf
# access_log /var/log/nginx/stg.91yu.com.log combined buffer=512k flush=1m;
# error_log /var/log/nginx/stg.91yu.com.error.log warn;
1
2
3
4
5
2
3
4
5
# 给nginx日志格式加一个$host
# 前提是日志格式是默认的格式,如下
# log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" "$host"'
# '"$http_user_agent" "$http_x_forwarded_for"';
sed -i 's/"$http_referer"/"$http_referer" "$host"/' /etc/nginx/nginx.conf
nginx -s reload
1
2
3
4
5
6
2
3
4
5
6
# filebeat打开nginx模块设置
cd /etc/filebeat
filebeat modules enable nginx
filebeat modules list
cd modules.d
vim nginx.yml # 添加日志路径
- module: nginx
access:
enabled: true
#注意日志的格式,是数组形式
var.paths: ["/var/log/nginx/stg.91yu.com.log"]
error:
enabled: true
var.paths: ["/var/log/nginx/stg.91yu.com.error.log"]
ingress_controller:
enabled: false
# 保存即可
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# 修改filebeat配置
vim /etc/filebeat/filebeat.yml
# 修改 kibana 和 elasticsearch 的ip和端口
# 如果elasticsearch有账号密码也要加上
1
2
3
4
2
3
4
# 测试是否采集成功
systemctl restart filebeat
journalctl -e
1
2
2
编辑 (opens new window)