イベントに関する FAQ
イベントを使用すると、FHIR® または DICOM® サービスのデータ変更をサブスクライブし、Azure Event Grid 経由で通知を受け取ることができます。 イベントを使用して、ワークフローのトリガー、タスクの自動化、アラートの送信などを行うことができます。 この FAQ では、イベントに関するいくつかの一般的な質問に対する回答を紹介します。
Microsoft FHIR または DICOM 以外のサービスでイベントを使用できますか?
いいえ。 イベント機能では、Azure Health Data Services FHIR サービスと DICOM サービスのみがサポートされます。
イベントでサポートされている FHIR リソースの変更
イベントは、次の FHIR サービスの種類から生成されます。
FhirResourceCreated。 FHIR リソースの作成後に生成されるイベント。
FhirResourceUpdated。 FHIR リソースが更新された後に生成されるイベント。
FhirResourceDeleted。 FHIR リソースが論理的に削除された後に生成されるイベント。
FHIR サービスの削除の種類の詳細については、Azure Health Data Services の FHIR サービスの REST API 機能に関するページを参照してください。
イベントは FHIR バンドルをサポートしていますか?
はい。 イベント機能は、FHIR リソース レベルでデータ変更の通知を出力します。
イベントでは、次の FHIR バンドルの種類がサポートされます。
Batch。 バンドル内の正常なデータ変更操作ごとにイベントが生成されます。 いずれかの操作でエラーが生成された場合、その操作に対するイベントは生成されません。 たとえば、バッチ バンドルには 5 つの操作が含まれていますが、いずれかの操作でエラーが発生します。 4 つの成功した操作に対してイベントが生成され、エラーを生成した操作に対して生成されたイベントはありません。
トランザクション。 エラーがない限り、成功したバンドル操作ごとにイベントが生成されます。 トランザクション バンドル内にエラーがある場合、イベントは生成されません。 たとえば、トランザクション バンドルには 5 つの操作が含まれていますが、いずれかの操作でエラーが発生します。 そのバンドルのイベントは生成されません。
Note
イベントは、FHIR バンドル内のデータ操作のシーケンスでは送信されません。
イベントでサポートされる DICOM イメージの変更
イベントは、次の DICOM サービスの種類から生成されます。
DicomImageCreated。 DICOM イメージの作成後に生成されるイベント。
DicomImageDeleted。 DICOM イメージが削除された後に生成されるイベント。
DicomImageUpdated。 DICOM イメージが更新された後に生成されるイベント。 詳細については、DICOM ファイルの更新を参照してください。
イベント メッセージのペイロードは何ですか?
イベント メッセージ構造と必須要素と必須要素および必須でない要素の説明については、「イベント メッセージの構造」を参照してください。
イベント メッセージのスループットは何ですか?
FHIR または DICOM サービスと Event Grid のスループットは、FHIR イベントと DICOM イベントのスループットを制御します。 FHIR サービスに対する要求が成功すると、2xx HTTP 状態コードが返されます。 また、FHIR リソースまたは DICOM イメージ変更イベントも生成されます。 現在の制限は、ワークスペース内のすべての FHIR または DICOM サービス インスタンスに対して、ワークスペースあたり 5,000 イベント/秒です。
イベントの使用に対する課金方法
Azure Health Data Services イベントの使用に追加料金はかかりません。 ただし、Event Grid に適用される料金は、Azure サブスクリプションに対して評価されます。
操作方法同じワークスペース内の複数の FHIR または DICOM サービスに個別にサブスクライブしますか?
Event Grid フィルター機能を使用します。 イベント メッセージ ペイロードには、アカウントとワークスペースを区別するための一意の識別子があります。 ワークスペースのグローバル一意識別子は、Azure リソース ID であるフィールドで source
確認できます。 フィールド内のそのワークスペースで一意の FHIR アカウント名を data.resourceFhirAccount
見つけることができます。 フィールド内のワークスペースで、一意の DICOM アカウント名を data.serviceHostName
見つけることができます。 サブスクリプションを作成するときは、フィルター演算子を使用して、サブスクリプションに含めるイベントを選択します。
複数のワークスペース、FHIR アカウント、または DICOM アカウントに同じサブスクライバーを使用できますか?
はい。 分離されたスコープで処理を有効にするには、FHIR または DICOM サービスごとに異なるサブスクライバーを使用することをお勧めします。
Event Grid は HIPAA および HITRUST のコンプライアンス要件と互換性がありますか?
はい。 Event Grid は、医療保険の移植性と説明責任に関する法律 (HIPAA) と医療情報信頼アライアンス (HITRUST) の義務をサポートしています。 詳細については、「Microsoft Azure コンプライアンス オファリング」を参照してください。
イベント メッセージの受信にはどのくらいの時間がかかりますか?
平均して、HTTP 要求が成功した後、1 秒以内にイベント メッセージを受信する必要があります。 FHIR サービス、DICOM サービス、または Event Grid のいずれかの制限に達しない限り、イベント メッセージの 99.99% を 5 秒以内に配信する必要があります。
重複するイベント メッセージを受信できますか?
はい。 Event Grid では、プッシュ モードで少なくとも 1 つのイベント メッセージ配信が保証されます。 イベント配信要求がランダムな理由で一時的なエラー状態コードで返される場合があります。 この状況では、Event Grid では配信エラーと見なされ、イベント メッセージが再送信されます。 詳細については、「Azure Event Grid の配信と再試行」を参照してください。
一般に、開発者はイベント サブスクライバーのべき等性を確保することをお勧めします。 イベント ID またはメッセージ コンテンツのプロパティ内 data
のすべてのフィールドの組み合わせは、イベントごとに一意です。 重複除去するには、それらを利用できます。