3つのcrontabジョブをセットアップして、単純なルビースクリプトを1分ごと、5分ごと、1時間ごとに定期的に実行します。彼らは実行しますが、何もしません。マシン(root
)には1人のユーザーしかいませんし、コマンドを実行してcrontabを設定しましたcrontab -e
。crontab -l
現在のcrontabジョブをリストします。
5 * * * * ruby /root/www/server-monitoring/current/tasks/cpu_check.rb
0 * * * * ruby /root/www/server-monitoring/current/tasks/free_disk_space.rb
1 * * * * ruby /root/www/server-monitoring/current/tasks/free_ram_check.rb
これらのルビーファイルを手動で実行する場合、完全に正常に動作するのに対し、適切な間隔では実行されず、また何も実行されないことがわかります。rubyプログラムが100%正常に動作すること、テストなどに合格することを確認できます。以下にcrontabログを示します。
Dec 6 15:45:01 monitoring-jedrzej CRON[28281]: (root) CMD (command -v debian-sa1 > /dev/null && debian-sa1 1 1)
Dec 6 15:55:01 monitoring-jedrzej CRON[28478]: (root) CMD (command -v debian-sa1 > /dev/null && debian-sa1 1 1)
Dec 6 16:00:01 monitoring-jedrzej CRON[28584]: (root) CMD (ruby /root/www/server-monitoring/current/tasks/free_disk_space.rb)
Dec 6 16:01:01 monitoring-jedrzej CRON[28614]: (root) CMD (ruby /root/www/server-monitoring/current/tasks/free_ram_check.rb)
Dec 6 16:05:01 monitoring-jedrzej CRON[28702]: (root) CMD (ruby /root/www/server-monitoring/current/tasks/cpu_check.rb)
Dec 6 16:05:01 monitoring-jedrzej CRON[28703]: (root) CMD (command -v debian-sa1 > /dev/null && debian-sa1 1 1)
Dec 6 16:15:01 monitoring-jedrzej CRON[29214]: (root) CMD (command -v debian-sa1 > /dev/null && debian-sa1 1 1)
ここに何が欠けていますか?
多分ルビーへのフルパス?/ usr / bin / rubyが好きですか?
—
JdeHaan