Nginx日志

日志是系统运行状态的重要统计工具,Nginx也不例外。在Nginx中,日志分为两种access_logerror_log

其中access_log支持格式自定义,有许多可选字段可以定义配置。看一个自定义的配置结构:

log_format myformat '$remote_addr  $status  $time_local';
access_log logs/access.log  myformat;

这个日志中,我们记录了远程地址、请求状态和本地时间,让我们配置好测试一下:

:~/Desktop/work$ curl http://localhost:8080/
hello
:~/Desktop/work$ cat logs/access.log 
127.0.0.1 200 28/Oct/2017:09:38:48 +0800
:~/Desktop/work$ 

可以看到,日志按照预定的格式存储了,值得一提的是log_format必须放在http内,Nginx进程对log文件必须有访问权限。

error_log相对的就不支持格式自定义了,因为出错的原因多种多样,日志等级包括debug、info、notice、warn、error、crit、alert、emerg,debug最详细,emerg最简略,默认的等级为error。

值得注意的是error_log不支持off选项,如果不需要需要把日志文件指定为/dev/null,当然我觉得没人会去关掉错误日志。