NGINX日志

日志作用

监控服务器状态、分析用户行为和排查问题的重要工具,主要的日志类型:访问日志(Access Log)和错误日志(Error Log)

日志种类

常用变量

日志示例

# 按条件记录访问日志 只记录状态码为 4xx 和 5xx 的请求
map $status $loggable {
    ~^(4|5) 1;  # 匹配 4xx 和 5xx 状态码
    default 0;
}
access_log /var/log/nginx/error_requests.log main if=$loggable;


# 分开记录不同域名的日志
server {
    server_name example.com;
    access_log /var/log/nginx/example.com.access.log;
}

server {
    server_name api.example.com;
    access_log /var/log/nginx/api.example.com.access.log;
}

# 降低日志记录对性能的影响 使用缓冲区减少磁盘 I/O
access_log /var/log/nginx/access.log main buffer=32k flush=1m;