我們有2周的Grails應用程序上運行2.2.5由於舊插件一些依賴。兩者都安裝了Quartz,而另一個卻沒有按預期運行。如何調試石英不觸發我的工作 - 石英插件1.0.1/1.0.2和2.2.5的Grails
在調試我已經去除了一切,離開它基本上爲例:
package test
public class TestJob{
static triggers = {
simple startDelay: 60000, repeatInterval: 1000
}
public def execute(){
log.error "help me"
}
}
所以沒有什麼了不起,但有愛情,也沒有錢數將不顯示。
如果我運行:
TestJob.triggerNow()
我得到:
2014-12-23 14:22:27,685 [quartzScheduler_Worker-1] DEBUG listeners.SessionBinderJobListener - Persistence session is opened.
Error |
2014-12-23 14:22:27,686 [quartzScheduler_Worker-1] ERROR test.TestJob - help me
2014-12-23 14:22:27,686 [quartzScheduler_Worker-1] DEBUG listeners.SessionBinderJobListener - Persistence session is flushed
這是預期,所以我知道,輸出能夠進入日誌流,它不拋出一些沉默的例外。
此外,當我啓動應用程序,我得到以下的輸出:
2014-12-23 14:24:54,282 [localhost-startStop-1] DEBUG quartz.QuartzGrailsPlugin - Scheduled Job Classes count: 2
所以我知道,調度器接他們,但它只是似乎不執行它們。
從Config.groovy中:
quartz {
autoStartup = true
jdbcStore = false
waitForJobsToCompleteOnShutdown = true
exposeSchedulerInRepository = false
props {
scheduler.skipUpdateCheck = true
}
}
我已經嘗試運行在其他應用程序2.2.5這份工作,它的執行沒有失敗,所以我實際上是在虧損的問題是什麼,並有不知道如何進一步調試。
我也打開日誌:
trace 'grails.plugins.quartz', 'grails.app.jobs'
但是,這並沒有真正放棄在輸出的方式很多。
我已經做或通常的清潔和刪除.slcache只是要確定,但我現在敢堅持。
您的建議來幫助調試,將不勝感激。
感謝您的幫助。我可以確認autoStartup設置爲true(我已經編輯了我的原始問題以儘可能多地反映)。我已經添加了額外的日誌,但沒有更多的日誌記錄。 –
這是在新鮮的Grails應用程序2.2.5上發生嗎? –
不,它適用於新鮮的2.2.5應用程序以及另一個具有類似配置的2.2.5應用程序。我並不是說Grails或插件存在問題,因爲顯然其他應用程序證明它確實可行,我只是試圖找出如何進一步調試問題。 –