记录到 syslog

error_logaccess_log 指令支持记录到 syslog。以下参数配置记录到 syslog

server=address
定义 syslog 服务器的地址。地址可以指定为域名或 IP 地址,并带有一个可选端口,或指定为“unix:”前缀后指定的 UNIX 域套接字路径。如果未指定端口,则使用 UDP 端口 514。如果域名解析为多个 IP 地址,则使用第一个解析的地址。
facility=string
设置 syslog 消息的工具,如 RFC 3164 中定义的。工具可以是“kern”、“user”、“mail”、“daemon”、“auth”、“intern”、“lpr”、“news”、“uucp”、“clock”、“authpriv”、“ftp”、“ntp”、“audit”、“alert”、“cron”、“local0”..“local7”中的一个。默认值为“local7”。
severity=string
设置 access_log 的 syslog 消息的严重性,如 RFC 3164 中定义的。可能的值与 error_log 指令的第二个参数(级别)相同。默认值为“info”。
错误消息的严重性由 nginx 确定,因此在 error_log 指令中忽略该参数。
tag=string
设置 syslog 消息的标记。默认值为“nginx”。
nohostname
禁用在 syslog 消息头中添加“hostname”字段(1.9.7)。

示例 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.7.1 起可以使用记录到 syslog。作为我们 商业订阅 的一部分,自版本 1.5.3 起可以使用记录到 syslog。