SDs*_*lar 4 cron log syslog 16.04
我知道 cron 事件存储在其中/var/log/syslog
,我可以使用如下命令:
sudo cat /var/log/syslog | grep cron
Run Code Online (Sandbox Code Playgroud)
去看他们。
我宁愿让系统保留一个单独的 cron 日志文件,这样它就不会做太多的工作来观察它,因为它syslog
会对所有消息进行排序以提取cron
通知。
然后我想使用该watch
命令,所以我总是有一个打开的终端窗口显示 cron 活动。
如何让系统保留一个单独的/var/log/cron.log
文件?
SDs*_*lar 11
这是最简单的方法:
-->/etc/rsyslog.d/50-default.conf
使用您最喜欢的编辑器进行更改:
sudo gedit /etc/rsyslog.d/50-default.conf
Run Code Online (Sandbox Code Playgroud)
使用Ctrl- f(查找)并键入cron
以查找显示的行
#cron.* /var/log/cron.log
Run Code Online (Sandbox Code Playgroud)
#
从该行中删除。然后重启服务:
service rsyslog restart
Run Code Online (Sandbox Code Playgroud)
从那时起,所有与 cron 相关的输出都将转到 /var/log/cron.log
为了防止cron
发送摘要电子邮件,请将此行放在crontab
文件的开头:
crontab -e
(Insert first line)
MAILTO=""
Run Code Online (Sandbox Code Playgroud)
然后要近乎实时地观看它,首先创建一个wcron
命令:
echo "#!/bin/bash" >wcron
echo "watch -n 10 tail -n 25 /var/log/cron.log" >>wcron
chmod +x wcron
sudo cp wcron /usr/sbin
Run Code Online (Sandbox Code Playgroud)
每当您想cron
在终端窗口中近乎实时地进行监控时,请输入:
wcron
Run Code Online (Sandbox Code Playgroud)
这对于在 4 个虚拟桌面之一中打开非常方便,可能与系统监视器一起打开。
如果您想查看的不仅仅是较长作业的启动时间,很容易让 cron.log 显示脚本开始时间和脚本结束时间,以及非零退出状态消息。
释义摘录:
从在Ubuntu 15.04,新贵使用
/etc/init/*.conf
被替换systemd使用配置文件中/lib/systemd/system/
和/etc/systemd/system/
。尽管/etc/init/cron.conf
Ubuntu 16.04 中仍然存在一个文件,但cron
现在通常用于启动的脚本是/lib/systemd/system/cron.service
.
要添加该-L 15
选项,请使用以下命令打开编辑器:
sudo systemctl edit --full cron
Run Code Online (Sandbox Code Playgroud)
或者我建议:
sudo gedit /lib/systemd/system/cron.service
Run Code Online (Sandbox Code Playgroud)
并更换线
ExecStart=/usr/sbin/cron -f $EXTRA_OPTS
Run Code Online (Sandbox Code Playgroud)
和
ExecStart=/usr/sbin/cron -L 15 -f $EXTRA_OPTS
Run Code Online (Sandbox Code Playgroud)
然后重新加载配置:
sudo systemctl restart cron
Run Code Online (Sandbox Code Playgroud)
它也会在启动时加载它。
这可以wcron
显示您在 cron 系统按计划运行脚本时所需的所有信息。
监控的最后一个想法cron
是教你的脚本说话。
我的许多脚本会在开始和停止时发出通知,或者在遇到错误时进行通知。
可以在espeak
命令中调整音量,因此它们可以是微妙的。
归档时间: |
|
查看次数: |
15799 次 |
最近记录: |