1

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

/var/log/apache2/

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

如何一次导入所有文件?

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

希望有人能帮忙。谢谢!

4

2 回答 2

3

我遇到了同样的问题。我刚刚安装了 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
于 2014-06-05T04:41:19.263 回答
1

我刚遇到同样的问题,我查看了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 年。之后,我能够导入比上次导入的日志文件更旧的日志文件,而无需先删除所有数据。

于 2019-11-05T21:55:12.517 回答