当社はレールをサーバーとして使用しており、監視なしで毎日タスクをレーキします。レーキがアボートすると、データが異常であることがわかるまでアボート情報を取得できません。
電子メールまたはその他の方法で、できるだけ早く rake-aborting 情報を取得するにはどうすればよいですか?
当社はレールをサーバーとして使用しており、監視なしで毎日タスクをレーキします。レーキがアボートすると、データが異常であることがわかるまでアボート情報を取得できません。
電子メールまたはその他の方法で、できるだけ早く rake-aborting 情報を取得するにはどうすればよいですか?
cron 経由で Rake タスクを実行している場合は、MAILTO 変数を定義できます (詳細については、を参照man 5 crontab
してください)。これにより、cron ジョブからの標準出力と標準エラーが、MAILTO で定義されたアドレスに送信されます。
もう 1 つの一般的な問題は、cron が常に通常のシェルと同じ環境をセットアップするとは限らないことです。そのため、crontab 内に適切な環境をセットアップする必要があります (これは実装固有であり、可能でないか、移植可能ではない可能性があります)。タスクの実行に必要なすべての環境変数を含むシェル スクリプトを作成するだけです。
crontab は次のようになります。
MAILTO=user@example.com
# This should work if your crontab environment knows about Ruby and Rake.
PATH=/path/to/ruby:$PATH
GEM_PATH=/path/to/gems
0 0 * * * cd /path/to/project; rake foo
# Otherwise, just create a shell script with a sane environment for running
# rake tasks, and call your rake tasks from the script.
1 0 * * * /path/to/your/script.sh
この宝石を試すことができます - https://github.com/oscardelben/rake_notifier