温馨提示×

nginx日志级别怎么设

小樊
33
2026-08-02 18:35:22
栏目: 编程语言

nginx 中,日志级别是通过 error_log 指令来设置的,主要分为 错误日志级别。下面给你一个完整说明。


一、nginx 日志级别有哪些?

nginx 的日志级别(从低到高,信息量从多到少):

级别 说明
debug 调试信息(最详细,需编译时开启 --with-debug
info 一般信息
notice 需要注意的信息
warn 警告信息
error 错误信息(默认级别
crit 严重问题
alert 必须立即处理
emerg 系统不可用

生产环境一般使用 errorwarn


二、如何设置日志级别?

1️⃣ 设置错误日志级别(最常用)

语法:

error_log 文件路径 级别;

示例:

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

或:

error_log logs/error.log warn;

三、常见配置位置

✅ 全局设置(推荐)

nginx.confmain 块

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

✅ 针对某个 server 设置

server {
    listen 80;
    server_name example.com;

    error_log /var/log/nginx/example_error.log warn;
}

✅ 针对某个 location 设置

location /api/ {
    error_log /var/log/nginx/api_error.log debug;
}

四、access_log 有没有级别?

access_log 没有级别

access_log 只控制:

  • 是否记录访问日志
  • 日志格式
  • 日志路径

示例:

access_log /var/log/nginx/access.log main;

五、debug 级别注意事项(很重要)

debug 日志 非常详细,性能影响大,默认 nginx 可能不支持。

1️⃣ 检查是否支持 debug

nginx -V 2>&1 | grep debug

如果没有 --with-debug,需要重新编译 nginx。

2️⃣ 临时调试建议

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

调试完一定要改回来 ❗


六、推荐配置(生产环境)

error_log /var/log/nginx/error.log error;
access_log /var/log/nginx/access.log main;

七、重载配置

修改后执行:

nginx -t
nginx -s reload

如果你愿意,可以告诉我:

  • ✅ 是 生产/测试/本地
  • ✅ 想排查 哪类问题(502、404、性能、反向代理等)

我可以帮你给出最合适的日志配置方案

0