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. - 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 memublikasikan pesan ke resource Pub/Sub bernama yang disebut topik. Pesan kemudian dapat diterima oleh aplikasi yang berlangganan topik tersebut.
Untuk DICOM dan HL7v2, pesan ini tidak berisi informasi pribadi apa pun. Laporan ini 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 informasi selengkapnya, lihat Notifikasi FHIR yang berisi data resource FHIR.
Untuk 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 lebih banyak kuota, dan yang terjadi jika Anda kehabisan kuota, lihat Menangani kuota.
Mengaktifkan 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-nya 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 adalah 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 sebagai project ID Google Cloud Anda.
Klik Create.
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 minimal 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 Delivery Type ditetapkan ke Pull.
Klik Create.
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 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 memublikasikan pesan ke topik Pub/Sub yang memiliki filter yang cocok dengan pesan HL7v2.
Untuk melihat notifikasi pesan HL7v2 yang diserap, 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. - Serap pesan HL7v2 ke dalam penyimpanan HL7v2. Tindakan 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 ditransfer:
┌--------------------------------------------------------------------------------------------------------------------|-----------------|---------------┐ | 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 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 di topik Pub/Sub
yang dikonfigurasi di penyimpanan data untuk memastikan data tetap berada di region
yang sama. Misalnya, jika set data Cloud Healthcare API dan penyimpanan FHIR 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 artikel Melihat log error di Cloud Logging.
Jika frekuensi pembuatan error melebihi batas, error yang melebihi batas tersebut tidak akan dikirim ke Cloud Logging.
Langkah selanjutnya
Pelajari cara mengonfigurasi topik Pub/Sub di: