在写这个问题的过程中,我回答了自己.所以我会自己回答“
Jeopardy-style”.这扩展了丹尼斯威廉姆森提供的答案.
以下内容将任何Cron输出发送到/usr/bin/logger(包括stderr,使用2>& 1转换为stdout),它将发送到syslog,其中包含nsca_check_disk的“标记”. Syslog从那里处理它.由于这些系统(CentOS和FreeBSD)已经具有内置的日志轮换机制,我不需要担心像/var/log/mycustom.log这样的日志填满磁盘.
*/5 * * * * root /usr/local/nagios/sbin/nsca_check_disk 2>&1 | /usr/bin/logger -t nsca_check_disk
/ var / log / messages现在有一条消息说明:
Apr 29, 17:40:00 192.168.6.19 nsca_check_disk: 1 data packet(s) sent to host successfully.
我喜欢/usr/bin/logger,因为它适用于现有的syslog配置和基础设施,并且包含在大多数Unix发行版中.大多数* nix发行版已经进行了日志轮换并且做得很好.