2015-10-05 55 views
1

我有幾臺服務器,並且我已經從所有服務器下載了所有文件。有時,其中一臺服務器無法正常工作,ETL無法從故障服務器下載文件。因此,ETL停止並且必須再次手動運行。 我想添加智能,以便它跳過故障的服務器而不會崩潰。你有什麼想法如何設置我的ETL來檢查服務器的狀態。如果我知道服務器的狀態,如果有問題,我可以跳過它。例如,如果服務器3出現問題,我的ETL將能夠從2跳到4來下載文件,而不是在服務器3上崩潰。處理Talend中的ETL故障

任何人都可以幫助我瞭解如何捕獲錯誤和異常並顯示有意義的消息.Thanks

回答

0

從拓藍DI化背景下,很容易就可以遍歷服務器,並顯示在你想要的每一次迭代:

  • 將每個服務器參數:IP,端口,登錄..在分隔的文件
  • tFileList遍歷參數文件
  • tcontextLoad將參數加載到上下文中,每個循環
  • 工作,從遠程服務器加載文件,這裏使用具有從文件加載的值的環境變量,其餘
  • 做出onSubJobError觸發器來處理故障服務器,並確保您的如果出現錯誤,組件不會停止,但大多數組件中都有複選框。
  • 在onSubJobOK和onSubJobError中放入了一些tlogRow。
0

通常所有的組件都有'Die on error'屬性。通過關閉該作業,即使下載步驟失敗,作業也將繼續進行。在tFTP的情況下,將其置於「基本設置」選項卡的底部。您應該向下滾動到底部以查看它。 使用tWarn和tDie組件,您可以捕獲異常並以期望的形式記錄問題。