我們公司使用rails作爲我們的服務器,我們將每天收集任務而無需監控。當rake中止時,我們無法獲取中止信息,直到我們發現我們的數據很奇怪。如何查看自動每日Rake任務的輸出?
如何通過電子郵件或通過任何其他方法儘快獲取耙耙信息?
我們公司使用rails作爲我們的服務器,我們將每天收集任務而無需監控。當rake中止時,我們無法獲取中止信息,直到我們發現我們的數據很奇怪。如何查看自動每日Rake任務的輸出?
如何通過電子郵件或通過任何其他方法儘快獲取耙耙信息?
你可以試試這個寶石 - 如果您通過cron運行你的Rake任務https://github.com/oscardelben/rake_notifier
這是一個空的項目上git-hub .....作者還沒有開始做任何事情...... – kobe6672823 2012-04-24 09:21:08
它不是空的,閱讀README文件。 – 2012-04-24 10:58:58
對於我的疏忽,我很抱歉,我找到了你說的,我要去測試它!謝謝你的幫助:) – kobe6672823 2012-04-24 11:08:52
,您可以定義MAILTO變量(見man 5 crontab
瞭解詳細信息)。這應該將您的cron作業的標準輸出和標準錯誤發送到MAILTO定義的地址。
另一個常見問題是,cron並不總是與普通shell建立相同的環境,所以你應該在你的crontab中設置適當的環境(這將是實現特定的,並且可能不可能和/或可移植的),或者只是創建一個包含運行任務所需的所有必要環境變量的shell腳本。
你的crontab應該是這個樣子:
[email protected]
# 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
見:http://stackoverflow.com/questions/7161374/rails-exception-notifier-in-rake-tasks – Vik 2012-04-24 08:02:13