在做日志分析的时候,日志里很多js、css包括图片等资源文件的访问记录,这些对分析日志没什么太大作用。
在分析脚本上过滤的话还消耗太多时间,所以直接在nginx日志中不记录这些文件的请求记录。
Syntax: access_log path [format [buffer=size] [gzip[=level]] [flush=time] [if=condition]]; access_log off; Default: access_log logs/access.log combined; Context: http, server, location, if in location, limit_except
之前access_log指令一般都配置在server{}段的最后,没尝试过别的位置。
在官方帮助手册里查到可以在location中起作用,那么就用location做这些请求的日志拦截。
location ~ .*\.(js|css)?$ { access_log off; expires 12h; # 注意如果是反向代理,要把请求传递给后端处理,否则就在本地目录找了。 # proxy_pass http://127.0.0.1:8080; } location ~* \.(jpg|gif|png|swf|flv|wma|wmv|asf|mp3|mmf|zip|rar)$ { access_log off; expires 30d; }
这样日志看起来就很干净,分析速度也提高不少。
原创文章,转载请注明。本文链接地址: https://www.rootop.org/pages/4727.html