Nginx文档-记录日志到syslog

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

1
server=address

定义syslog服务器的地址,可以将该地址指定为附带可选端口的域名或者IP,或者指定为“unix:”前缀之后跟着一个特定的UNIX域套接字路径。如果没有指定端口,则使用UDP的514端口。如果域名解析为多个IP地址,则使用第一个地址。

1
facility=string

设置syslog的消息facility(设备),RFC3164中定义,facility可以是kernusermaildaemonauthinternlprnewsuucpclockauthprivftpntpauditalertcronlocal0local7其中一个。默认是local7.

1
severity=string

设置access_log的消息严重程度,在RFC3164中有定义。可能值与error_log指令的第二个参数(level,级别)相同,默认是info。错误消息的严重程度是有nginx确定的,因此在error_log指令中忽略该参数。

1
tag=string

设置syslog消息标签。默认是nginx

1
nohostname

禁止将hostname域添加到syslog的消息(1.9.7)头中。

syslog配置示例:

1
2
3
4
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.2版本开始可用。作为我们商业订阅的一部分,记录日志到syslog的功能从1.5.3开始可用。

文档译本归档仓库

原文档