All Products
Search
Document Center

Managed Service for Prometheus:Sesuaikan penerima peringatan dengan webhook

Last Updated:Jun 26, 2026

Saat membuat kebijakan notifikasi, Anda dapat mengirimkan pemberitahuan peringatan ke URL webhook kustom. Fitur manajemen alert memungkinkan pengiriman alert ke layanan pihak ketiga melalui integrasi webhook. Topik ini menggunakan Lark sebagai contoh untuk menunjukkan cara membuat dan mengonfigurasi webhook untuk alert.

Langkah 1: Dapatkan URL webhook

  1. Buka dan masuk ke Lark.

  2. Klik ikon +, lalu klik Create Group untuk membuat grup yang menerima alert.

  3. Klik ikon pengaturan grup, lalu pilih tab Bots.

  4. Pada tab Bots, klik Add Bot.

  5. Pada panel Add Bot, pilih Custom Bot.

  6. Pada halaman konfigurasi, atur Display name dan Description, lalu klik Add.

  7. Pada bagian Webhook URL, klik Copy Link, lalu klik Finish.

    Pada bagian Security Settings, centang kotak Custom Keywords dan tambahkan kata kunci alert.

Langkah 2: Buat integrasi webhook

  1. Masuk ke Managed Service for Prometheus console. Di panel navigasi kiri, pilih Alert Management > Notification Objects.

  2. Klik tab Webhook integration, lalu klik Create webhook di pojok kanan atas. Konfigurasikan parameter berikut pada panel Create webhook.

    Parameter

    Deskripsi

    Webhook name

    Masukkan nama kustom untuk webhook.

    Request method

    Pilih metode permintaan, POST atau GET, dan masukkan URL yang dimulai dengan http:// atau https://. Panjang URL tidak boleh melebihi 100 karakter.

    Untuk contoh ini, pilih POST dan tempel URL webhook yang Anda peroleh di Langkah 1: Dapatkan URL webhook ke dalam kotak teks di sebelah kanan.

    Header, param

    Atur header permintaan dan parameter. Setiap header dan parameter tidak boleh melebihi 200 karakter.

    Klik + Add untuk menambahkan informasi header atau parameter lainnya. Header permintaan default adalah Content-Type: text/plain; charset=UTF-8. Jumlah total header dan parameter tidak boleh melebihi enam.

    Untuk contoh ini, atur dua header berikut:

    • Arms-Content-Type : json

    • Content-Type : application/json

    Jika Anda memilih POST sebagai metode permintaan, Anda juga harus mengonfigurasi parameter berikut.

    Notification template

    Templat untuk notifikasi alert yang dipicu. Anda dapat menggunakan placeholder $content untuk menghasilkan konten notifikasi. Panjang templat tidak boleh melebihi 500 karakter. Untuk informasi selengkapnya, lihat Konfigurasikan templat notifikasi dan templat webhook.

    Berikut contoh templat notifikasi:

    {
    "Alert name":"{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}",
    "Cluster name":"{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }}",
    "Application name":"{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}",
    "Notification policy":"{{ .dispatchRuleName }}",
    "Alert time":"{{ .startTime }}",
    "Alert content":"{{ for .alerts }} {{ .annotations.message }} {{ end }}"
    }

    Untuk contoh Lark, Anda dapat menggunakan format teks berikut:

    {
      "msg_type": "text",
      "content": {
        "text": "Alert name: {{ .commonLabels.alertname }}\n{{if .commonLabels.clustername }}Cluster name: {{ .commonLabels.clustername }}\n{{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }}Application name: {{ .commonLabels._aliyun_arms_involvedObject_name }}\n{{ end }}Notification policy: {{ .dispatchRuleName }} \nAlert time: {{ .startTime }} \nAlert content: {{ for .alerts }} {{ .annotations.message }}\n {{ end }}"
      }
    }

    Template to Clear Alerts

    Templat untuk notifikasi yang dikirim saat alert terselesaikan. Anda dapat menggunakan placeholder $content untuk menghasilkan konten notifikasi. Panjang templat tidak boleh melebihi 500 karakter. Untuk informasi selengkapnya, lihat Konfigurasikan templat notifikasi dan templat webhook.

    Berikut contohnya:

    {
    "Alert name":"{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}",
    "Cluster name":"{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }}",
    "Application name":"{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}",
    "Notification policy":"{{ .dispatchRuleName }}",
    "Recovery time":"{{ .endTime }}",
    "Alert content":"{{ for .alerts }} {{ .annotations.message }} {{ end }}"
    }

    Untuk contoh Lark, Anda dapat menggunakan format teks berikut:

    {
      "msg_type": "text",
      "content": {
        "text": "Alert name: {{ .commonLabels.alertname }}\n{{if .commonLabels.clustername }}Cluster name: {{ .commonLabels.clustername }}\n{{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }}Application name: {{ .commonLabels._aliyun_arms_involvedObject_name }}\n{{ end }}Recovery time: {{ .startTime }} \nNotification policy: {{ .dispatchRuleName }} \nResolved alert content: {{ for .alerts }} {{ .annotations.message }}\n {{ end }}"
      }
    }
  3. (Opsional) Klik Test untuk memverifikasi konfigurasi Anda.

  4. Klik OK.

Langkah 3: Siapkan kebijakan notifikasi

Buat atau edit kebijakan notifikasi. Untuk Notification objects, pilih Universal webhook, lalu pilih integrasi webhook yang telah Anda buat. Untuk informasi selengkapnya, lihat Kebijakan notifikasi.

Catatan

Timeout untuk permintaan webhook adalah 5 detik. Jika titik akhir tidak merespons dalam waktu tersebut, pengiriman notifikasi gagal.