エラー処理
このシナリオはTalend Data Management Platform、Talend Big Data PlatformTalend Real-Time Big Data Platform、Talend MDM PlatformTalend Data Services Platform、Talend MDM PlatformおよびTalend Data Fabricにのみ適用されます。
このシナリオでは、tHMapコンポーネントを使ってエラー状態を処理する方法を示す6コンポーネントジョブを作成します。
tHMapがTalend Data Mapperマップを実行する時は常にExecutionStatusオブジェクトが返されます。このオブジェクトへのポインターは<tHMap_id>_EXECUTION_STATUSとしてglobalMapに保存されます。また、[Overall Severity] (全体的な重大度)の数値も<tHMap_id>_EXECUTION_SEVERITYとしてglobalMapに保存されます。
最後に、[Exception Threshold] (例外しきい値)というパラメーターが定義されます。これによって例外を返す重大度が指定され、ジョブ関連またはコンポーネント関連のエラー処理がトリガーされます。この値は、[Advanced settings] (詳細設定)タブにあるtHMapのプロパティで定義できます。このパラメーターのデフォルト値は[Fatal] (致命的)です。
- getOverallSeverity(): 最高レベルの重大度を数値で返します。
- INFOの場合は1が返されます。
- WARNの場合は2が返されます。
- ERRORの場合は4が返されます。
- FATALの場合は0x40が返されます。
- isOK(): 警告、エラー、致命的ステータスがない場合はtrueが返されます。
- exportToXml(writer): ステータス項目をXML形式で書き込みます。
- getFirstNonInfo(): INFOよりも重大度が高い最初のステータス項目に対応する、org.talend.transform.runtime.common.StatusItemクラスのオブジェクトを返します。INFOステータスの項目しかない場合、このメソッドはNullを返します。
このorg.talend.transform.runtime.common.StatusItemオブジェクトでは、getAsText()メソッドを使用できます。このメソッドは、ステータス項目の説明を人間が読める形式の文字列として返します。
- getItem(int_index): 項目のコレクションで、指定されたインデックスにあるステータス項目を返します。このインデックスはゼロベースです。
- getFirstNonInfoIndex(): 項目のコレクションで、INFOよりも重大度が高い最初のステータス項目のインデックスを返します。これは、getFirstNonInfo()が返す項目のインデックスです。このメソッドは、INFOよりも重大度レベルが高い項目がない場合は-1を返します。