Anda dapat menggunakan Pub/Sub untuk menerima notifikasi saat peristiwa klinis terjadi di penyimpanan data Cloud Healthcare API. Notifikasi ini memberi tahu Anda saat:
- Instance DICOM disimpan di penyimpanan DICOM menggunakan metode
dicomStores.dicomWeb.studies.storeInstances
atau diimpor dari Cloud Storage dengandicomStores.notificationConfig
. - Instance DICOM disimpan, diimpor, diperbarui, atau dihapus di penyimpanan DICOM
menggunakan
dicomStores.notificationConfigs
. - Resource FHIR dibuat, diperbarui, atau dihapus di penyimpanan FHIR. Namun, notifikasi tidak dikirim saat resource FHIR diimpor dari Cloud Storage.
- Pesan HL7v2 diserap atau dibuat di penyimpanan HL7v2 untuk pertama kalinya. Pesan duplikat tidak akan memicu notifikasi.
Saat salah satu peristiwa ini terjadi, Cloud Healthcare API akan memublikasikan pesan ke resource Pub/Sub bernama yang disebut topik. Kemudian, pesan dapat diterima oleh aplikasi yang berlangganan ke topik tersebut.
Untuk DICOM dan HL7v2, pesan ini tidak berisi informasi pribadi apa pun. Langkah tersebut hanya mencakup hal berikut:
- Project tempat pesan dibuat
- ID pesan
- Dalam pesan HL7v2, jenis pesan HL7v2
Pesan Pub/Sub FHIR dapat berisi informasi pribadi. Untuk mengetahui informasi selengkapnya, lihat Notifikasi FHIR yang berisi data resource FHIR.
Untuk mengetahui ringkasan penggunaan notifikasi Pub/Sub dengan Cloud Healthcare API, lihat Notifikasi Pub/Sub.
Sebelum memulai
Meninjau kuota Pub/Sub
Sebelum mengonfigurasi notifikasi Pub/Sub, pahami kuota dan batas Pub/Sub. Untuk mengetahui informasi tentang cara melihat kuota, meminta nilai kuota yang lebih tinggi, dan apa yang terjadi jika kuota Anda habis, lihat dokumentasi Cloud Quotas.
Aktifkan Pub/Sub API
Untuk mengaktifkan Pub/Sub API, klik tombol berikut:
Mengonfigurasi izin Pub/Sub
Agar pesan dapat dipublikasikan dari Cloud Healthcare API ke Pub/Sub, Anda harus menambahkan peran pubsub.publisher
ke akun layanan Agen Layanan Cloud Healthcare project Anda.
Lihat Izin Pub/Sub penyimpanan DICOM, FHIR, dan HL7v2
untuk mengetahui langkah-langkah menambahkan peran yang diperlukan.
Membuat topik Pub/Sub
Untuk setiap penyimpanan data yang ingin Anda terima notifikasinya, Anda harus mengonfigurasi topik Pub/Sub. Setiap penyimpanan data dapat memiliki topik Pub/Sub sendiri, atau beberapa penyimpanan data dapat berbagi topik yang sama. Anda dapat membuat topik menggunakan konsol Google Cloud atau Google Cloud CLI.
Saat membuat topik, atau merujuk ke topik dalam konfigurasi penyimpanan data, Anda harus menggunakan URI yang memenuhi syarat dalam format berikut:
projects/PROJECT_ID/topics/TOPIC_NAME
dengan PROJECT_ID sebagai project ID Google Cloud Anda dan TOPIC_NAME sebagai nama topik.
Untuk membuat topik, selesaikan langkah-langkah berikut:
Konsol
Buka halaman Topics Pub/Sub di konsol Google Cloud .
Klik Buat Topik.
Masukkan nama topik dengan URI:
projects/PROJECT_ID/topics/TOPIC_NAME
dengan PROJECT_ID adalah Google Cloud project ID Anda.
Klik Buat.
gcloud
Untuk membuat topik, jalankan perintah
gcloud pubsub topics create
:
gcloud pubsub topics create projects/PROJECT_ID/topics/TOPIC_NAME
Jika permintaan berhasil, perintah akan menampilkan output berikut:
Created topic [projects/PROJECT_ID/topics/TOPIC_NAME].
Membuat langganan Pub/Sub
Untuk menerima pesan yang dipublikasikan ke suatu topik, Anda perlu membuat langganan Pub/Sub. Setiap topik Pub/Sub harus memiliki setidaknya satu langganan Pub/Sub.
Langganan menghubungkan topik ke aplikasi pelanggan yang menerima dan memproses pesan yang dipublikasikan ke topik.
Langganan dapat dikonfigurasi untuk menggunakan model push atau model pull.
Langganan dapat dikonfigurasi untuk memfilter pesan berdasarkan atributnya; lihat petunjuk tentang memfilter pesan dari langganan.
Untuk membuat langganan, selesaikan langkah-langkah berikut:
Konsol
Buka halaman Topics Pub/Sub di konsol Google Cloud .
Klik topik project Anda.
Klik Buat Langganan.
Masukkan nama langganan:
projects/PROJECT_ID/subscriptions/SUBSCRIPTION_NAME
Biarkan Jenis Pengiriman ditetapkan ke Pull.
Klik Buat.
gcloud
Untuk membuat topik, jalankan perintah
gcloud pubsub subscriptions create
:
gcloud pubsub subscriptions create SUBSCRIPTION_NAME --topic=TOPIC_NAME
Jika permintaan berhasil, perintah akan menampilkan output berikut:
Created subscription [projects/PROJECT_ID/subscriptions/TOPIC_NAME].
Melihat notifikasi instance DICOM yang disimpan
Untuk mengetahui informasi tentang cara menggunakan notifikasi Pub/Sub dengan data DICOM, lihat Notifikasi Pub/Sub DICOM.
Melihat notifikasi HL7v2
Resource Hl7V2Store
berisi array notificationConfigs
tempat Anda dapat menentukan topik Pub/Sub dan kriteria pemfilteran.
Saat pesan HL7v2 diserap atau dibuat di penyimpanan HL7v2, Cloud Healthcare API akan memublikasikan pesan ke topik Pub/Sub yang memiliki filter yang cocok dengan pesan HL7v2.
Untuk melihat notifikasi pesan HL7v2 yang diproses, selesaikan langkah-langkah berikut:
- Buat atau edit penyimpanan HL7v2 dan konfigurasikan dengan topik Pub/Sub.
- Tambahkan peran
pubsub.publisher
yang diperlukan ke akun layanan project Anda. - Menyerap pesan HL7v2 ke dalam penyimpanan HL7v2. Hal ini akan memicu Cloud Healthcare API untuk memublikasikan pesan ke topik Pub/Sub yang dikonfigurasi.
Untuk melihat pesan yang dipublikasikan ke topik Pub/Sub, jalankan perintah
gcloud pubsub subscriptions pull
:gcloud pubsub subscriptions pull --auto-ack projects/PROJECT_ID/subscriptions/PUBSUB_SUBSCRIPTION
Perintah ini menampilkan output berikut tentang pesan HL7v2 yang di-ingest:
┌--------------------------------------------------------------------------------------------------------------------|-----------------|---------------┐ | DATA | MESSAGE_ID | ATTRIBUTES | ├--------------------------------------------------------------------------------------------------------------------|-----------------|---------------| | projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/HL7V2_MESSAGE_ID | 123456789012345 | msgType=TYPE | └--------------------------------------------------------------------------------------------------------------------|-----------------|---------------┘
Kebijakan penyimpanan pesan Cloud Healthcare API dan Pub/Sub
Untuk memastikan bahwa data Cloud Healthcare API Anda dan data terkait dalam pesan Pub/Sub berada di region yang sama, Anda harus menetapkan kebijakan penyimpanan pesan Pub/Sub.
Anda harus menetapkan kebijakan penyimpanan pesan secara eksplisit pada topik Pub/Sub yang dikonfigurasi di penyimpanan data untuk memastikan data tetap berada di region yang sama. Misalnya, jika set data dan penyimpanan FHIR Cloud Healthcare API Anda berada di
us-central1
, kebijakan penyimpanan pesan hanya boleh mengizinkan region us-central1
.
Untuk mengonfigurasi kebijakan penyimpanan pesan, lihat Mengonfigurasi kebijakan penyimpanan pesan.
Memecahkan masalah pesan Pub/Sub yang terlewat
Jika notifikasi tidak dapat dipublikasikan ke Pub/Sub, error akan dicatat ke dalam log di Cloud Logging. Untuk mengetahui informasi selengkapnya, lihat Melihat log error di Cloud Logging.
Jika frekuensi pembuatan error melebihi batas, error yang melebihi batas tidak akan dikirimkan ke Cloud Logging.
Langkah berikutnya
Pelajari cara mengonfigurasi topik Pub/Sub di: