Mengonfigurasi notifikasi Pub/Sub

Anda dapat menggunakan Pub/Sub untuk menerima notifikasi saat peristiwa klinis terjadi di penyimpanan data Cloud Healthcare API. Notifikasi ini memberi tahu Anda saat:

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:

Mengaktifkan API

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

  1. Buka halaman Topics Pub/Sub di konsol Google Cloud.

    Buka halaman topik Pub/Sub

  2. Klik Buat Topik.

  3. Masukkan nama topik dengan URI:

    projects/PROJECT_ID/topics/TOPIC_NAME

    dengan PROJECT_ID sebagai project ID Google Cloud Anda.

  4. 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

  1. Buka halaman Topics Pub/Sub di konsol Google Cloud.

    Buka halaman topik Pub/Sub

  2. Klik topik project Anda.

  3. Klik Buat Langganan.

  4. Masukkan nama langganan:

    projects/PROJECT_ID/subscriptions/SUBSCRIPTION_NAME

    Biarkan Delivery Type ditetapkan ke Pull.

  5. 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:

  1. Buat atau edit penyimpanan HL7v2 dan konfigurasikan dengan topik Pub/Sub.
  2. Tambahkan peran pubsub.publisher yang diperlukan ke akun layanan project Anda.
  3. Serap pesan HL7v2 ke dalam penyimpanan HL7v2. Tindakan ini akan memicu Cloud Healthcare API untuk memublikasikan pesan ke topik Pub/Sub yang dikonfigurasi.
  4. 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: