当前,我有一个在cronjob中运行的python脚本。我从脚本重定向任何标准错误,以追加到日志文件。我正在尝试在每次写入的开头添加时间戳,并且无法在我的crontabjob单行代码中弄清楚如何做到这一点。
Cronjob:
*/5 * * * * /usr/bin/python .../jira_ticket.py 2>> .../error.log
在此先感谢您的帮助。
更新:已解决
我已经使用python中的日志记录模块解决了我的问题。该模块需要通过pip安装。
` 导入日志记录
logging.basicConfig(filename ='... / error.log',filemode ='a',format ='\ n \ n \ n%(asctime)s-%(levelname)s-%(message) s') `
所以现在我在日志中的错误显示为:
2018-10-30 16:55:03,259-错误-发生异常
后面是错误。
答案 0 :(得分:0)
基本上,由于gawk,您可以在任何输出消息之前添加前缀,这是一个示例:
command | gawk '{ print strftime("[%Y-%m-%d %H:%M:%S]"), $0 }'
您可以执行相同的操作,但是将被迫对标准输出执行某些操作,以避免将所有内容混入同一日志文件中。
例如:
/usr/bin/python ../jira_ticket.py 1>/tmp/myStandardOutput |& gawk '{ print strftime("[%Y-%m-%d %H:%M:%S]"), $0 }' /tmp/error.log
请注意在管道之后的&,这意味着除了标准输出(此处已将其重定向到专用日志文件)之外,还管道了错误输出。