我想启用访问日志以查看有关我们服务的统计信息,我遇到的问题是访问日志格式的 $request 保存了所有 GET 参数(这是有道理的,因为它是请求的一部分)
但我想隐藏这些信息,而不是在日志中看到:
98.207.174.147 - - [26/Apr/2014:23:59:09 +0000] "GET /v1/api.json?parameter1=value1¶mter2=value2" HTTP/1.1" 200 13449 "-" "httperf/0.9.0"
Run Code Online (Sandbox Code Playgroud)
我想看看
98.207.174.147 - - [26/Apr/2014:23:59:09 +0000] "GET /v1/api.json" HTTP/1.1" 200 13449 "-" "httperf/0.9.0"
Run Code Online (Sandbox Code Playgroud)
has*_*sin 11
您可以使用log_format
的指令ngx_http_log_module
。
例如,这种格式只会显示没有任何查询字符串的 uri:
http {
log_format combined_no_query '$remote_addr - $remote_user [$time_local] '
'"$uri" $status $body_bytes_sent '
'"$http_referer" "$http_user_agent"';
//other configs ...
}
server {
access_log /var/log/nginx/access.log combined_no_query
//...
}
Run Code Online (Sandbox Code Playgroud)
请注意$uri
用于仅记录 uri 而没有任何查询字符串的变量。
log_format
指令的文档:http : //nginx.org/en/docs/http/ngx_http_log_module.html
更多变量:http : //nginx.org/en/docs/http/ngx_http_core_module.html#var_uri
归档时间: |
|
查看次数: |
11450 次 |
最近记录: |