이 페이지에서는 FHIR 저장소에서 임상 이벤트가 발생할 때 Pub/Sub를 사용하여 알림을 받는 방법을 설명합니다.
다운스트림 처리 트리거 또는 새 데이터 분석 등 다양한 사용 사례에 Pub/Sub 알림을 사용할 수 있습니다. 예를 들어 머신러닝 모델은 새 데이터를 학습에 사용할 수 있을 때 알림을 받고 환자 치료를 개선하기 위한 통계나 예측을 생성할 수 있습니다.
개요
FHIR 저장소에서 FHIR 리소스가 생성, 업데이트, 패치 또는 삭제될 때 Pub/Sub 알림을 받을 수 있습니다. Cloud Healthcare API는 Cloud Storage에서 FHIR 리소스를 가져올 때 알림을 전송하지 않습니다.
알림을 받으려면 Pub/Sub 주제 및 구독을 만든 후 해당 주제에 대해 알림을 전송하도록 FHIR 저장소를 구성해야 합니다.
다음 다이어그램은 FHIR 저장소에서 fhir.create
메서드를 사용하여 FHIR 리소스를 만들 때 Pub/Sub 알림을 생성하고 전달하는 방법을 보여줍니다. 단계는 FHIR 리소스를 업데이트, 패치, 삭제할 때와 동일합니다.
그림 1. FHIR 저장소에서 변경사항에 대해 Pub/Sub 알림 사용
그림 1은 다음 단계를 보여줍니다.
- 호출자가 FHIR 리소스를 만들도록
fhirStores.fhir.create
요청을 수행합니다. - FHIR 저장소는 요청을 수신하고 Pub/Sub 메시지를 생성하여 FHIR 저장소에 구성된 Pub/Sub 주제로 전송합니다.
- Pub/Sub가 해당 주제에 연결된 구독으로 메시지를 전달합니다.
- 구독자는 구독에서 Pub/Sub 메시지의 형태로 알림을 받습니다. 각 구독에는 동시 로드 향상을 위해 하나 이상의 구독자가 있을 수 있습니다.
알림 구성
FHIR 저장소의 FhirNotificationConfig
객체에서 Pub/Sub 알림 및 해당 동작을 구성할 수 있습니다. 각 FHIR 저장소에 하나의 FhirNotificationConfig
를 구성할 수 있습니다.
다음 표는 FhirNotificationConfig
객체의 필드를 설명합니다.
필드 | 설명 | 예 |
---|---|---|
pubsubTopic |
FHIR 저장소에 연결할 Pub/Sub 주제 지정된 주제로 알림이 전송됩니다. | projects/my-project/topics/my-topic |
sendFullResource |
생성, 업데이트, 패치된 FHIR 리소스의 전체 콘텐츠를 알림에 포함할지 여부입니다. 이 필드는 FHIR 리소스가 삭제되었을 때 전송되는 알림에 영향을 주지 않습니다. 삭제된 리소스의 전체 콘텐츠를 포함하려면 sendPreviousResourceOnDelete 를 true 로 설정합니다. |
true |
sendPreviousResourceOnDelete |
삭제된 FHIR 리소스의 전체 콘텐츠를 알림에 포함할지 여부입니다. 이 필드는 FHIR 리소스가 생성, 업데이트, 패치되었을 때 전송되는 알림에 영향을 주지 않습니다. | true |
알림 형식 및 콘텐츠
각 Pub/Sub 알림에는 임상 이벤트에 대한 정보를 저장하는 message
객체가 포함되어 있습니다. message
객체는 다음과 유사합니다.
{ "message": { "attributes": { "action": "ACTION", "lastUpdatedTime": "RFC_1123_FORMAT_DATETIME", "payloadType": "PAYLOAD_TYPE", "resourceType": "FHIR_RESOURCE_TYPE", "storeName": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "versionId": "VERSION_ID" }, "data": "BASE_64_ENCODED_DATA", "messageId": "MESSAGE_ID", "publishTime": "YYYY-MM-DDTHH:MM:SS+ZZ:ZZ" } }
각 Pub/Sub 메시지에 포함된 추가 필드에 대한 자세한 내용은 ReceivedMessage
및 PubsubMessage
를 참조하세요.
다음 표에서는 attributes
객체의 각 필드를 설명합니다.
속성 | 설명 | 예 |
---|---|---|
action |
FHIR 리소스에서 발생한 작업. 가능한 값은 다음과 같습니다.
|
CreateResource |
resourceType |
수정된 FHIR 리소스 유형 가능한 값에는 Cloud Healthcare API에 있는 지원되는 모든 FHIR 리소스 유형이 포함됩니다. | Patient |
payloadType |
메시지의 페이로드 유형, NameOnly 또는 FullResource 중 하나 |
FullResource |
storeName |
작업이 발생한 FHIR 저장소의 전체 리소스 이름입니다. | projects/my-project/locations/us/datasets/my-dataset/fhirStores/my-fhir-store |
lastUpdatedTime |
FHIR 리소스가 수정된 가장 최근 시간의 타임스탬프입니다. 타임스탬프에는 RFC 1123 형식이 사용됩니다. | Mon, 01 Jan 2020 00:00:00 UTC |
versionId |
작업이 발생한 FHIR 리소스의 최신 버전 ID입니다. 버전 ID에 대한 자세한 내용은 FHIR 리소스 버전 나열을 참조하세요. | MTY4MzA2MDQzOTI5NjIxMDAwMA |
다음 표에서는 message
객체의 나머지 필드를 설명합니다.
필드 | 설명 | 예 |
---|---|---|
data |
FhirNotificationConfig 에 지정된 값에 따라 FHIR 리소스 이름 또는 FHIR 리소스 콘텐츠의 base64 인코딩 문자열입니다. |
|
messageId |
Pub/Sub 메시지의 식별자입니다. | |
publishTime |
Pub/Sub 서버가 메시지를 게시한 시간입니다. |
알림에 포함할 정보 지정
알림 형식 및 콘텐츠에 설명된 대로 Pub/Sub 알림에는 표준 필드 집합이 포함됩니다. 각 알림에 전체 FHIR 리소스 또는 이름만 포함할 수 있습니다. 리소스 이름에는 리소스의 전체 경로와 리소스 ID가 다음 형식으로 포함됩니다.
projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/RESOURCE_TYPE/RESOURCE_ID
FHIR 리소스 정보는 base 64로 인코딩된 문자열로 data
필드에 저장됩니다.
FHIR 리소스의 전체 콘텐츠를 포함하면 리소스 세부정보를 얻기 위해 Pub/Sub 및 Cloud Healthcare API를 개별적으로 쿼리할 필요가 없습니다.
FHIR 리소스 이름 가져오기
리소스를 생성, 업데이트, 패치할 때 FHIR 리소스 이름만 포함하려면 sendFullResource
를 false
로 설정합니다.
FHIR 리소스를 삭제할 때 이름만 포함하려면 sendPreviousResourceOnDelete
를 false
로 설정합니다.
알림을 볼 때 message
객체는 다음과 유사합니다.
{ "message": { "attributes": { "action": "{CreateResource|PatchResource|UpdateResource|DeleteResource}", "lastUpdatedTime": "RFC_1123_FORMAT_DATETIME", "payloadType": "NameOnly", "resourceType": "FHIR_RESOURCE_TYPE", "storeName": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "versionId": "VERSION_ID" }, "data": "BASE64_ENCODED_FHIR_RESOURCE_NAME", "messageId": "MESSAGE_ID", "publishTime": "YYYY-MM-DDTHH:MM:SS+ZZ:ZZ" } }
알림에서 다음을 확인합니다.
payloadType
필드가NameOnly
로 설정되어 요청에 대해 다음을 나타냅니다,- 만들기, 업데이트, 패치 작업의 경우
sendFullResource
는false
로 설정됩니다. - 삭제 작업의 경우
sendPreviousResourceOnDelete
는false
로 설정됩니다.
- 만들기, 업데이트, 패치 작업의 경우
data
필드에는 FHIR 리소스 이름만 포함됩니다. 이름은 base 64로 인코딩된 문자열로 인코딩됩니다.
생성, 업데이트 또는 패치된 FHIR 리소스 콘텐츠 가져오기
리소스를 생성, 업데이트, 패치할 때 FHIR 리소스의 전체 콘텐츠를 포함하려면 sendFullResource
를 true
로 설정합니다.
FHIR 리소스를 삭제하는 경우 이 동작이 적용되지 않습니다. FHIR 리소스를 삭제한 경우 sendFullResource
가 true
로 설정되었지만 sendPreviousResourceOnDelete
가 false
로 설정된 경우 알림은 FHIR 리소스 이름만 검색할 때와 동일합니다. FHIR 리소스가 삭제될 때 FHIR 리소스 콘텐츠를 포함하려면 삭제된 FHIR 리소스 콘텐츠 가져오기를 참조하세요.
알림을 볼 때 message
객체는 다음과 유사합니다.
{ "message": { "attributes": { "action": "{CreateResource|PatchResource|UpdateResource}", "lastUpdatedTime": "RFC_1123_FORMAT_DATETIME", "payloadType": "FullResource", "resourceType": "FHIR_RESOURCE_TYPE", "storeName": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "versionId": "VERSION_ID" }, "data": "BASE64_ENCODED_FHIR_RESOURCE_CONTENTS", "messageId": "MESSAGE_ID", "publishTime": "YYYY-MM-DDTHH:MM:SS+ZZ:ZZ" } }
알림에서 다음을 확인합니다.
payloadType
은FullResource
로 설정되어sendFullResource
가true
로 설정되었음을 나타냅니다. FHIR 리소스의 전체 콘텐츠는data
필드에 base 64로 인코딩된 문자열로 포함됩니다.data
필드에는 FHIR 리소스 콘텐츠가 base64로 인코딩된 문자열로 포함됩니다.
삭제된 FHIR 리소스 콘텐츠 가져오기
FHIR 리소스를 삭제할 때 전체 콘텐츠를 포함하려면 sendPreviousResourceOnDelete
를 true
로 설정합니다.
알림을 볼 때 message
객체는 다음과 유사합니다.
{ "message": { "attributes": { "action": "DeleteResource", "lastUpdatedTime": "RFC_1123_FORMAT_DATETIME", "payloadType": "FullResource", "resourceType": "FHIR_RESOURCE_TYPE", "storeName": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "versionId": "VERSION_ID" }, "data": "BASE64_ENCODED_FHIR_RESOURCE_CONTENTS", "messageId": "MESSAGE_ID", "publishTime": "YYYY-MM-DDTHH:MM:SS+ZZ:ZZ" } }
다음 필드의 값을 확인합니다.
sendFullResource
가false
로 설정된 경우에도payloadType
은FullResource
로 설정됩니다.FHIR 리소스의 전체 콘텐츠는
data
필드에 base 64로 인코딩된 문자열로 포함됩니다.data
필드에는 리소스가 삭제되기 전 FHIR 리소스의 콘텐츠가 base 64로 인코딩된 문자열로 포함됩니다.
FHIR 알림 구성 및 보기
다음 예시에서는 FHIR 저장소에서 FHIR 리소스가 생성될 때 생성된 Pub/Sub 알림을 보는 방법을 보여줍니다.
시작하기 전에
Pub/Sub 알림을 구성하고 사용하기 전에 다음 섹션을 완료합니다.
Pub/Sub 할당량 검토
Pub/Sub 할당량 및 한도를 숙지하세요. 할당량 확인 및 추가 할당량 요청 방법과 할당량이 부족할 때 발생하는 결과에 대한 자세한 내용은 할당량 작업을 참조하세요.
Pub/Sub API 사용 설정
Google Cloud 콘솔에서 Pub/Sub API를 사용 설정합니다.
Pub/Sub 권한 구성
Cloud Healthcare API에서 Pub/Sub로 메시지를 게시하려면 프로젝트의 Cloud Healthcare 서비스 에이전트 서비스 계정에 pubsub.publisher
역할을 추가해야 합니다.
필요한 역할을 추가하는 단계는 DICOM, FHIR, HL7v2 저장소 Pub/Sub 권한을 참조하세요.
Pub/Sub 주제 만들기
주제를 만들려면 주제 만들기를 참조하세요.
개별 데이터 저장소에는 자체 Pub/Sub 주제가 있거나 여러 데이터 저장소가 동일한 주제를 공유할 수 있습니다.
Pub/Sub 주제를 지정할 때 다음 형식을 사용합니다.
projects/PROJECT_ID/topics/TOPIC_NAME
PROJECT_ID
는 Google Cloud 프로젝트 ID이고 TOPIC_NAME
은 Pub/Sub 주제의 이름입니다.
Pub/Sub 구독 만들기
주제에 게시된 메시지를 받으려면 Pub/Sub 구독을 만들어야 합니다. 모든 Pub/Sub 주제에는 하나 이상의 Pub/Sub 구독이 필요합니다. 구독은 주제에 게시된 메시지를 수신하고 처리하는 구독자 애플리케이션과 주제를 연결합니다.
구독을 만들고 이를 Pub/Sub 주제에 연결하려면 구독 만들기를 참조하세요.
FHIR 저장소 만들기 또는 수정
구성된 FhirNotificationConfig
객체로 FHIR 저장소를 만들거나 수정합니다.
다음 샘플은 기존 FHIR 저장소를 수정하는 방법을 보여줍니다.
sendFullResource
및 sendPreviousResourceOnDelete
필드는 true
로 설정됩니다. 즉, 리소스가 생성, 업데이트, 패치, 삭제될 때 알림에 전체 FHIR 리소스 콘텐츠가 포함됩니다.
REST
FHIR 저장소를 만들려면 projects.locations.datasets.fhirStores.patch
메서드를 사용합니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: Google Cloud 프로젝트의 ID
- LOCATION: 데이터 세트 위치
- DATASET_ID: FHIR 저장소의 상위 데이터 세트
- FHIR_STORE_ID: FHIR 저장소 ID
- PUBSUB_TOPIC_ID: Pub/Sub 주제 ID
JSON 요청 본문:
{ "notificationConfigs": [ { "pubsubTopic": "projects/PROJECT_ID/topics/PUBSUB_TOPIC_ID", "sendFullResource": true, "sendPreviousResourceOnDelete": true } ] }
요청을 보내려면 다음 옵션 중 하나를 선택합니다.
curl
요청 본문을 request.json
파일에 저장합니다.
터미널에서 다음 명령어를 실행하여 현재 디렉터리에 이 파일을 만들거나 덮어씁니다.
cat > request.json << 'EOF' { "notificationConfigs": [ { "pubsubTopic": "projects/PROJECT_ID/topics/PUBSUB_TOPIC_ID", "sendFullResource": true, "sendPreviousResourceOnDelete": true } ] } EOF
그런 후 다음 명령어를 실행하여 REST 요청을 전송합니다.
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID?updateMask=notificationConfigs"
PowerShell
요청 본문을 request.json
파일에 저장합니다.
터미널에서 다음 명령어를 실행하여 현재 디렉터리에 이 파일을 만들거나 덮어씁니다.
@' { "notificationConfigs": [ { "pubsubTopic": "projects/PROJECT_ID/topics/PUBSUB_TOPIC_ID", "sendFullResource": true, "sendPreviousResourceOnDelete": true } ] } '@ | Out-File -FilePath request.json -Encoding utf8
그런 후 다음 명령어를 실행하여 REST 요청을 전송합니다.
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID?updateMask=notificationConfigs" | Select-Object -Expand Content
다음과 비슷한 JSON 응답이 표시됩니다.
FHIR 리소스 만들기
FHIR 저장소에서 FHIR 리소스를 만듭니다. 요청으로 인해 Cloud Healthcare API가 메시지를 구성된 Pub/Sub 주제에 게시합니다.
Pub/Sub 알림 보기
Pub/Sub 주제에 게시된 메시지를 확인합니다. 다음 메시지는 FHIR 저장소에 환자 리소스가 생성되었을 때 생성되었습니다.
샘플 출력에서 FHIR 리소스의 콘텐츠는 data
필드의 base64로 인코딩된 문자열에 있습니다. 콘텐츠를 가져오려면 base64로 인코딩된 값을 디코딩해야 합니다.
대부분의 플랫폼과 운영체제에는 base64 텍스트를 디코딩하는 도구가 있습니다.
REST
Pub/Sub 주제에 게시된 메시지를 보려면 projects.subscriptions.pull
메서드를 사용합니다. 다음 샘플은 ?maxMessages=10
쿼리 파라미터를 사용하여 요청에 반환할 최대 메시지 수를 지정합니다. 필요에 맞게 값을 조정할 수 있습니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: Google Cloud 프로젝트의 ID
- PUBSUB_SUBSCRIPTION_ID: FHIR 저장소에 구성된 Pub/Sub 주제에 연결된 구독의 ID입니다.
요청을 보내려면 다음 옵션 중 하나를 선택합니다.
curl
다음 명령어를 실행합니다.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://pubsub.googleapis.com/v1/projects/PROJECT_ID/subscriptions/PUBSUB_SUBSCRIPTION_ID:pull?maxMessages=10"
PowerShell
다음 명령어를 실행합니다.
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://pubsub.googleapis.com/v1/projects/PROJECT_ID/subscriptions/PUBSUB_SUBSCRIPTION_ID:pull?maxMessages=10" | Select-Object -Expand Content
다음과 비슷한 JSON 응답이 표시됩니다.
gcloud
Pub/Sub 주제에 게시된 메시지를 보려면 gcloud pubsub subscriptions pull
명령어를 실행합니다.
이 샘플은 다음과 같은 Google Cloud CLI 플래그를 사용합니다.
--format=json
: 출력을 JSON으로 렌더링합니다.--auto-ack
: 가져온 모든 메시지를 자동으로 확인합니다.
아래의 명령어 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_ID: Google Cloud 프로젝트의 ID
- PUBSUB_SUBSCRIPTION_ID: FHIR 저장소에 구성된 Pub/Sub 주제에 연결된 구독의 ID입니다.
다음 명령어를 실행합니다.
Linux, macOS 또는 Cloud Shell
gcloud pubsub subscriptions pull \ projects/PROJECT_ID/subscriptions/PUBSUB_SUBSCRIPTION_ID \ --auto-ack \ --format=json
Windows(PowerShell)
gcloud pubsub subscriptions pull ` projects/PROJECT_ID/subscriptions/PUBSUB_SUBSCRIPTION_ID ` --auto-ack ` --format=json
Windows(cmd.exe)
gcloud pubsub subscriptions pull ^ projects/PROJECT_ID/subscriptions/PUBSUB_SUBSCRIPTION_ID ^ --auto-ack ^ --format=json
다음과 비슷한 응답이 표시됩니다.
[ { "ackId": "RFAGFixdRkhRNxkIaFEOT14jPzUgKEUaAggUBXx9cEFLdVhUcGhRDRlyfWB9bQ5GAgpGWixfURsHaE5tdR", "ackStatus": "SUCCESS", "message": { "attributes": { "action": "CreateResource", "lastUpdatedTime": "Mon, 01 Jan 2020 00:00:00 UTC", "payloadType": "FullResource", "resourceType": "Patient", "storeName": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "versionId": "MTY4MzA2MDQzOTI5NjIxMDAwMA" }, "data": "wogICJiaXJ0aERhdGUiOiAiMTk3MC0wMS0wMSIsCiAgImdlbmRlciI6ICJmZW1hbGUiLAogICJpZCI6ICIyYmMwODg4Yi00MGRmLTQwYzctOWRhYi0wMzc4YTFiZWE0MGIiLAogICJtZXRhIjogewogICAgImxhc3RVcGRhdGVkIjogIjIwMjMtMDUtMDJUMjA6NDc6MTkuMjk2MjEwKzAwOjAwIiwKICAgICJ2ZXJzaW9uSWQiOiAiTVRZNE16QTJNRFF6T1RJNU5qSXhNREF3TUEiCiAgfSwKICAibmFtZSI6IFsKICAgIHsKICAgICAgImZhbWlseSI6ICJTbWl0aCIsCiAgICAgICJnaXZlbiI6IFsKICAgICAgICAiRGFyY3kiCiAgICAgIF0sCiAgICAgICJ1c2UiOiAib2ZmaWNpYWwiCiAgICB9CiAgXSwKICAicmVzb3VyY2VUeXBlIjogIlBhdGllbnQiCn0=", "messageId": "7586159156345265", "publishTime": "YYYY-MM-DDTHH:MM:SS+ZZ:ZZ" } } ]
FHIR 리소스가 너무 크거나 트래픽이 높은 경우의 동작
FHIR 리소스 크기가 너무 크거나 Cloud Healthcare API 서버에 높은 트래픽이 발생하는 경우 attributes
필드에는 전체 리소스 콘텐츠 대신 리소스 이름만 포함될 수 있습니다.
이 동작은 sendFullResource
및 sendPreviousResourceOnDelete
가 true
로 설정된 경우에도 발생합니다.
Pub/Sub 알림에 전체 FHIR 리소스가 포함되어 있는지 확인하려면 알림 보기의 응답에서 payloadType
필드를 확인합니다.
payloadType
이 nameOnly
로 설정된 경우 attributes
필드가 FHIR 리소스 데이터를 완전히 채우지 않은 것입니다. 이 경우에는 Pub/Sub 메시지 대신 FHIR 저장소에서 FHIR 리소스의 콘텐츠를 수동으로 가져와야 합니다.
Cloud Healthcare API 및 Pub/Sub 메시지 스토리지 정책
Cloud Healthcare API 데이터와 Pub/Sub 메시지의 관련 데이터가 동일한 리전에 있는지 확인하려면 Pub/Sub 메시지 스토리지 정책을 설정해야 합니다.
데이터가 동일한 리전에 유지되도록 하려면 데이터 스토어에 구성된 Pub/Sub 주제에 메시지 스토리지 정책을 명시적으로 설정해야 합니다. 예를 들어 Cloud Healthcare API 데이터 세트 및 FHIR 저장소가 us-central1
에 있으면 메시지 스토리지 정책에서 us-central1
리전만 허용해야 합니다.
메시지 스토리지 정책을 구성하려면 메시지 저장소 정책 구성을 참조하세요.
누락된 Pub/Sub 메시지 문제 해결
Pub/Sub에 알림을 게시할 수 없는 경우 Cloud Logging에 오류가 로깅됩니다. 자세한 내용은 Cloud Logging에서 오류 로그 보기를 참조하세요.
오류 생성 속도가 한도를 초과하면 한도를 초과한 오류는 Cloud Logging에 제출되지 않습니다.
NotificationConfig
구성을 사용하여 FHIR 알림 보기(지원 중단됨)
FhirStore
리소스에는 Pub/Sub 주제를 지정할 수 있는 NotificationConfig
객체가 포함됩니다.
FHIR 리소스의 변경사항에는 항상 Pub/Sub 메시지의 data
필드에 있는 다음 식별자가 포함됩니다.
projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/RESOURCE_TYPE/RESOURCE_ID
다음 키:값 쌍 집합이 항상 메시지의 attributes
필드에 포함됩니다.
속성 이름 | 가능한 값 | 예 | 설명 |
---|---|---|---|
action |
|
CreateResource |
방금 발생한 이벤트의 유형 |
resourceType |
모든 FHIR 리소스 유형 | Patient |
수정된 리소스 유형 |