Nginx使用Rsyslog记录日志

直接使用Nginx记录日志,在多台服务器的情况下日志会过于分散不容易管理,不过nginx在1.7.1版本以后,可以使用Rsyslog来记录日志。

Rsyslog可以作为集中日志服务器。使用Ryslog了解两个关键术语。

  • facility:设施,收束日志数据流为有限几个;我们使用的一般是local0-local7自定义收集数据auth, authpriv, cron, daemon, kern, lpr, mail, mark, news, security, user, uucp, syslog, local0-local7

  • proirity:优先级,在记录日志是我们选择一个级别,只要报错信息超过该级别就都会记录debug, info, notice, warn(warning), err(error), crit(critical), alert, emerg(panic)

配置

Nginx相关配置

nginx的access_log使用语法

Syntax: 
  access_log path [format [buffer=size] [gzip[=level]] [flush=time] [if=condition]];
  access_log off;
Default:    access_log logs/access.log combined;
Context:    http, server, location, if in location, limit_except

aceess_log记录到syslog案例

error_log syslog:server=192.168.1.1 debug;
access_log syslog:server=unix:/var/log/nginx.sock,nohostname;
access_log syslog:server=[2001:db8::1]:12345,facility=local7,tag=nginx,severity=info combined;

案例

  1. Nginx我们使用如下Nginx配置
access_log syslog:server=127.0.0.1,facility=local6 main;
  1. 修改Ryslog的配置
vim /etc/rsyslog.conf

### 开启rsyslog端口
$ModLoad imudp
$UDPServerRun 514

# Provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514

### 配置nginx日志的路径,上面我们nginx的facility为local6,所以对应local6的位置
local6.*                                                /var/log/nginx
  1. 重启服务
nginx -s reload
systemctrl restart rsyslog
  1. 查看结果
tail -f /var/log/nginx
查看结果

总结

简单的演示了如何配置Nginx与Rsyslog的结合,Rsyslog作为集中式日志服务器,在日志数量多的情况下会显示出它的优势。

附录

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 转载别人的文章,nginx调优。链接如下:http://blog.csdn.net/xifeijian/artic...
    Alex_ct阅读 1,083评论 0赞 1
  • 了解日志文件是很重要的事情。日志文件可以记录系统在什么时间、哪台主机、哪个服务、出现了什么信息等。可以在系统出现问...
    Zhang21阅读 5,557评论 0赞 5
  • 1 概述 系统日志是记录系统中硬件、软件和系统问题的信息,同时还可以监视系统中发生的事件。用户可以通过它来检查错误...
    ghbsunny阅读 4,253评论 0赞 0
  • 日志管理Rsyslog [TOC] 背景 有一个4台机器的分布式服务,不多不少,上每台机器上查看日志比较麻烦,用F...
    ferret阅读 31,841评论 0赞 6
  • 最赚钱的星座是,立刻做和马上做。
    斐丽希娅阅读 177评论 0赞 0

友情链接更多精彩内容