2013-12-11 42 views
2

我正在使用Spring批處理和石英調度程序。我們在數據庫中存儲工作細節。如果發生任何錯誤,那麼錯誤詳細信息將存儲在Postgresql數據庫表(BATCH_JOB_EXECUTION,BATCH_JOB_EXECUTION_PARAMS,BATCH_STEP_EXECUTION,BATCH_STEP_EXECUTION_CONTEXT)中。錯誤細節存儲爲例外prinStackTrace()的細節。我們如何覆蓋這些錯誤信息?如果我們編寫用戶定義的Exception類,那麼我們如何只存儲錯誤消息而不是整個錯誤堆棧跟蹤?春季批處理作業存儲庫中的自定義錯誤消息

+0

看來你試圖編輯邁克爾的答案添加更多的信息。 StackOverflow不是一個論壇。如果您想提供更多信息,您可以在答案下方使用評論,或者更好地編輯您自己的問題。 – Dialecticus

回答

0

堆棧跟蹤分別來自JobExecution的ExitStatus或StepExecution的ExitStatus。如果您希望通過偵聽器(通常是JobExecutionListner或StepExecutionListener),則可以將相應的ExitStatus設置爲自定義值。

+0

我需要那些自定義的錯誤消息還需要存儲在數據庫中。 jobRepository正在處理所有插入,更新。如果我將錯誤消息更改爲自定義值,它是否反映在數據庫中? – user2546024

+0

ExitStatus被保存在JobRepository(數據庫)中。 –

0

我明白了。在JobExecution監聽器中,我爲每個StepExecution更新ExitStatus。然後它也反映在數據庫中。謝謝。