Menghubungi webhook dengan pemberitahuan metrik klasik di Azure Monitor
Peringatan
Artikel ini menjelaskan cara menggunakan pemberitahuan metrik klasik yang lebih lama. Azure Monitor sekarang mendukung pemberitahuan metrik hampir real-time dan pengalaman pemberitahuan baru. Pemberitahuan klasik dihentikan untuk pengguna cloud publik. Pemberitahuan klasik untuk cloud Azure Government dan Microsoft Azure yang dioperasikan oleh 21Vianet akan dihentikan pada 29 Februari 2024.
Anda dapat menggunakan webhook untuk merutekan pemberitahuan Azure ke sistem lain untuk tindakan pascapemrosesan atau kustom. Anda dapat menggunakan webhook pada pemberitahuan untuk merutekannya ke layanan yang mengirim pesan SMS, untuk mencatat bug, memberi tahu tim melalui layanan obrolan atau pesan, atau untuk berbagai tindakan lainnya.
Artikel ini menjelaskan cara mengatur webhook pada pemberitahuan metrik Azure. Artikel ini juga menunjukkan kepada Anda seperti apa payload untuk HTTP POST ke webhook. Untuk informasi tentang penyiapan dan skema untuk pemberitahuan log aktivitas Azure (pemberitahuan terkait peristiwa), lihat Memanggil webhook pada pemberitahuan log aktivitas Azure.
Pemberitahuan Azure menggunakan HTTP POST untuk mengirim konten pemberitahuan dalam format JSON ke URI webhook yang Anda berikan saat membuat pemberitahuan. Skema didefinisikan kemudian dalam artikel ini. URI harus merupakan titik akhir HTTP atau HTTPS yang valid. Azure memposting satu entri per permintaan saat pemberitahuan diaktifkan.
Mengonfigurasi webhook melalui portal Microsoft Azure
Untuk menambahkan atau memperbarui URI webhook, di portal Microsoft Azure, buka Membuat/Memperbarui Pemberitahuan.
Anda juga dapat mengonfigurasi pemberitahuan untuk memposting ke URI webhook dengan menggunakan cmdlet Azure PowerShell, sebuah CLI lintas platform, atau REST API Azure Monitor.
Mengautentikasi webhook
Webhook dapat mengautentikasi dengan menggunakan otorisasi berbasis token. URI webhook disimpan dengan ID token. Misalnya: https://mysamplealert/webcallback?tokenid=sometokenid&someparameter=somevalue
Skema payload
Operasi POST berisi payload dan skema JSON berikut untuk semua pemberitahuan berbasis metrik:
{
"status": "Activated",
"context": {
"timestamp": "2015-08-14T22:26:41.9975398Z",
"id": "/subscriptions/s1/resourceGroups/useast/providers/microsoft.insights/alertrules/ruleName1",
"name": "ruleName1",
"description": "some description",
"conditionType": "Metric",
"condition": {
"metricName": "Requests",
"metricUnit": "Count",
"metricValue": "10",
"threshold": "10",
"windowSize": "15",
"timeAggregation": "Average",
"operator": "GreaterThanOrEqual"
},
"subscriptionId": "s1",
"resourceGroupName": "useast",
"resourceName": "mysite1",
"resourceType": "microsoft.foo/sites",
"resourceId": "/subscriptions/s1/resourceGroups/useast/providers/microsoft.foo/sites/mysite1",
"resourceRegion": "centralus",
"portalLink": "https://portal.azure.com/#resource/subscriptions/s1/resourceGroups/useast/providers/microsoft.foo/sites/mysite1"
},
"properties": {
"key1": "value1",
"key2": "value2"
}
}
Bidang | Wajib | Kumpulan nilai tetap | Catatan |
---|---|---|---|
status | Y | Diaktifkan, Diselesaikan | Status untuk pemberitahuan berdasarkan kondisi yang Anda tetapkan. |
konteks | Y | Konteks pemberitahuan. | |
timestamp | Y | Waktu saat pemberitahuan dipicu. | |
id | Y | Setiap aturan pemberitahuan memiliki ID unik. | |
nama | Y | Nama pemberitahuan. | |
deskripsi | Y | Deskripsi pemberitahuan. | |
conditionType | Y | Metrik, Peristiwa | Dua jenis pemberitahuan didukung: metrik dan peristiwa. Pemberitahuan metrik didasarkan pada kondisi metrik. Pemberitahuan peristiwa didasarkan pada peristiwa di log aktivitas. Gunakan nilai ini untuk memeriksa jika pemberitahuan didasarkan pada metrik atau peristiwa. |
kondisi | Y | Bidang tertentu untuk diperiksa berdasarkan nilai conditionType. | |
metricName | Untuk pemberitahuan metrik | Nama metrik yang menentukan apa yang akan dipantau oleh aturan. | |
metricUnit | Untuk pemberitahuan metrik | Byte, BytesPerSecond, Count, CountPerSecond, Persen, Detik | Unit yang diizinkan dalam metrik. Lihat nilai yang diizinkan. |
metricValue | Untuk pemberitahuan metrik | Nilai aktual metrik yang menyebabkan pemberitahuan. | |
ambang batas | Untuk pemberitahuan metrik | Nilai ambang batas tempat pemberitahuan diaktifkan. | |
windowSize | Untuk pemberitahuan metrik | Periode waktu yang digunakan untuk memantau aktivitas pemberitahuan berdasarkan ambang batas. Nilainya harus antara 5 menit dan 1 hari. Nilai harus dalam format durasi ISO 8601. | |
timeAggregation | Untuk pemberitahuan metrik | Rata-rata, Terakhir, Maksimum, Minimum, Tidak Ada, Total | Bagaimana data yang dikumpulkan harus digabungkan dari waktu ke waktu. Nilai defaultnya adalah Rata-rata. Lihat nilai yang diizinkan. |
operator | Untuk pemberitahuan metrik | Operator yang digunakan untuk membandingkan data metrik saat ini dengan ambang batas yang ditetapkan. | |
subscriptionId | Y | ID langganan Azure. | |
resourceGroupName | Y | Nama grup sumber daya untuk sumber daya yang terpengaruh. | |
resourceName | Y | Nama sumber daya untuk sumber daya yang terpengaruh. | |
resourceType | Y | Jenis sumber daya dari sumber daya yang terpengaruh. | |
resourceId | Y | ID sumber daya dari sumber daya yang terpengaruh. | |
resourceRegion | Y | Wilayah atau lokasi sumber daya yang terpengaruh. | |
portalLink | Y | Tautan langsung ke halaman ringkasan sumber daya portal. | |
properti | N | Opsional | Set pasangan kunci/nilai yang memiliki detail tentang peristiwa. Contohnya,Dictionary<String, String> . Bidang properti bersifat opsional. Dalam UI kustom atau alur kerja berbasis aplikasi logika, pengguna dapat memasukkan pasangan kunci/nilai yang dapat diteruskan melalui payload. Cara alternatif untuk meneruskan properti kustom kembali ke webhook adalah melalui webhook URI itu sendiri (sebagai parameter kueri). |
Catatan
Anda hanya dapat mengatur bidang properti dengan menggunakan REST API Azure Monitor.
Langkah berikutnya
- Pelajari selengkapnya tentang pemberitahuan dan webhook Azure dalam video Mengintegrasikan pemberitahuan Azure dengan PagerDuty.
- Pelajari cara menjalankan skrip Azure Automation (runbook) pada pemberitahuan Azure.
- Pelajari cara menggunakan aplikasi logika untuk mengirim pesan SMS melalui Twilio dari pemberitahuan Azure.
- Pelajari cara menggunakan aplikasi logika untuk mengirim pesan Slack dari pemberitahuan Azure.
- Pelajari cara menggunakan aplikasi logika untuk mengirim pesan ke antrean Azure dari pemberitahuan Azure.