侧边栏壁纸
  • 累计撰写 176 篇文章
  • 累计创建 87 个标签
  • 累计收到 1 条评论

目 录CONTENT

文章目录

nginx将日志写到远程的rsyslog

Z先森
2020-08-27 / 0 评论 / 0 点赞 / 18 阅读 / 0 字 / 正在检测是否收录...

rsyslog配置

1、首先rsyslog需要打开如下内容:

$ModLoad imuxsock # provides support for local system logging (e.g. via logger command)
$ModLoad imjournal # provides access to the systemd journal

$ModLoad imudp
$UDPServerRun 514

$ModLoad imtcp
$InputTCPServerRun 514

2、添加模板

$template nginx_access_file,"/log/nginx-logs/%programname%-%$year%-%$month%-%$day%-access.log"
$template nginx_access_format,"%msg:2:$%\n"
#有的人用%msg%,这里用%msg:2:$%是为了日志换行,不然的话,采集到的的日志不换行的

3、配置采集规则

local5.* ?nginx_access_file;nginx_access_format
#这里的local5为自定义的,后续nginx配置里面会说到

nginx配置

access_log syslog:server=x.x.x.x,facility=local5,tag=nginx,severity=info access;
#syslog 表示将日志以syslog形式保存
#server rsyslog服务器地址
#facility 即上面rsyslog配置里面配到的
#tag 标记,在rsyslog里面引用为programname
#severity 日志级别
#access 自定义的nginx日志格式,不加则为默认的

注意点

1、改完配置重启rsyslog、nginx
2、selinux关闭掉

0

评论区