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 jika:

Saat salah satu peristiwa ini terjadi, Cloud Healthcare API memublikasikan pesan ke resource Pub/Sub bernama yang disebut topic. Pesan kemudian dapat diterima oleh aplikasi yang berlangganan topik tersebut.

Untuk DICOM dan HL7v2, pesan ini tidak berisi informasi pribadi apa pun. Notifikasi 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 ringkasan tentang penggunaan notifikasi Pub/Sub dengan Cloud Healthcare API, lihat Notifikasi Pub/Sub.

Sebelum memulai

Tinjau 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 apa yang terjadi jika Anda kehabisan kuota, lihat Bekerja dengan kuota.

Mengaktifkan Pub/Sub API

Untuk mengaktifkan Pub/Sub API, klik tombol berikut:

Mengaktifkan API

Mengonfigurasi izin Pub/Sub

Untuk mengizinkan pesan dipublikasikan dari Cloud Healthcare API ke Pub/Sub, Anda harus menambahkan peran pubsub.publisher ke akun layanan Cloud Healthcare Service Agent project Anda. Lihat izin Pub/Sub toko 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 Google Cloud Console 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 topiknya.

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 ID project 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 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

  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 Jenis Pengiriman 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 tersimpan

Untuk mengetahui informasi tentang cara menggunakan notifikasi Pub/Sub dengan data DICOM, lihat Notifikasi Pub/Sub DICOM.

Lihat 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 diserap, selesaikan langkah-langkah berikut:

  1. Buat atau edit penyimpanan HL7v2 dan konfigurasi dengan topik Pub/Sub.
  2. Tambahkan peran pubsub.publisher yang diperlukan ke akun layanan project Anda.
  3. Serap pesan HL7v2 ke 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 diserap:

    ┌--------------------------------------------------------------------------------------------------------------------|-----------------|---------------┐
    |                                                                 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 secara eksplisit menetapkan kebijakan penyimpanan pesan pada topik Pub/Sub yang dikonfigurasi di penyimpanan data untuk memastikan bahwa 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 Cloud Logging. Untuk mengetahui informasi selengkapnya, baca artikel Melihat log error di Cloud Logging.

Jika tingkat pembuatan error melebihi batas, error yang melebihi batas tidak akan dikirimkan ke Cloud Logging.

Langkah selanjutnya

Pelajari cara mengonfigurasi topik Pub/Sub di: