9 レポートの使用
この章の内容は次のとおりです。
9.1 レポートの概要
Oracle SOA Suite for healthcare integrationのユーザー・インタフェースのレポート・ページには、Oracle Healthcareのコンポーネントで処理されるメッセージのステータスがリアルタイムで表示されます。すべてのメッセージを表示したり、様々な条件(エンドポイント、日付範囲、ドキュメント情報、およびペイロード・フィールドを含む)によって表示するメッセージを絞り込むことができます。
Oracle Healthcareのユーザー・インタフェースには、いくつかのレポートが事前に定義されています。ワイヤ・メッセージ・レポート、関連付けられていないワイヤ・メッセージ・レポート、ビジネス・メッセージ・レポート、アプリケーション・メッセージ・レポートおよび関連付けられていないアプリケーション・メッセージ・レポートがそれに当たります。さらに詳細な条件に基づいたレポートを追加で作成し、表示されるメッセージのタイプを絞り込めます。
各レポートは4つのセクションに分かれています。
-
レポート構成バー
-
メッセージ・リスト
-
メッセージ・フローの図による表示
-
選択したメッセージのメッセージ詳細
レポートで複数のメッセージを選択すると、選択したメッセージの情報の概要がフロー・ダイアグラムのかわりに表示されます。
Oracle Healthcareには、次のレポート・タイプに基づいて事前定義済レポートのセットが用意されており、レポート・ホームページの右上端にあるプラス・ボタンをクリックするとアクセスできます。
-
一般ビジネス・メッセージ・レポート: 最初から、または指定された時間範囲に交換されたビジネス・メッセージがすべてリストされます。これらのレポートは、メッセージ・レポート・フィルタ・カスタマイザを使用してカスタマイズできます。
-
一般アプリケーション・メッセージ・レポート: 交換されたすべてのアプリケーション・メッセージがリストされます。このレポートは、メッセージ・レポート・フィルタ・カスタマイザを使用してカスタマイズできます。
-
一般ワイヤ・メッセージ・レポート: 交換されたすべてのワイヤ・メッセージがリストされます。このレポートは、メッセージ・レポート・フィルタ・カスタマイザを使用してカスタマイズできます。
-
関連付けられていないアプリケーション・メッセージ・レポート: 関連付けられたビジネス・メッセージを除くアプリケーション・メッセージを表示するアプリケーション・メッセージ・レポートがすべてリストされます。これらのレポートは、メッセージ・レポート・フィルタ・カスタマイザを使用してカスタマイズできます。
-
関連付けられていないワイヤ・メッセージ・レポート: 関連付けられたビジネス・メッセージを除くワイヤ・メッセージを表示するワイヤ・メッセージ・レポートがすべてリストされます。これらのレポートは、メッセージ・レポート・フィルタ・カスタマイザを使用してカスタマイズできます。
関連付けられていないメッセージ・レポートの詳細は、「関連付けられていないメッセージのレポートの作業」を参照してください。
図9-1に示すように、カスタマイズされたレポートは、Oracle Healthcareコンソールで、それぞれのレポート・タイプの下に表示されます。
図9-2に、「レポート」タブに表示されている一般ビジネス・メッセージ・レポートの例を示します。
図9-3に、「レポート」タブに表示されている一般ワイヤ・メッセージ・レポートの例を示します。
図9-4に、「レポート」タブに表示されている一般アプリケーション・メッセージ・レポートの例を示します。
メッセージ・リストでは、各メッセージに、メッセージの処理情報を表すボタンが表示されます。封筒ボタンは通常処理を、緑色の矢印が表示された封筒のアイコンはメッセージが再発行されたことを、Xの付いた赤い四角形が表示された封筒のアイコンはエラーを示します。
9.1.1 メッセージ・レポート・フィルタ・カスタマイザについて
レポートの作成や既存レポートの編集には、3つのメッセージ・レポート・フィルタ・エディタ(ワイヤ、ビジネスおよびアプリケーション)を使用します。レポート・エディタでは、時間範囲、エンドポイント、プロトコル、状態、メッセージ・ステータス、およびドキュメント定義情報など、レポートに表示するメッセージに関して様々な条件を定義できます。また、相関フィールド、SOAコンポジット・フィールド、メッセージIDなどを含む詳細オプションも使用できます。
図9-5に、ビジネス・メッセージ・レポート・カスタマイザの例を示します。
大部分のフィルタでは、フィルタに指定した値の評価方法を指定する演算子を選択する必要があります。また、検索時に大/小文字の区別をするかどうかも指定できます。ほとんどのフィルタは、指定した値に対し、「任意」、「次と等しい」、「相似」、「次と等しくない」、「次の間」または「相似でない」の演算子をサポートしています。「次の間」演算子については、最大100個の値のリストをカンマで区切って指定し、そのリストのいずれかの値に一致したメッセージがフィルタされます。「相似」および「相似でない」演算子に関しては、値にSQLのワイルドカード文字を使用できます。SQLのワイルドカード文字には次のものが含まれます。
-
% (パーセント): ゼロ字以上の任意の文字を表します。
-
_ (アンダースコア): 1つの文字を表します。
-
[charlist]: 文字のリストで、任意の値はリスト内のいずれかの文字です。
-
[^charlist]または[!charlist]: 文字のリストで、任意の値はリスト内の文字ではありません。
ほとんどの文字列ベースの条件では、フィールドの隣の「大/小文字を区別しない」を選択または選択解除することにより、検索で大/小文字を区別するかどうかを指定できます。フィルタ条件リスト内のセクション間を移動するには、「フィルタ条件」の横にあるリンクを使用します。
9.1.2 メッセージの再発行について
メッセージのエラーがOracle SOA Suite for healthcare integrationの内部的なものである場合、問題を修正してメッセージを再送信できます。たとえば、適切に構成されていないエンドポイントにメッセージを送信した場合は、エラーを修正し、アプリケーション・メッセージまたはワイヤ・メッセージの再発行機能を使用します。
メッセージのエラーの原因がエンドポイントのHostname/IPAddressまたはポート変更である場合、メッセージはMSG_WAIT_STACKまたはMSG_WAIT_TRANSMITにあります。エンドポイントのHostname/IPAddressまたはポートを修正し、MSG_WAIT_STACKにある最初のエラー・メッセージを再発行します。シーケンス内のすべての保留中になっているメッセージは、エンドポイントの更新されたHostname/IPAddressまたはポートを使用して処理されます。エンドポイントの各エラー・メッセージを再発行する必要はありません。
アウトバウンド・メッセージのアプリケーション・メッセージを再発行すると、メッセージがクローニングされた後、新しいメッセージのステータスがRESUBMITTEDになり、クローンの配信が試行されます。また、元のアプリケーション・メッセージのRESUBMIT_COUNTが1つ増えます。クローニングされたメッセージのRESUBMIT_REF_TOも、元のアプリケーション・メッセージのIDに設定されます。再発行されたアプリケーション・メッセージがバッチ・メッセージの一部である場合、関連付けられたワイヤ・メッセージの状態もRESUBMITTEDに設定されます。このタイプのメッセージの再発行は、ドキュメントの構成が最重要ではなく、メッセージの設定を更新して再構成する必要がある場合に役立ちます。
インバウンド・メッセージのアプリケーション・メッセージを再発行すると、メッセージのステータスがRESUBMITTEDに設定され、バックエンド・アプリケーションへのメッセージ配信が再度試行されます。このタイプのメッセージの再発行は、バックエンド・アプリケーションが停止したため配信を再試行する必要がある場合に役立ちます。
アウトバウンド・メッセージのワイヤ・メッセージを再発行すると、メッセージのステータスがRESUBMITTEDに設定され、以前に処理されたメッセージのみ再配信が試行されます。再パッケージングまたは他のメッセージ変換は実行されません。これは、問題がデリバリ・エンドポイントにある場合(受信者のサーバーが停止したためメッセージを受信できない場合など)に役立ちます。
インバウンド・メッセージのワイヤ・メッセージを再発行すると、ワイヤ・メッセージがクローニングされた後、新しいメッセージのステータスがRESUBMITTEDになり、メッセージの配信が試行されます。また、元のワイヤ・メッセージのRESUBMIT_COUNTが1つ増えます。クローニングされたメッセージのRESUBMIT_REF_TOも、元のワイヤ・メッセージのIDに設定されます。ビジネス・メッセージおよびアプリケーション・メッセージのメッセージ・ステータスもRESUBMITTEDに設定されます。エンドポイントでは機能確認を予期していますが、リモート・エンドポイントに機能確認は返されません。これは、ドキュメント設定が適切でないために、メッセージを再度変換して検証する必要がある場合に役立ちます。
9.2 レポートの作成および構成
Oracle SOA Suite for healthcare integrationでは、すぐに使用できるように、いくつかの事前定義済レポートが用意されています。これらのレポートはフィルタ処理できますが、基準となるのは、「デザイナ」→「管理」→「設定」→「UI」→「レポート」→「時間範囲」で構成できる時間範囲のみです。
詳細は、「ユーザー・インタフェース設定の構成」を参照してください。追加のレポートを作成し、エンドポイント、メッセージID、ドキュメント・プロパティ、コンポジット・プロパティ、トランスポート・プロトコル・プロパティ、主要なペイロード・フィールドなどの基準で、さらにメッセージを絞り込むことが可能です。また、事前定義済レポートに基づいて、それらを変更したり、新規レポートとして保存することもできます。
9.2.1 ビジネス・メッセージ・レポートの作成
事前定義済のビジネス・メッセージ・レポートがありますが、ユーザー独自の要件に合せてレポートを追加作成できます。
ビジネス・メッセージ・レポートを作成するには
図9-8に、過去30日間にEmergency_AdmissionおよびEmergency_Laboratoryエンドポイントで交換されたすべてのビジネス・メッセージを一覧表示するカスタムのビジネス・メッセージ・レポートを示します。
列ヘッダーをクリックすると、任意のレポート列に基づいてメッセージをソートできます。
9.2.2 ワイヤ・メッセージ・レポートの作成
事前定義済のワイヤ・メッセージ・レポートとは別に、外部エンドポイントと交換するワイヤ・メッセージを対象としたカスタムのワイヤ・メッセージ・レポートを作成できます。ほとんどのワイヤ・メッセージにはビジネス・メッセージが関連付けられており、レポートの「メッセージ・フロー」ダイアグラムに反映されます。
ワイヤ・メッセージ・レポートを作成するには
図9-10に、過去30日間のインバウンド・ワイヤ・メッセージがすべてリストされているカスタムのワイヤ・メッセージ・レポートを表示します。
列ヘッダーをクリックすると、任意のレポート列に基づいてメッセージをソートできます。
9.2.3 アプリケーション・メッセージ・レポートの作成
事前定義済のアプリケーション・メッセージ・レポートとは別に、ファブリック/コンポジット・レイヤーと交換するアプリケーション・メッセージを対象としたカスタムのアプリケーション・メッセージ・レポートを作成できます。Oracle Healthcareランタイムに送信されてくるアプリケーション・メッセージのほとんどが、対応するビジネス・メッセージとなり、レポートの「メッセージ・フロー」ダイアグラムに反映されます。
ワイヤ・メッセージ・レポートを作成するには
図9-12に、過去30日間に交換されたアプリケーション・メッセージで、ステータスが完了のものがすべてリストされているカスタムのアプリケーション・メッセージ・レポートを示します。
列ヘッダーをクリックすると、任意のレポート列に基づいてメッセージをソートできます。
9.2.5 レポートの構成
レポートを作成した後は、メッセージ・レポート・フィルタ・カスタマイザを使用して、レポートのフィルタ条件を変更できます。また、既存のレポートをテンプレートとして使用してレポートを作成できます。
レポートを構成するには:
9.2.6 レポートのリフレッシュおよび自動リフレッシュ率の設定
表示されているレポートはいつでも手動でリフレッシュできますが、レポートを一定の間隔で自動的に更新されるように指定できます。自動リフレッシュ率は、現在のセッションについてのみアクティブ化され、構成されます。レポートを閉じた後に再度開くと、自動リフレッシュ・オプションは無効になります。
レポートをリフレッシュし、自動リフレッシュ率を設定する手順は次のとおりです。
-
モニターするレポートが表示されていない場合は、メインのレポート・ページの右上にあるプラス・ボタンをクリックし、構成するレポートを選択します。
-
レポートをリフレッシュするには、右上の「リフレッシュ」ボタンをクリックします。
-
自動リフレッシュ・オプションを有効にするには、次のようにします。
-
「レポート」ツールバーの「リフレッシュ」ボタンの右側にある下向きの矢印をクリックします。
-
レポートを自動的にリフレッシュする時間間隔を秒単位で指定し、「自動リフレッシュ」チェック・ボックスを選択します。
-
自動リフレッシュを無効にするには、「自動リフレッシュ」チェック・ボックスをクリアします。
-
9.3 レポートおよびレポートの詳細の表示
レポートを開くと、最初に、「レポート」タブにレポート条件に一致するメッセージのリストが表示されます。このリストには、各メッセージの概要情報が表示されます。
概要情報には、次の内容が含まれます。
-
メッセージID
-
作成日時
-
方向
-
エンドポイント
-
状態
-
ドキュメント・タイプ
次に示すように、リスト内のメッセージを選択して詳細な情報を表示することや、複数のメッセージのサマリーを表示することが可能です。
メッセージのドキュメント・タイプを表示する権限がない場合、一部の詳細情報は非表示になります。必要な権限がない限り、情報をダウンロードするオプションは使用不可になっています。
9.3.1 ビジネス・メッセージ・インスタンスの表示
ビジネス・メッセージには、エンドポイント名、メッセージの方向、メッセージID、状態、トランスポート・プロトコルを含めたドキュメント・プロトコルのインスタンス情報と、ドキュメント・プロトコル、およびメッセージの詳細が含まれています。
ビジネス・メッセージ・インスタンスを表示するには:
9.3.2 ワイヤ・メッセージの表示
ワイヤ・メッセージは、エンドポイントと送受信されるデータのネイティブ・フォーマットです。ワイヤ・メッセージの詳細には、メッセージID、通信およびプロトコル情報(トランスポート・バインディングおよびヘッダー詳細など)、ペイロード・メッセージ・コンテンツ、パック・メッセージ・コンテンツ、およびセキュリティ情報が含まれます。
ワイヤ・メッセージを表示するには:
9.3.3 アプリケーション・メッセージの表示
アプリケーション・メッセージは、バックエンド・コンポジット・アプリケーションがメッセージを送受信した場合に、SOAコンポジットに関連する情報(コンポジット名、バージョン、インスタンスIDなど)を提供します。
アプリケーション・メッセージを表示するには:
9.3.4 Oracle Enterprise Managerのフロー・トレースの表示
Oracle Healthcareレポートでは、各メッセージが、Oracle Enterprise Managerのコンポジットのフロー・トレースにリンクされています。リンクをクリックすると、自動的にOracle Enterprise Managerの該当するフローのトレース・ページが開かれます。
Oracle Enterprise Managerのフロー・トレースを表示するには:
9.4 関連付けられていないメッセージのレポートの作業
ワイヤ・メッセージおよびアプリケーション・メッセージにビジネス・メッセージが関連付けられていない場合、これらのメッセージは関連付けられていないメッセージとして分類されます。
関連付けられていないメッセージは、関連付けられていないワイヤ・メッセージ・レポートや関連付けられていないアプリケーション・メッセージ・レポートで表示できます。
9.4.1 関連付けられていないワイヤ・メッセージの作業
外部エンドポイントからメッセージが大量に着信すると、Oracle Healthcareランタイムの処理能力に過剰な負荷がかかります。そうしたメッセージは、一時的にバックログとして扱われ、「処理中」とマークされます。そのため、それらのワイヤ・メッセージには、ビジネス・メッセージが関連付けられません。インバウンドのHL7 MLLPエンドポイントにより即時確認が生成された場合も、ワイヤ・メッセージにはビジネス・メッセージが関連付けられません。
9.4.1.1 関連付けられていないワイヤ・メッセージ・レポートの作成
関連付けられていないワイヤ・メッセージ・レポートは、一般ワイヤ・メッセージ・レポートと同じような方法で作成できます。
関連付けられていないワイヤ・メッセージ・レポートを作成するには
図9-25に、過去24時間のアウトバウンドの関連付けられていないワイヤ・メッセージがすべてリストされている、関連付けられていないワイヤ・メッセージ・レポートを表示します。
列ヘッダーをクリックすると、任意のレポート列に基づいてメッセージをソートできます。
9.4.2 関連付けられていないアプリケーション・メッセージの作業
ファブリック/コンポジット・レイヤーからアプリケーション・メッセージが大量に発生すると、Oracle Healthcareランタイムの処理能力に過剰な負荷がかかります。そうしたメッセージは、一時的にバックログとして扱われ、「処理中」とマークされます。そのため、それらのアプリケーション・メッセージには、関連するビジネス・メッセージがありません。ファブリック/コンポジット・レイヤーからのアウトバウンド・メッセージにより、重大なエラーが発生した場合にも、アプリケーション・メッセージにはビジネス・メッセージが関連付けられません。
9.4.2.1 関連付けられていないアプリケーション・メッセージ・レポートの作成
関連付けられていないアプリケーション・メッセージ・レポートは、一般アプリケーション・メッセージ・レポートと同じような方法で作成できます。
関連付けられていないアプリケーション・メッセージ・レポートを作成するには
[レビューア: 関連付けられていないアプリケーション・メッセージ・レポートのサンプル画像を提供してください。]
列ヘッダーをクリックすると、任意のレポート列に基づいてメッセージをソートできます。
9.5 エラー・メッセージの作業
メッセージの処理時にエラーが発生すると、メッセージ・リストのメッセージのアイコンに赤い四角が表示されます。
エラー・メッセージを選択すると、エラーに関する詳細な情報が表示されます。
9.5.1 エラー・メッセージの表示
このレポートには、エラー・メッセージ、コード、重大度、レベル、および説明を含めた、メッセージ処理時のエラーに関する情報が含まれます。
エラー・メッセージを表示するには:
9.5.2 メッセージの再発行
「レポート」タブからワイヤ・メッセージおよびアプリケーション・メッセージを再発行できます。メッセージ・トランザクションでエラーが発生した場合、レポート機能を使用して、エラーの内容を確認して修正します。問題を修正した後、メッセージを再発行します。メッセージは1つずつ再発行したり、グループ化して再発行できます。
メッセージを再発行するには:
-
表示したレポートのメッセージのリストで、再発行するメッセージを選択します。
-
次のいずれかの操作を行います。
-
「再発行」を選択した後、「関連アプリケーション・メッセージ」または「関連ワイヤ・メッセージ」を選択します。
-
選択したメッセージを右クリックして、コンテキスト・メニュー・アイテムを使用します。
-
メッセージ・フロー・ダイアグラムで「ワイヤ・メッセージ」または「アプリケーション・メッセージ」を右クリックし、「ワイヤ・メッセージの再発行」または「アプリケーション・メッセージの再発行」を選択します。
-
-
表示される確認ダイアログで「OK」をクリックします。
メッセージ・リストのメッセージのエラー・アイコンが、メッセージの再発行を示す緑色の矢印に変更されます。
複数のメッセージを再発行するには:
9.6 リポジトリからのメッセージのパージ
Healthcare integrationリポジトリに格納する必要のなくなったメッセージをパージできます。パージするメッセージがバッチ・プロセスの一部である場合、バッチ内のすべてのメッセージが削除されます。
メッセージは1つずつパージしたり、グループ化してパージできます。
リポジトリからメッセージをパージするには:
- 表示したレポートのメッセージのリストで、削除する1つまたは複数のメッセージを選択します。
- 「パージ」をクリックします。
- 表示される確認ダイアログで「はい」をクリックします。
ノート:
ビジネス・メッセージを削除すると、順序付けマネージャの表の対応するエントリも削除されます。
9.7 ランタイム・データのエンドツーエンドのモニタリング
Oracle SOA Suite for healthcare integrationを使用するHL7インタフェース・エンジン実装では、レポート・ページで、ソースHL7エンドポイント・データを複数のターゲットに関連付けることができます。
これは、図9-31に示されています。
図9-31に表示されているソースHL7エンドポイントのAdm1
からは、5つの異なるターゲット(Pha1から5
)が展開しています。ビジネス・メッセージ・インスタンスの表示で説明されているように、図9-31の5というラベルが付いたボタンをクリックしてビジネス・メッセージの詳細を表示できます。ソースからターゲットへのこのビューは、1とラベル付けされたアイコンのメッセージを選択した場合にのみ表示されます。このアイコンのないメッセージを選択した場合は、ビジネス・メッセージの詳細が表示されます。
図9-31で2というラベルが付いたボタンをクリックすると、HL7のネイティブ・データが表示されます。緑の矢印は、そのセグメントが完了していることを示します。黄色の矢印はそのセグメントが処理中であること、赤い矢印はそのセグメントがエラーであることを示しています。図9-31には、保留中の状態のターゲット・エンドポイントが表示されています。正常に完了すると、矢印の色が緑に変わります。矢印の下にあるラベルは、ドキュメント・タイプと処理されているHL7メッセージのバージョンを示しています。
図9-31で3というラベルが付いたボタンをクリックすると、フォーカスのあるエンドポイントのXMLデータが表示されます。たとえば、図9-31では、ソース・エンドポイントAdm1
にフォーカスがあります。3とラベル付けされたボタンをクリックすると、ソース・エンドポイントAdm1
のXMLデータが表示されます(変換が有効化されているものと仮定しています)。このXMLデータはコンポジットに渡され、ルーティングと変換が行われます。フォーカスのあるエンドポイントがターゲット・エンドポイントの場合は、ラベルが3のボタンをクリックすると、コンポジットのXMLデータが表示されます。どのエンドポイントにフォーカスがあるかによって、ラベルが3のボタンをクリックしたときに表示されるXMLデータの値は異なります(変換が有効化されている場合)。また、ラベルが2、3および4のアイコンには、キーの画像が付いています。このキーは、ペイロードに対して監査機能がオンになっている場合、これらのアイコンをクリックしたことが、監査目的で記録されることを示します。
ラベルが7と8のアイコンは、コンポジットとの通信に使用された内部デリバリ・チャネルを示しており、JMSキュー名の場合もコンポジットの場合もあります。これらのアイコンを選択することはできず、コンポジットとの間でメッセージがどのように交換されるかを示しています。
デフォルトで、ラベルが9のアイコンは、ターゲット・エンドポイントの順序が、送信された時間によって降順で決定されることを示しています。順序は、「アウトバウンド送信時間(昇順)」、「アウトバウンド・エンドポイント名(昇順)」、「アウトバウンド・エンドポイント名(降順)」など、その他のオプションで変更できます。この機能は、複数のターゲット・エンドポイントがあり、ターゲット・エンドポイントが処理されているかどうかを判断する場合に便利です。HL7メッセージがコンポジットからターゲット・エンドポイントに渡されない場合、そのエンドポイントは、このレポート・ページに表示されません。
ノート:
デフォルトで、アウトバウンド・メッセージのフローは、左から右で表示されます。ユーザー・インタフェース設定ページ(「管理」→「設定」→「UI」)を使用し、「アウトバウンド・メッセージ・フローを右から左の順に表示」を「はい」
に設定することで、フローを右から左に変更できます。