すべての cron 出力を電子メールではなく syslog に送信するにはどうすればよいでしょうか

すべての cron 出力を電子メールではなく syslog に送信するにはどうすればよいでしょうか

私は-m off電子メールの送信を停止するために cron を実行しており、-sオプションはすべての出力を syslog に送信することになっています。

Cronのコマンドラインは

crond -s -m off

これをテストするためのcronジョブは

* * * * * root /bin/echo hello

私が見ているの/var/log/cron

Jun 17 17:06:01 www08 CROND[4165]: h<FF>

基本的に最初の文字だけが表示されh<FF>

cronジョブを次のように変更すると

* * * * * root /bin/echo world

そして最初の文字を取得しw<FF>

最終的に、私が求めているのは、cronjobs からのすべての出力を syslog に記録し、ログ アラート システムで管理できるようにすることです。

一部の cron ジョブは rpm パッケージから自動的に配置され、他のジョブは別の部門によって配置されるため、すべての cron ジョブを変更したくありません。1002>&1 | logger -t myscriptname台のマシンのすべての cron ジョブの最後に常に追加するのではなく、この問題を一度で解決できるソリューションを探しています。

答え1

この修正はバックポートされており、CentOS 6で利用可能です。centos 6 の最新バージョンをダウンロード. Tim さん、Red Hat に報告してくれてありがとう!

答え2

見つかりました。CentOS 6 のバージョンには、4 年前に修正されたバグがありますが、Redhat によってバックポートされていません。

https://www.fedorahosted.org/cronie/ticket/8

独自の改訂版を構築します。

答え3

デバッグのために -x を付けて crond を実行して、それが役立つかどうか確認できますか? 同じジョブを同じ crond オプションで実行してみましたが、問題なく動作しました。私は Centos7 を使用しています。また、「hello」を使用してみましたか。

関連情報