我发现我的服务器上存在一个问题,awstats 会删除前几天的数据。具体来说,这些数据一直显示到月底,但下个月(不一定是 1 号)大约 1-2 周的上个月数据突然丢失。这种情况每个月都会发生。
我猜想这是日志轮换的问题,但很难说。问题可能是由 logresolvemerge 工具引起的(我有单独的常规和 SSL 流量日志)。我的 awstats 配置是:
LogFile="/usr/share/awstats/tools/logresolvemerge.pl /var/log/httpd/[sitename]-sslaccess.log /var/log/httpd/[sitename]-access.log |"
Logrotate配置为(/etc/logrotate.d/apache2):
/var/log/apache2/*.log {
weekly
missingok
rotate 52
compress
delaycompress
notifempty
create 640 root adm
sharedscripts
postrotate
if /etc/init.d/apache2 status > /dev/null ; then \
/etc/init.d/apache2 reload > /dev/null; \
fi;
endscript
prerotate
/usr/local/bin/update.awstats.sh
if [ -d /etc/logrotate.d/httpd-prerotate ]; then \
run-parts /etc/logrotate.d/httpd-prerotate; \
fi;
endscript
}
/usr/local/bin/update.awstats.sh:
AWSTATSBINDIR=/usr/lib/cgi-bin/
AWSTATSCFGDIR=/etc/awstats
# Loop over configs
/usr/local/bin/awstats_updateall.pl now -awstatsprog=$AWSTATSBINDIR/awstats.pl -configdir=$AWSTATSCFGDIR
/usr/local/bin/awstats_updateall.pl 只是来自 awstats 示例目录的脚本。对我来说,这一切似乎都很标准,所以我不知道为什么统计数据在生成后就消失了。
我还注意到,awstats.[date].tmp.[number]
在仅运行 2 个域的服务器上,仅一个月的时间,awstats 在 /val/lib/awstats/ 中就有近 8000 个文件。这似乎太多了,可能与我的问题有关?tmp 文件具有以下权限: