用于生成 Go Access 报告的 Cron 作业不起作用

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

在我的根 crontab (

sudo crontab -e
) 中,我有这项工作来生成 Go Access 日志报告:

* * * * * goaccess /var/log/nginx/access.log -o /home/me/some/path/report.html

效果很好。我还有这份工作来生成一份跨越多天的报告:

* * * * * sudo zcat -f /var/log/nginx/access.log* | goaccess -o /home/me/some/path/bigger_report.html

Cron 说它运行,但实际上似乎没有运行。我环顾四周并尝试了很多事情(包括遵循此处的列表 - https://stackoverflow.com/a/22744360/3761310),但仍然无法运行此作业。如果我自己运行该命令,它会按预期生成文件。我还尝试了管道之前的部分,输出到 txt 文件并且有效。所以我怀疑这是与 Go Access 的一些交互。

当我启用 cron 日志记录时,该作业运行时会显示以下内容:

(root) CMD (sudo zcat -f /var/log/nginx/access.log* | goaccess -o /home/me/some/path/bigger_report.html)

有什么指点吗?谢谢!

cron zcat goaccess
2个回答
9
投票

您需要让 goaccess 知道您正在使用

-
传输数据。例如,

* * * * * sudo zcat -f /var/log/nginx/access.log* | goaccess - -o /home/me/some/path/bigger_report.html

0
投票

谢谢,非常简单。这个答案不是来自AI

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