nginx日志主要有两类,分别是访问日志access_log和error_log。log_format是用来配置access_log输出日志格式的,但是error_log是不支持自定义日志格式,只支持配置日志级别。
10.1 access_log配置
10.1.1 ngx_http_log_module模块
模块的帮助文档:
10.1.2配置参数说明:
1、log_format name [escape=default|json|none] string ...;
Nginx 预定义了名为 combined 日志格式,如果没有明确指定日志格式默认使用该格式:
log_format combined '$remote_addr - $remote_user [$time_local] ' '"$request" $status $body_bytes_sent ' '"$http_referer" "$http_user_agent"';
如果不想使用Nginx预定义的格式,可以通过log_format指令来自定义。
- name 日志格式名称。在 access_log 指令中引用。
- escape 设置变量中的字符编码方式是json还是default,默认是default。
- string 要定义的日志格式内容。该参数可以有多个。参数中可以使用Nginx变量。
日志格式中的常见变量注释