- - PR -
cronのジョブ実行結果について
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2005-05-07 01:43
こんばんは
今回はcronについてお聞きしたく投稿させて頂きました。 ------------------------ OS:RedHat9 ------------------------ cronは登録しているジョブの実行結果を/etc/crontabに記されている ユーザ(通常はrootだと思いますが)にメール通知していると思いますが、 これをsyslogに通知する方法をご存知ないでしょうか。 実行内容は/var/log/cronに出力されているのは確認とれているのですが・・・ 誰かご存知の方がいらっしゃったら、何卒ご教授の程を宜しくお願い致します。 | ||||||||
|
投稿日時: 2005-05-07 01:46
こんばんわ.
ここまでお分かりなら, /etc/syslog.conf を確認されたらよろしいのでは? | ||||||||
|
投稿日時: 2005-05-07 02:26
kaz様
毎回、誠にありがとうございます。 >ここまでお分かりなら, >/etc/syslog.conf を確認されたらよろしいのでは? /etc/syslog.confにはすでにcronのログとしてのレベル はすべて選択になっています。 /etc/syslog.congのcronの内容 -------------------------------------------------------- 〜省略〜 cron.* /var/log/cron 〜省略〜 -------------------------------------------------------- ですが、実行内容は/var/log/cronに出力されていて実行結果 (メールでcronのジョブが失敗した時の内容は)は出力されていません。 /var/log/cronのcronの内容 -------------------------------------------------------- 〜省略〜 May 6 01:01:00 qqwe CROND[9111]: (root) CMD (run-parts /etc/cron.hourly) May 6 02:01:00 qqwe CROND[9115]: (root) CMD (run-parts /etc/cron.hourly) -------------------------------------------------------- ジョブが失敗した時のメール通知内容 -------------------------------------------------------- To: root@localhost.localdomain Subject: Cron <root@rtst0725> /sbin/ccms_logkansho X-Cron-Env: <SHELL=/bin/bash> X-Cron-Env: <PATH=/sbin:/bin:/usr/sbin:/usr/bin> X-Cron-Env: <MAILTO=root> X-Cron-Env: <HOME=/> X-Cron-Env: <LOGNAME=root> Status: RO /bin/bash: line 1: /sbin/ccms_logkansho: No such file or directory -------------------------------------------------------- 説明が不足して大変申し訳ございません。 何卒ご教授の程を宜しくお願い致します。 | ||||||||
|
投稿日時: 2005-05-07 03:45
つまり,成功/失敗の判定を syslog に書き込みたいのでしょうか?
それは「設定する」ことが困難ではないかと. 失敗した内容が一定かつ単純であればともかく, 全ての内容を全て判定して syslog に記すのは現実的ではないのでは? むしろ,root に送られてくる e_mail を procmail に喰わせて, そのうえでなんらかの処理をしたら如何でしょうか? 極端な話ですが,procmail を利用して logger で syslog に書くのも可能でしょうし. 例えば procmail で受け取った内容を script などで走査して "No such file or directory" なんて語句が見つかったら その内容を特定の file に書き出して, その旨を syslog に書き込むとか... いずれにせよ「設定で」というのは困難と考えます. 以上,ご参考までに. | ||||||||
|
投稿日時: 2005-05-07 23:11
kaz様
ご返答ありがとうございます。 ご連絡が遅くなり大変申し訳ございません
そもそもcronはなぜ実行内容と実行結果をログに出力させたり、mailで通知させたり とわけているのでしょうか?ログだけに内容をはかせるのはやはり無理なのですよね?
また私の通知不足で、大変申し訳ありませんが、今回どうしてもサーバ上でsendmailを起動したくなく(mailを使わないようにしたいくて) て、でもcronの実行結果が欲しくて、ならログにmailで通知してくる内容をログに出力する事はできないのかと言う 事なのです。 ありがとうございました。 | ||||||||
|
投稿日時: 2005-05-07 23:58
こんばんわ.
syslog で書き込む内容は, ご覧になってわかるとおり,1行で表現されます. なので,e_mail に書かれている内容を細分化することが必要になるかと.
なので,cron で実行されている内容を それぞれ個別に処理して syslog に書き込むのは至難ではないかと. 技術的な問題ではなく,面倒だという意味です. cron で e_mail に書き込む処理を, 個別に file に書き出すようにしたら如何でしょうか? まずは「どのように e_mail に書き出されているか?」を確認して, それを「e_mail でなく file に書き出す」ように変更したら, ご要望を満たせるのでは? その処理の過程で,書き出した内容を走査して, error や warning を logger で書き込ませるとか. こんな感じでドウでしょう? |
1