apache日志不记录指定格式元素的日志

apache不记录指点网站元素的日志,为什么需要这样做,什么情况下需要这样做:

当计算日志pv时,一般不需要统计图片元素的日志,因为,打开一个网页才是一个PV,当RS服务器不希望记录

来自前端负责均衡健康检查的无用日志,整个配置需要mod_setenvif模块的支持,下面我们的案例

案例1:apache不记录图片日志

答:因为统计日志PV时一个页面才算一个PV,而图片js,css等只是图片的元素,如果记录在日志里,然后按日志统计pv那么统计的PV是不准确的。所以考虑不记录图片等日志信息


<FilesMastch "\.(css|js|gif|jpg|ico|swf)">

 SetEnv IMAG 1

<\FilesMastch>


实际的日志配置

CustomLog "| /application/apache/bin/rotatelogs /application/apache/logs/www.access_%Y%m%d.log 86400" combined env=!IMAG


####################

案例2:RS服务器不记录负载均衡健康检查日志

虚拟主机不记录负载均衡向下健康检查文件的日志

 SetEnvIf Request_URL "^/check\.txt$" dontlog

 CustomLog "| /application/apache/bin/rotatelogs /application/apache/logs/www.access_%Y%m%d.log 86400" combined env=!dontlog


 #################################################

 统计apache日志文件信息

 awk -F'[\]\\[\]' '{print $2}' access.log |sort|uniq -c|sort -n

 awk -F'[\]\\[\]' '{++S[$2]} END {for (key in S) print S[key],key}' access.log |sort -n