将旧的Apache访问日志导入webalizer-忽略记录

问题描述 投票:1回答:2

我昨天在我的apache 2网络服务器上安装了webalizer,遇到了这个问题,即所有旧的访问日志都没有使用。目录列表如下所示:

/var/log/apache2/

access.log
access.log1
access.log.10.gz
access.log.11.gz
...

如何一次导入所有文件?

我尝试了几件事,但它告诉我,记录被忽略了。

希望有人能提供帮助。谢谢!

apache2 webalizer
2个回答
2
投票

我遇到了同样的问题。我刚刚安装了webalizer,并将其更改为增量模式(这是我的/etc/webalizer/webalizer.conf中的相关条目):

LogFile /var/log/apache2/access.log.1
OutputDir /var/www/htdocs/w
Incremental     yes
IncrementalName webalizer.current

然后我手动运行webalizer,它在我的日志目录中初始化了非gz文件。之后,任何手动导入较旧的gz日志文件的尝试(例如通过运行webalizer /var/log/apache2/access.log.2.gz)都会导致所有条目被忽略。

[我怀疑这是因为在gz日志中找到的条目早于上次导入-我不得不删除webalizer.current文件(确实我清除了整个目录-两种方法都应该起作用)。最后,以相反的顺序(最旧的优先),我可以一次导入一个旧的gz文件:

bhs128@home:~$ cd /var/log/apache2
bhs128@home:/var/log/apache2$ sudo rm -rf /var/www/htdocs/w/*
bhs128@home:/var/log/apache2$ ls -1t /var/log/apache2/access.log*gz | grep -o [0-9]* | tail -n1
52
bhs128@home:/var/log/apache2$ for i in {52..2}; do webalizer /var/log/apache2/access.log.$i.gz; done

0
投票

我只是遇到了同样的问题,我查看了webalizer.current文件:

$ head -n 2 webalizer.current
# Webalizer V2.21-02 Incremental Data - 11/05/2019 22:29:02
2019 11 5 22 29 2

第二行似乎包含上次运行的时间戳,因此我将年份更改为2018年。之后,我能够导入比上次导入的日志文件更旧的日志文件,而不必先删除所有数据。

© www.soinside.com 2019 - 2024. All rights reserved.