Nginx:日志管理
1. 日志类型
Nginx 主要支持两种类型的日志:
- 访问日志 (Access Logs):记录每个 HTTP 请求的详细信息。支持自定义日志格式
- 错误日志 (Error Logs):记录服务器运行过程中遇到的错误信息。支持按需设置日志级别(debug, info, notice, warn, error, crit, alert, emerg)
2. 配置日志位置
默认情况下,Nginx 的日志文件通常位于 /var/log/nginx/
目录下,但你可以在配置文件中自定义日志的位置和格式。
-
全局配置:
在http
或main
块中设置全局的日志路径:error_log /var/log/nginx/error.log; access_log /var/log/nginx/access.log;
-
虚拟主机配置:
你也可以在每个server
块中为不同的虚拟主机指定单独的日志文件:server { listen 80; server_name example.com; access_log /var/log/nginx/example.com.access.log; error_log /var/log/nginx/example.com.error.log; }
3. 日志格式
你可以自定义访问日志的格式,以包含更多或更少的信息。常用的日志格式定义如下:
-
默认格式:
log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"';
-
自定义格式: