事件常見問題集
事件可讓您訂閱 FHIR® 或 DICOM® 服務中的數據變更,並透過 Azure 事件方格 收到通知。 您可以使用事件來觸發工作流程、自動化工作、傳送警示等等。 在此常見問題中,您將找到事件一些常見問題的解答。
我可以搭配非 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。 套件組合中每個成功的數據變更作業都會發出事件。 如果其中一個作業產生錯誤,則不會針對該作業發出任何事件。 例如:批次配套包含五項作業,但是其中一項作業發生錯誤。 針對四個成功作業發出事件,且未針對產生錯誤的作業發出任何事件。
交易。 只要沒有錯誤,就會針對每個成功的套件組合作業發出事件。 如果交易配套內有任何錯誤,則不會發出任何事件。 例如:交易配套包含五個作業,但是其中一個作業發生錯誤。 該配套不會發出任何事件。
注意
事件不會以 FHIR 套件組合中的數據作業順序傳送。
事件支援哪些 DICOM 映像變更?
事件是從下列 DICOM 服務類型產生:
DicomImageCreated。 建立 DICOM 映射之後發出的事件。
DicomImageDeleted。 刪除 DICOM 映射之後發出的事件。
DicomImageUpdated。 在更新 DICOM 映射之後發出的事件。 如需詳細資訊,請參閱 更新 DICOM 檔案。
事件訊息的承載為何?
如需事件訊息結構和必要和非必要專案的描述,請參閱 事件訊息結構。
事件訊息的輸送量為何?
FHIR 或 DICOM 服務的輸送量,而事件方格會控管 FHIR 和 DICOM 事件的輸送量。 當對 FHIR 服務提出要求成功時,它會傳回 2xx HTTP 狀態代碼。 它也會產生 FHIR 資源或 DICOM 映像變更事件。 工作區中所有 FHIR 或 DICOM 服務實例的目前限製為每工作區 5,000 個事件/秒。
如何使用事件收費?
使用 Azure Health Data Services 事件並無額外費用。 不過,事件方格適用的費用會根據您的 Azure 訂用帳戶進行評估。
如何? 個別訂閱相同工作區中的多個 FHIR 或 DICOM 服務?
使用事件方格篩選功能。 事件訊息承載中有唯一標識符,可區分帳戶和工作區。 您可以在欄位中找到工作區 source
的全域唯一識別碼,也就是 Azure 資源識別碼。 您可以在欄位中找到該工作區中唯一的 data.resourceFhirAccount
FHIR 帳戶名稱。 您可以在欄位中的工作區 data.serviceHostName
中找到唯一的 DICOM 帳戶名稱。 當您建立訂用帳戶時,請使用篩選運算符來選取您想要包含在訂用帳戶中的事件。
我可以針對多個工作區、FHIR 帳戶或 DICOM 帳戶使用相同的訂閱者嗎?
是。 建議您針對每個 FHIR 或 DICOM 服務使用不同的訂閱者,以啟用隔離範圍中的處理。
事件方格是否與 HIPAA 和 HITRUST 合規性需求相容?
是。 事件方格支援健康保險可移植性和責任法案(HIPAA)和健康資訊信任聯盟(HITRUST)義務。 如需詳細資訊,請參閱 Microsoft Azure 合規性供應專案。
接收事件訊息需要多久時間?
平均而言,您應該在成功 HTTP 要求之後,於一秒內收到您的事件訊息。 除非達到 FHIR 服務、DICOM 服務或 事件方格 的限制,否則應在五秒內傳遞 99.99% 的事件訊息。
是否可以接收重複的事件訊息?
是。 事件方格保證至少有一個事件訊息傳遞與其推送模式。 在某些情況下,事件傳遞要求會因隨機原因而傳回暫時性失敗狀態代碼。 在此情況下,事件方格會將其視為傳遞失敗,並重新傳送事件訊息。 如需詳細資訊,請參閱 Azure 事件方格 傳遞和重試。
一般而言,我們建議開發人員確保事件訂閱者的等冪性。 訊息內容屬性中 data
所有欄位的事件標識碼或組合對於每個事件而言都是唯一的。 您可以依賴它們進行重複資料刪除。