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



在我的根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

克朗说它在运行,但实际上似乎并没有运行。我环顾四周,尝试了很多东西(包括下面的列表-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)

有指针吗?谢谢

您需要让goaccess知道您正在使用-管道传输数据。例如

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

最新更新