首页 > Web > nginx > 正文

nginx设置自定义变量打印到日志
2017-01-12 15:05:49 点击:

说明:文件为nginx配置文件nginx conf 设置后全局生效,请提前在程序中定义好相关变量名,nginx开启access log写日志功能(默认开启)。1
说明:文件为nginx配置文件nginx.conf 设置后全局生效,请提前在程序中定义好相关变量名,nginx开启access.log写日志功能(默认开启)。
 
1.开启下划线支持 (默认无法识别变量中的下划线):
 
vi /usr/local/nginx/conf/nginx.conf
http{}内添加如下内容:
underscores_in_headers on;


2.在http{}标签内添加如下信息(默认注释),其中最后一行为自定义内容:
vi /usr/local/nginx/conf/nginx.conf
任意处添加如下内容:
 
log_format main ' cdn_ip $remote_addr $remote_user [$time_local] "$request" "$http_host" $request_time '
' $status $body_bytes_sent $ssl_protocol "$http_referer" '
' "$http_user_agent" user_ip "$http_x_forwarded_for" '
' to "$upstream_addr" status $upstream_status time $upstream_response_time '
' mobile-client "$http_op_type" api-version "$http_api_version" app-version "$http_app_version" ' ;
 
如下图:
 
以上代码最后一行:
' mobile-client "$http_op_type" api-version "$http_api_version" app-version "$http_app_version" ' ;
其中:
' ' 内数据为要打印到日志的内容
mobile-client api-version app-version 3个名字以及前面的to user_ip cdn_ip等是为了区分名称任意起的名字,也可忽略不写
$http_op_type $http_api_version $http_app_version 为定义的变量内容,分别对应程序中的 op-type api-version app-version ,需要注意的是自定义的内容必须要$http_开头,内容中的"-"线要修改成下划线"_" ,不然会出现无法打印日志情况;变量前后双引号可写可不写,内容比较多时为了容易审查日志建议加上。
 
3.查看日志:
 
 
日志类型附件:https://www.cnop.net/uploadfile/2017/0112/20170112031325817.docx



相关热词搜索:变量 日志 nginx

上一篇:Nginx更改TLS版本
下一篇:nginx禁止访问某个后缀名的文件