根据条件分离nginx的access日志的方法
时间:2014-06-19 02:28 来源:linux.it.net.cn 作者:IT网
要求实现如下的日志记录:
当访问ck.php?abc时,将日志记录到abc.log中;当访问ck.php?edf时,将日志记录在edf.log中。其中abc与edf为访问ck.php时加的参数。
实现:
使用if语句判断参数是否以abc开头,然后进行日志的分别存储。
修改nginx.conf,添加:
代码如下:
location /ck.php {
#如果作为反向代理,一定要把proxy写上,否则不会反向代理该文件
if ($args ~ ^abc){
access_log /usr/local/nginx/logs/abc.log;
}
if ($args ~ ^edf){
access_log /usr/local/nginx/logs/edf.log;
}
}
其中:
$args
This variable is equal to arguments in the line of request;
更多的参数,查看nginx的文档中的NginxHttpCoreModule,里的Variables部分。
http://wiki.nginx.org/NginxHttpCoreModule
大家可以根据自己的需要,结合适当的变量来分离出需要的日志。
(责任编辑:IT)
要求实现如下的日志记录: 当访问ck.php?abc时,将日志记录到abc.log中;当访问ck.php?edf时,将日志记录在edf.log中。其中abc与edf为访问ck.php时加的参数。 实现: 使用if语句判断参数是否以abc开头,然后进行日志的分别存储。 修改nginx.conf,添加:
代码如下:
更多的参数,查看nginx的文档中的NginxHttpCoreModule,里的Variables部分。 大家可以根据自己的需要,结合适当的变量来分离出需要的日志。
|