我正在尝试让 awstats 解析 postfix 邮件日志,但是它删除了几乎所有带有类似消息的条目:
损坏的记录(日期 20091204042837 低于 20091211065829-20000):2009-12-04 04:28:37 root root localhost 127.0.0.1 SMTP - 1 17480
还有几个因 LogFormat 无效而被删除:
损坏的记录第 24 行(记录格式与 LogFormat 参数不匹配):2009-11-16 04:28:22 root root localhost 127.0.0.1 SMTP - 14755
我认为我的配置LogFormat="%time2 %email %email_r %host %host_r %method %url %code %bytesd"
与日志格式相匹配(此外,这也是我在 awstats 邮件解析中随处可见的日志格式)。此外,它与邮件日志中的所有其他条目的条目格式相同。
剩下的也将被丢弃:
删除的记录(主机 localhost 和 127.0.0.1 不符合 SkipHosts 的条件):2009-12-07 04:28:36 root root localhost 127.0.0.1 SMTP - 1 17152
我已将其添加SkipHosts=""
到.conf 文件但无济于事。
我感觉 awstats 今天确实与我发生了一些个人争吵。
答案1
这里有几个不同的问题:
awstats 需要按时间顺序排列输入日志。如果您有一个日志文件,
sort
(man sort(1))应该足够了。如果您有多个日志文件,您可以使用日志解析工具报告的行缺少一个字段:
- %time2 = 2009-11-16 04: 28:22
- %电子邮件=根
- %email_r = 根
- %主机=本地主机
- %host_r = 127.0.0.1
- %方法 = SMTP
- %url = -
- %代码 = 14755
- %bytesd = [缺失]
如果数量不多,我就会直接删除这些行,也许它们已经以某种方式被损坏了。
答案2
尝试 HostAliases="127.0.0.1 ...
说实话,这让我怀疑 Postfix 是否设置错误。gfe/oh