帮助中心

立即注册 咨询客服

当前位置:首页 > 帮助中心> 如何在服务器中配置Nginx错误日志

如何在服务器中配置Nginx错误日志

发布时间:2020年05月15日 16:43:57    来源: A5互联

Nginx在错误日志文件中写入有关应用程序和常规服务器错误的消息。如果您在Web应用程序中遇到错误,则错误日志是开始进行故障排除的第一个位置。

该error_log指令启用并设置错误日志的位置和严重性级别。它采用下列形式,并且可以内的设置http,server或location块:

error_log log_file log_level

该log_level参数设置日志记录级别。以下是按严重性(从低到高)列出的级别:

debug –调试消息。

info –信息性消息。

notice –注意。

warn –警告。

error –处理请求时出错。

crit–关键问题。需要迅速采取行动。

alert–警报。必须立即采取行动。

emerg- 紧急情况。系统处于无法使用状态。

每个日志级别包括更高级别。例如,如果你的日志级别设置为warn,Nginx的也将日志error,crit,alert,和emerg消息。

当log_level不指定参数,则默认为error。

默认情况下,该error_log指令http在主nginx.conf文件内的指令中定义:

/etc/nginx/nginx.conf


http {

...

error_log /var/log/nginx/error.log;

...

}

与访问日志相同,建议为每个服务器块设置一个单独的错误日志文件,该文件将覆盖从更高级别继承的设置。

例如,要将domain.com的错误日志设置为warn您将使用:


http {

...

error_log /var/log/nginx/error.log;

...


server {

server_name domain.com

error_log /var/log/nginx/domain.error.log warn;

...

}

}

每当您修改配置文件时,都必须重新启动Nginx服务,以使更改生效。

日志文件的位置

默认情况下,在大多数Linux发行版(如Ubuntu,CentOS和Debian)上,访问和错误日志位于/var/log/nginx目录中。

阅读和了解Nginx日志文件

您可以打开并使用类似的标准命令解析日志文件cat,less,grep,cut,awk,等。

这是来自访问日志文件的示例记录,该记录使用默认的Combine Nginx日志格式:

192.168.33.1 - - [15/Oct/2019:19:41:46 +0000] "GET / HTTP/1.1" 200 396 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36"

让我们分解一下记录的每个字段的含义:

$remote_addr– 192.168.33.1–发出请求的客户端的IP地址。

$remote_user– -– HTTP认证用户。未设置用户名时,显示-。

[$time_local]– [15/Oct/2019:19:41:46 +0000]–本地服务器时间。

"$request"– "GET / HTTP/1.1"–请求类型,路径和协议。

$status– 200–服务器响应代码。

$body_bytes_sent– 396–服务器响应的大小(以字节为单位)。

"$http_referer"– "-"–引荐网址。

"$http_user_agent"– Mozilla/5.0 ...–客户端的用户代理(Web浏览器)。

使用以下tail命令实时查看日志文件:

tail -f access.log