记录到 syslog
error_log 和 access_log 指令支持记录到 syslog。以下参数用于配置 syslog 日志记录:
server=
address
- 定义 syslog 服务器的地址。地址可以指定为域名或 IP 地址(可带可选端口),或者指定为在“
unix:
”前缀后的 UNIX 域套接字路径。如果未指定端口,则使用 UDP 端口 514。如果域名解析为多个 IP 地址,则使用第一个解析到的地址。 facility=
string
- 设置 syslog 消息的 facility,其定义参见 RFC 3164。Facility 可以是以下值之一:“
kern
”、“user
”、“mail
”、“daemon
”、“auth
”、“intern
”、“lpr
”、“news
”、“uucp
”、“clock
”、“authpriv
”、“ftp
”、“ntp
”、“audit
”、“alert
”、“cron
”、“local0
”..“local7
”。默认值为“local7
”。 severity=
string
- 设置 access_log 的 syslog 消息的 severity,其定义参见 RFC 3164。可能的值与 error_log 指令的第二个参数(级别)相同。默认值为“
info
”。错误消息的 severity 由 nginx 确定,因此该参数在
error_log
指令中被忽略。 tag=
string
- 设置 syslog 消息的 tag。默认值为“
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;
syslog 日志记录自版本 1.7.1 起可用。作为我们商业订阅的一部分,syslog 日志记录自版本 1.5.3 起可用。