2012-11-05 31 views
1

我正在測試什麼時候想知道如何使用它,甚至在閱讀Github文檔後也遇到了麻煩。每當使用gem來安排一個cron作業

我只是想更新我的模型是這樣的屬性(配置/ schedule.rb)

組:輸出 「/log/today.log」

every 10.seconds do 
    runner "Example.update_all(sample: Time.now)" 
end 

我既不看到日誌文件也沒有看到更新的模型屬性。

有什麼我不正確的做法?

+0

您是否部署了crontab作業?嘗試運行'when -w'。你也可以嘗試使用'crontab -l',它應該包含schedule.rb中的你的行 – Dfr

+0

今天早些時候做過,輸出結果如下。不知道爲什麼它只選擇在生產中做到這一點?我在本地測試這個,這可以解釋爲什麼它不會解僱。 – jasdeepg

+0

'每當--help'有選項來設置環境,檢查出來 – Dfr

回答

2

首先,您需要在cron選項卡中添加您的cron作業。 如果你不想添加,因爲你只是測試它,你可以嘗試下面給出的代碼(我爲我的rails應用程序做的)。

cd /home/your_home/your_project && script/your_script -e <environment> "method_call"

你的情況:

environment = development method_call = Example.update_all(sample: Time.now)

它可以幫助你。

+0

這就是我的crontab -l的輸出是:#Begin每當生成任務爲:/ Users/bhander/Dropbox/workspace/rails_projects/chores/config /schedule.rb * * * */bin/bash -l -c'cd/home/your_home/you_project && script/rails runner -e production'\''Example.update_all(sample:Time.now)'\ ''>> /log/today.log 2>&1' – jasdeepg

+0

我懷疑是因爲它在生產環境中,我沒有在本地主機上看到更新。這很容易改變? – jasdeepg