JText コネクターでは、以下のタイプのエラーが発生することがあります。
エラーのタイプ | 説明 |
---|---|
ビジネス・オブジェクトの区切り文字に関する障害 | ビジネス・オブジェクトの区切り文字に関する障害は、トップレベルのメタオブジェクトの EndBODelimiter 属性が有効な値に設定されていて、イベント・ファイルにはそれぞれのビジネス・オブジェクトの末尾に指定された区切り文字が含まれているが、データ自体が区切り文字をテキスト内で使用しているときに発生します。コネクターはテキスト内の区切り文字の値を検出すると、ビジネス・オブジェクト・ストリングの一部を処理に失敗したフォーマッターに送信します。この場合は、コネクターはそのイベントを filename_timestamp.fail ファイルに書き込みます。このファイルには、区切り文字の障害が検出されたすべてのビジネス・オブジェクトのレコードが含まれます。 |
サブスクリプション・エラー | コネクターがビジネス・オブジェクトの区切り文字を検出しそのビジネス・オブジェクト名を取得できるが、そのビジネス・オブジェクトがサブスクライブされていないときに発生することがあります。この場合は、イベントが filename_timestamp.unsub ファイルに送信されます。このファイルには、アンサブスクライブされたビジネス・オブジェクトのレコードがすべて含まれます。 |
フォーマット・エラー | コネクターが入力ビジネス・オブジェクト名と一致しないビジネス・オブジェクト名の区切り文字を検出する場合や、ビジネス・オブジェクト・ファイルのフォーマットがメタオブジェクトのフォーマットと一致しない場合に発生することがあります。イベントは filename_timestamp.fail ファイルに送信されます。このファイルには、フォーマットに失敗したすべてのビジネス・オブジェクトのレコードが含まれます。 |
送信エラー | 統合ブローカーがダウンしているときにコネクターがビジネス・オブジェクトを送信しようとすると発生することがあります。Send 操作に失敗すると、イベントは filename_timestamp.fail ファイルに送信されます。このファイルには、正常に送信されなかったすべてのビジネス・オブジェクトのレコードが含まれます。 |
コネクターは正常に処理されたビジネス・オブジェクトに関する情報を event.log ファイルに記録します。コネクターが、イベント・ファイル内のすべてのビジネス・オブジェクトを処理する前にダウンした場合は、それぞれのビジネス・オブジェクトを統合ブローカーに一度だけ送信するように、リカバリーのときにこのログ・ファイルを使用します。
ログ・ファイルの形式を以下に示します。
EventFileName::1,2,n
ここで、EventFileName は現行のイベント・ファイルの名前を表し、それぞれの番号はそのファイルの中の正常に処理されたビジネス・オブジェクトのシーケンス番号を表します。
例えば、コネクターが Customer.in ファイルの中の 4 つのビジネス・オブジェクトのうち 3 つを正常に処理し、2 つ目のビジネス・オブジェクトの処理に失敗したとします。さらに、コネクターが Customer.in の処理をまだ完了していないとします。この場合に event.log ファイルは、次のように表示されます。
Linux:
$ProdDir/JText/Event/Customer.in:: 1,3,4
OS/400:
/QIBM/UserData/WebBIICS/JText/Event/Customer.in:: 1,3,4
Windows:
C:¥JText¥Event¥Customer.in:: 1,3,4
Customer.in ファイル全体の処理の途中でコネクターがダウンした場合は、コネクターは始動するときに、イベント・ファイルの処理を処理が停止したポイントから再開するためにログ・ファイルの情報を使用します。コネクターは、ログ・ファイルを参照して、リカバリーさせるイベント・ファイルの名前や最後に処理したビジネス・オブジェクトのシーケンス番号を取得します。次にコネクターは、ログ・ファイルに記録されている最後の番号より大きいシーケンス番号が付いたイベント・ファイル内のすべてのビジネス・オブジェクトを統合ブローカーに送信します。例えば、上記のファイルの場合は、コネクターは Customer.in ファイルの 5 番目のビジネス・オブジェクトから処理を開始します。
コネクターはパフォーマンスを改善するためにログ・ファイルの内容をメモリーに保持します。そして、ログ・ファイルに新規エントリーがあり、更新するときにのみディスク上にあるこのファイルにアクセスします。コネクターはリカバリー時間にのみこのログ・ファイルを参照します。
コネクターがリカバリー処理でどのように event.log ファイルを使用するかについての情報は、障害リカバリーを参照してください。
イベント通知時に発生した障害からリカバリーするには、コネクターは以下の手順を行います。
出荷時のこれらの拡張子のデフォルト値は .success および .partial です。
コネクターは処理に失敗したビジネス・オブジェクトを event.log に記録しません。
ログ・ファイルを使用することでコネクターが同じイベントを何度も統合ブローカーに送信することがなくなります。コネクターはパフォーマンスを改善するためにログ・ファイルの内容をメモリーに保持します。そして、ログ・ファイルに新規エントリーがあり、更新するときにのみディスク上にあるこのファイルにアクセスし、リカバリー時にのみログ・ファイルを読み取ります。
ユーザーが EventRecovery 構成プロパティーを retry に設定している場合は、コネクターは始動時に、前に処理したファイルから未解決のイベントを自動的にリカバリーします。ただし、このプロパティーを abort に設定している場合は、コネクターは、リカバリーさせるイベントがある場合に始動時に終了します。
以下のガイドラインは、ユーザーが、発生したエラーのタイプに応じて実行するリカバリーの手順を判別する際に役立ちます。
コネクターがビジネス・オブジェクトをアーカイブ・ディレクトリーに書き込むときに、FailArchiveExt メタオブジェクト属性で指定された拡張子を付けます。このような障害のリカバリーを行うには、以下を行います。
コネクターがビジネス・オブジェクトをアーカイブ・ディレクトリーに格納されているファイルに書き込むときに、UnsubscribedArchiveExt メタオブジェクト属性で指定された拡張子を付けます。このような障害のリカバリーを行うには、以下を行います。
コネクターがビジネス・オブジェクトをアーカイブ・ディレクトリーに格納されているファイルに書き込むときに、FailArchiveExt メタオブジェクト属性で指定された拡張子を付けます。このような障害のリカバリーを行うには、以下を行います。
コネクターがビジネス・オブジェクトをアーカイブ・ディレクトリーに格納されているファイルに書き込むときに、FailArchiveExt メタオブジェクト属性で指定された拡張子を付けます。このような障害のリカバリーを行うには、以下を行います。
データ・ハンドラーが構成されていないことを示すエラーをコネクターが戻すときは、データ・ハンドラーのメタオブジェクトがサポートされているビジネス・オブジェクトのリストに含まれていることを確認してください。コネクターが最も頻繁に戻すエラーは、BOPrefix が設定されていないことを示すものです。
DHFormatter のサポートされているビジネス・オブジェクトのリストには、以下が含まれています。