私たちは月曜日から金曜日まで仕事を予定しています。 2週間前まででも週5日はまともに運営されました。過去2週間で月曜日は失敗しました。障害点がどこで見つかるかが見つかりません。
### Example Scripts
0 2 * * 1-5 /admin/scripts/example.exp 1>/dev/null 2>&1
私たちはAIX 7.1を実行します。
/var/log/を確認しましたが、そこにcronファイルがありません。問題を解決するために追加する提案を探しています。
ログがにあることが確認されました/var/adm/log
。また、その日時以降にこのエラーが発生し続けます。この最大制限をどのように消去できますか?
c queue max run limit reached Fri Nov 25 21:52:00 2016
! rescheduling a cron job Fri Nov 25 21:52:00 2016
答え1
このエラーメッセージは、c queue max run limit reached
同時ジョブ制限に達したことを意味しますcron
。
私はcron
AIXのデフォルト設定が50の同時作業だと思います。したがって、なぜ50のジョブを同時に実行するのかを調べる必要があります。 (おそらく、それらは互いに重複する同じタスクの複数のインスタンスである可能性があります。)
次の2行はで実行されているタスクのリストを提供し、cron
ここで問題の根本的な原因を調べることができます。
p=$(ps -ef | awk '/[c]ron/{print $2}' | xargs | tr ' ' '|')
ps -ef | egrep "\<($p)\>"
もしあなたなら本物同時ジョブ数を増やす必要がある場合は、次の構成設定を見つけることができます/var/adm/cron/queuedefs
。
c.50j20n60w
どこ
c
=cron
キューNj
= 同時に実行されるジョブの最大数cron
Nn
=nice
実行するジョブの値(デフォルトは2)Nw
= ジョブが次回実行しようとするのを待つ時間
バラよりhttp://www-01.ibm.com/support/docview.wss?uid=isg3T1020382この回答のAIX関連ソースを入手してください。
答え2
crontabの形式は、それがユーザーcrontabであることを示します(時間指定の後に「ユーザー」フィールドを追加するシステムcrontabとは異なります)。
リダイレクトすると、有益なログメッセージが失われます。この試み:
0 2 * * 1-5 /admin/scripts/example.exp >> $HOME/cron.log 2>&1
ホームディレクトリのcron.logファイルから実行結果を取得できます。
答え3
デフォルトのインストールでは、cronジョブが次に記録されます。
/var/log/syslog
以下を実行して、このログファイルにクローンジョブを表示できます。
grep CRON /var/log/syslog
何も再構成していない場合は、そのままになります。