メッセージトラッキング機能は、業務データ定義により設定されたメッセージ通番(コリレーションID)をもとに、業務の異常時の状況をリアルタイムに確認する機能です。
注意
通番(コリレーションID)は、ユーザが発番(値を設定)する伝票番号などに対応する情報です。通番を使用しない、または必要としない業務の場合は、アプリケーション連携実行基盤により自動採番されます。これにより、メッセージトラッキング機能は、ルーティング定義単位にメッセージの追跡を可能とします。
通番(コリレーションID)をユーザが発番する場合は、メッセージの追跡を容易にするため、一意となる値を設定することを推奨します。
メッセージ通番(コリレーションID)と各アプリケーションとの関係概要を“メッセージ通番(コリレーションID)と各アプリケーションとの関係概要図 1/3 ~ 3/3”に示します。
フロー定義ツールにより、フロー定義を新規作成後、業務データの構造の定義を行います。業務データ定義により、メッセージトラッキング機能によって利用される通番(コリレーションID)が確定します。また、メッセージトラッキングの採取情報に含めるメッセージ内容項目の設定を行います。
フロー定義ツールにより、業務(メッセージ)の流れを表すルーティング定義を行います。ルーティング定義により、メッセージ経路が確定します。
Interstage管理コンソールのフロー定義登録画面、またはフロー定義環境設定画面で、メッセージトラッキング情報の格納先となるデータベースの設定を行うことにより、メッセージトラッキング情報の格納先が確定します。
利用者により、通番(コリレーションID)、およびその他の業務データが入力され、業務処理開始アプリケーションでフロー起動のメッセージがアプリケーション連携実行基盤へ通知されます。
アプリケーション連携実行基盤は、ルーティング制御にしたがって指定したアプリケーションを呼び出し、メッセージ処理を行います。このとき、個々のアプリケーションの処理を通番(コリレーションID)と関連付け、エラーが発生した時点の情報(時刻、経路、およびエラー情報など)をメッセージトラッキングDBへ記録します。
注意
apfwrecovmsgコマンドを用いてエラーとなったキューへの再送信を行うと、メッセージトラッキング情報から当該メッセージのエラー情報は削除されます。apfwrecovmsgコマンドの詳細は、“Interstage Business Application Server リファレンス”を参照してください。
Interstage管理コンソール内のメッセージトラッキング情報照会機能を使用し、各種検索条件を設定することで、メッセージトラッキングDBに格納されたメッセージトラッキング情報に対して多様な照会結果を確認できます。
◆メッセージトラッキング情報格納形式
メッセージトラッキングDBのサイクリック数は、メッセージトラッキングDBの作成時に指定することができます。メッセージトラッキングDBにメッセージトラッキング情報をサイクリックに保存します。
◆メッセージトラッキング機能を利用する際の環境設定
メッセージトラッキング機能の環境設定では、メッセージトラッキング情報の採取内容としてエラー発生時のメッセージ内容をメッセージトラッキング情報に含めるかどうかをフロー単位で指定します。
また、メッセージトラッキング情報の採取時には、メッセージトラッキングDBへのアクセスを行うため、フロー定義単位にメッセージトラッキングDBを分散し、メッセージトラッキングDBへのアクセスを軽減させることによりスケーラブルなシステムを構築できます。
注意
メッセージトラッキング機能では、メッセージトラッキング情報をサイクリックに保存するため、過去に採取されたメッセージトラッキング情報が残っていても、サイクリックの契機で上書きされます。上書きが行われる場合は、syslogに上書きされることを示すメッセージが出力されます。
メッセージトラッキング機能では、エラー発生時の経路情報として、アプリケーションサーバの時刻を取得します。そのため、複数のアプリケーションサーバを使用して運用を行う場合は、アプリケーションサーバの時刻を同期させることを推奨します。時刻が同期していない場合は、メッセージトラッキング情報照会画面に表示される経路の通過時刻が時系列的にならないことがあります。
揮発チャネル運用を行う場合、サーバダウンなどによりフローが終了する可能性があるため、メッセージトラッキングDBに情報が存在しない可能性があります。
■メッセージトラッキング情報紹介機能
Interstage管理コンソールより、複数アプリケーションサーバ間を流れるメッセージ処理のエラー状況を一度に参照する機能です。
フローのルーティング中に異常が発生すると、アプリケーション連携実行基盤が、メッセージトラッキング情報を採取します。照会可能な情報については、“◆メッセージトラッキング情報の照会内容”を参照してください。採取されたメッセージトラッキング情報は、Interstage管理コンソールにより参照することが可能です。
Interstage管理コンソールで確認できる内容を以下に示します。
メッセージ処理のエラー状況の確認
指定されたメッセージ通番(コリレーションID)をもとに、特定のメッセージにおける処理状態(エラー発生有無)の確認を行うことが可能です。
発生したエラー情報の確認
エラー情報として、コリレーションID、フロー定義名、エラー発生時間、エラーコード、およびエラー内容を確認できます。
また、エラーが発生した箇所を特定するための個別参照を行うことも可能です。
◆メッセージトラッキング機能へのアクセス権限
メッセージトラッキング情報は、メッセージトラッキングDBに格納されるため、データベースに対するアクセスの権限が必要です。
Interstage管理コンソールの起動時に表示される、データベースサーバ接続画面で指定されたユーザに与えられている権限により、メッセージトラッキング情報の参照有無が決まります。
Interstage管理コンソールとデータベース権限の関係を以下に示します。
データベースアクセス権限 | フロー定義作成および更新 | メッセージトラッキング情報の参照およびフロー定義参照 | |
---|---|---|---|
更新権限有無 | 参照権限有無 | ||
有 | 有 | 可能 | 可能 |
無 | 有 | 不可 | 可能 |
注意
Interstage管理コンソールよりデータベースに対するアクセス可能なデータベースアクセス権限として、上記表内の権限設定以外(更新権限なし、参照権限なしなど)は、行わないでください。
◆メッセージトラッキング情報の照会可能範囲
メッセージトラッキング機能では、複数のアプリケーションサーバを通して全メッセージのメッセージトラッキング情報を照会することができます。
◆メッセージトラッキング情報の照会内容
下表にメッセージトラッキング情報の照会内容を示します。
項目名 | 説明 |
---|---|
コリレーションID | メッセージのコリレーションID |
フロー定義名 | メッセージのフロー定義名 |
エラー発生日時 | エラー発生時の日時 |
エラーコード | エラー発生時のエラーコード |
エラー内容 | エラー発生時のエラー内容 |
◆メッセージトラッキング情報削除退避機能
メッセージトラッキング機能で採取された情報は、メッセージトラッキングDBへ記録され蓄積されます。不要になったメッセージトラッキング情報は、apfwdeltrackコマンドを使用して削除することができます。
また、apfwdeltrackコマンドを利用して削除する場合、削除対象とするメッセージトラッキング情報をCSV形式のファイルとして退避することができます。退避された情報を、各種分析を行う際の情報源として活用することが可能となります。
apfwdeltrackコマンドの詳細は、“Interstage Business Application Server リファレンス”を参照してください。
注意
フローの再開処理を行っていないメッセージのメッセージトラッキング情報を削除した場合、メッセージトラッキング参照画面からエラー内容などを照会することができなくなります。エラー情報を確認したい場合は、各サーバ単位のsyslogを参照してください。
メッセージトラッキング情報を利用した各種分析については、表計算ソフトなどのアプリケーションを利用してください。
■メッセージトラッキングエラー参照
メッセージ処理のエラー状況の確認や、メッセージ処理時に発生したエラー情報の確認を行いたい場合に利用します。
メッセージトラッキング機能によって採取された、業務異常が発生したメッセージの情報を参照することができます。また、複数のアプリケーションサーバ間を流れるメッセージ処理のエラー状況を一度に参照することができます。
メッセージ処理のエラー一覧では、指定された条件に該当する異常処理となったコリレーションID、フロー定義名、エラー発生日時、エラーコード、およびエラーの内容が確認できます。
一覧表示されたメッセージのコリレーションIDをクリックすると、エラー詳細情報を参照することができます。エラー詳細では、エラーが発生したときのメッセージ内容とエラーの処理情報、異常が発生するまでのメッセージ処理の流れが確認できます。
注意
検索条件を指定しない場合は、メッセージトラッキングDBの全件検索となり、メッセージトラッキングDBに格納されているメッセージ件数が多くなるほど、検索条件を指定した場合に比較して、処理時間が長くなります。検索条件を指定して検索することをお勧めします。