【发布时间】:2018-07-15 17:17:11
【问题描述】:
我正在尝试使用 cron 安排 htcacheclean 每半小时运行一次。服务本身运行良好,但我不知道如何获取时间戳以附加到日志条目本身(而不是 cron-log 文件名)。
我无法在任何地方找到关于如何将时间戳添加到日志条目本身的答案。我只看到有关如何将日期时间戳添加到 cron 日志文件名的问题和答案,这不是我想要做的。
这就是我现在在crontab -e 中的内容:
0,30 * * * * /usr/sbin/htcacheclean -v -n -t -p/var/cache/apache/mod_disk_cache -l1M >> /path/to/cron-output.log 2>&1
目前我的输出是这样打印的:
Statistics:
size limit 1.0M
total size was 167.4K, total size now 167.4K
total entries was 5, total entries now 5
现在我只需要在“统计”之前的日志条目旁边显示一个时间戳。
编辑:
我正在尝试做的示例:
0000-00-00 00:00:00: Statistics:
size limit 1.0M
total size was 167.4K, total size now 167.4K
total entries was 5, total entries now 5
我想添加年、月、日、时、分和秒。
提前谢谢!
解决方案:
我想按照@glenn jackman 的建议在此处添加完整的解决方案。
0,30 * * * * { printf "\%s: " "$(date "+\%F \%T")"; /usr/sbin/htcacheclean -v -n -t -p/var/cache/apache/mod_disk_cache -l1M ; } >> /path/to/cron-output.log 2>&1
在 cron 任务中添加 printf 命令后,现在我的输出如下所示:
2018-02-05 21:10:01: Statistics:
size limit 1.0M
total size was 1009.0K, total size now 1009.0K
total entries was 24, total entries now 24
【问题讨论】:
-
您是否希望每条记录都有唯一的时间戳。还是在所有记录上都有 crontab 进入时间就足够了?请使用示例输出记录更新您的 Q。祝你好运。
-
@shellter 每个条目都有唯一的时间戳。你的意思是样本输出,包括我想要的时间戳类型?它将是 Y/m/d H/M/S(年、月、日、小时、分钟、秒),然后是 htcacheclean 的输出。
-
日志记录计算时间的来源是什么?理想情况下,它应该是生成日志输出的程序。是的,请使用您输入所需的确切输出更新您的 Q,包括一些虚拟时间戳。否则,人们很可能会误解您的要求。并且您的系统是否有新版本的
gawk可用。祝你好运。