Gunakan webhook untuk mengonfigurasi notifikasi kesehatan untuk sistem manajemen masalah

Artikel ini menunjukkan cara mengonfigurasi peringatan Azure Service Health untuk mengirim data melalui webhook ke sistem pemberitahuan yang ada.

Anda dapat mengonfigurasi peringatan Service Health untuk memberi tahu Anda melalui pesan teks atau email saat insiden layanan Azure memengaruhi Anda.

Tetapi Anda mungkin sudah memiliki sistem pemberitahuan eksternal yang lebih Anda sukai untuk digunakan. Artikel ini mengidentifikasi bagian terpenting dari payload webhook. Dan itu menjelaskan cara membuat peringatan khusus untuk memberi tahu Anda ketika masalah layanan yang relevan terjadi.

Jika Anda ingin menggunakan integrasi yang telah dikonfigurasi, lihat:

Menonton video pengantar:

Mengonfigurasi pemberitahuan khusus dengan menggunakan payload webhook Service Health

Untuk menyiapkan integrasi webhook kustom Anda sendiri, Anda perlu mengurai payload JSON yang dikirim melalui pemberitahuan Service Health.

Lihat contohServiceHealth payload webhook.

Anda dapat mengonfirmasi bahwa ini adalah peringatan kesehatan layanan dengan melihat context.eventSource == "ServiceHealth". Properti berikut adalah yang paling relevan:

  • data.context.activityLog.status
  • data.context.activityLog.level
  • data.context.activityLog.subscriptionId
  • data.context.activityLog.properties.title
  • data.context.activityLog.properties.impactStartTime
  • data.context.activityLog.properties.communication
  • data.context.activityLog.properties.impactedServices
  • data.context.activityLog.properties.trackingId

Anda dapat membuat tautan langsung ke dasbor Service Health di desktop atau perangkat seluler dengan membuat URL khusus. Gunakan trackingId dan tiga digit pertama dan tiga digit terakhir dari subscriptionId Anda dalam format ini:

https://app.azure.com/h/<trackingId>/<tiga digit pertama dan tiga digit terakhir dari subscriptionId>

Misalnya, jika subscriptionId Anda adalah bba14129-e895-429b-8809-278e836ecdb3 dan trackingId Anda adalah 0DET-URB, URL Service Health Anda adalah:

https://app.azure.com/h/0DET-URB/bbadb3

Gunakan tingkat untuk mendeteksi tingkat keparahan masalah

Dari tingkat keparahan terendah hingga tertinggi, properti tingkat dalam payload dapat berupa Informasi, Peringatan, Kesalahan, atau Kritis.

Mengurai layanan yang terpengaruh untuk menentukan cakupan insiden

Peringatan Service Health dapat memberi tahu Anda tentang masalah di berbagai wilayah dan layanan. Untuk mendapatkan detail lengkap, Anda perlu mengurai nilai impactedServices.

Konten yang ada di dalamnya adalah string JSON yang diloloskan, yang jika tidak diloloskan, berisi objek JSON lain yang dapat diuraikan secara teratur. Misalnya:

{"data.context.activityLog.properties.impactedServices": "[{\"ImpactedRegions\":[{\"RegionName\":\"Australia East\"},{\"RegionName\":\"Australia Southeast\"}],\"ServiceName\":\"Alerts & Metrics\"},{\"ImpactedRegions\":[{\"RegionName\":\"Australia Southeast\"}],\"ServiceName\":\"App Service\"}]"}

menjadi:

[
   {
      "ImpactedRegions":[
         {
            "RegionName":"Australia East"
         },
         {
            "RegionName":"Australia Southeast"
         }
      ],
      "ServiceName":"Alerts & Metrics"
   },
   {
      "ImpactedRegions":[
         {
            "RegionName":"Australia Southeast"
         }
      ],
      "ServiceName":"App Service"
   }
]

Contoh ini menunjukkan masalah untuk:

  • "Alerts & Metrics" di Australia Timur dan Australia Tenggara.
  • "App Service" di Australia Tenggara.

Uji integrasi webhook Anda melalui permintaan HTTP POST

Ikuti langkah-langkah ini:

  1. Buat payload kesehatan layanan yang ingin Anda kirim. Lihat contoh payload webhook kesehatan layanan di Peringatan log aktivitas Webhook untuk Azure.

  2. Buat permintaan HTTP POST sebagai berikut:

    POST        https://your.webhook.endpoint
    
    HEADERS     Content-Type: application/json
    
    BODY        <service health payload>
    

    Anda akan menerima tanggapan "2XX - Sukses".

  3. Buka PagerDuty untuk mengonfirmasi bahwa integrasi Anda berhasil disiapkan.

Langkah berikutnya