全部产品
Search
文档中心

Managed Service for Prometheus:Kontak berbasis Webhook

更新时间:Jul 02, 2025

Saat membuat kebijakan notifikasi, Anda dapat menentukan bahwa notifikasi peringatan dikirim ke URL webhook kustom. Alibaba Cloud Managed Service for Prometheus memungkinkan pengiriman notifikasi peringatan ke kontak aplikasi pesan instan tertentu. Topik ini menjelaskan cara menggunakan webhook untuk mengirim notifikasi ke Lark.

Langkah 1: Dapatkan URL webhook

  1. Buka dan masuk ke Lark.

  2. Klik ikon +, lalu pilih Add Group untuk membuat grup Lark yang digunakan menerima notifikasi peringatan.

  3. Klik ikon Pengaturan di sisi kanan grup Lark, lalu pilih tab BOTs.

  4. Pada tab BOTs, klik Add Bot.

    飞书添加机器人

  5. Di kotak dialog Add Bot, klik Tambah pada bagian Custom Bot.

    飞书-自定义机器人

  6. Atur parameter Nama Bot dan Deskripsi, lalu klik Add.

    飞书-设置机器人

  7. Klik Copy di sebelah URL Webhook, lalu klik Save.

    飞书-Webhook

Langkah 2: Buat webhook

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

  2. Di kotak dialog Edit Grup Kontak, klik tab Webhook, lalu klik Create Webhook. Di kotak dialog Create Webhook, konfigurasikan parameter. Tabel berikut menjelaskan parameter tersebut.

    Parameter

    Deskripsi

    Webhook Name

    Masukkan nama untuk webhook.

    Metode permintaan

    Tentukan metode permintaan dan masukkan URL HTTP atau HTTPS. Metode permintaan bisa POST atau GET, dan URL tidak boleh lebih dari 100 karakter.

    Dalam contoh ini, pilih Post dan tempel URL webhook yang disimpan di Langkah 1: Dapatkan URL webhook ke dalam bidang tersebut.

    Header dan Param

    Tentukan header permintaan dan parameter. Maksimal 200 karakter didukung.

    Klik Add untuk menambahkan header atau parameter. Header permintaan default adalah Content-Type: text/plain; charset=UTF-8. Total jumlah header dan parameter tidak boleh melebihi 6.

    Dalam contoh ini, atur header berikut:

    • Arms-Content-Type : json

    • Content-Type : application/json

    Jika Anda mengatur Metode Permintaan ke Post, Anda harus mengonfigurasi parameter berikut

    Notification template

    Tentukan konten yang ingin Anda kirim saat peringatan dipicu. Anda dapat menggunakan placeholder $content untuk menentukan konten notifikasi. Konten tidak boleh lebih dari 500 karakter. Untuk informasi lebih lanjut, lihat Konfigurasikan template notifikasi dan template webhook.

    Tentukan konten notifikasi dalam format berikut:

    {
    "Nama Peringatan":"{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}",
    "Nama Kluster":"{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }}",
    "Nama Aplikasi":"{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}",
    "Kebijakan Notifikasi":"{{ .dispatchRuleName }}",
    "Waktu Peringatan":"{{ .startTime }}",
    "Konten Notifikasi":"{{ for .alerts }} {{ .annotations.message }} {{ end }}"
    }

    Dalam contoh ini, template berikut digunakan:

    {
      "msg_type": "text",
      "content": {
        "text": "Nama Peringatan: {{ .commonLabels.alertname }}\n{{if .commonLabels.clustername }}Nama Kluster: {{ .commonLabels.clustername }}\n{{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }}Nama Aplikasi: {{ .commonLabels._aliyun_arms_involvedObject_name }}\n{{ end }}Kebijakan Notifikasi: {{ .dispatchRuleName }} \nPeringatan Dipicu Pada: {{ .startTime }} \nPesan Peringatan: {{ for .alerts }} {{ .annotations.message }}\n {{ end }}"
      }
    }

    Template to Clear Alerts

    Tentukan konten yang ingin Anda kirim saat peringatan diselesaikan. Anda dapat menggunakan placeholder $content untuk menentukan konten notifikasi. Konten tidak boleh lebih dari 500 karakter. Untuk informasi lebih lanjut, lihat Konfigurasikan template notifikasi dan template webhook.

    Tentukan konten notifikasi dalam format berikut:

    {
    "Nama Peringatan":"{{ .commonLabels.alertname }}{{if .commonLabels.clustername }}",
    "Nama Kluster":"{{ .commonLabels.clustername }} {{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }}",
    "Nama Aplikasi":"{{ .commonLabels._aliyun_arms_involvedObject_name }} {{ end }}",
    "Kebijakan Notifikasi":"{{ .dispatchRuleName }}",
    "Waktu penyelesaian peringatan":"{{ .endTime }}",
    "Konten Peringatan":"{{ for .alerts }} {{ .annotations.message }} {{ end }}"
    }

    Dalam contoh ini, template berikut digunakan:

    {
      "msg_type": "text",
      "content": {
        "text": "Nama Peringatan: {{ .commonLabels.alertname }}\n{{if .commonLabels.clustername }}Nama Kluster: {{ .commonLabels.clustername }}\n{{ end }}{{if eq "app" .commonLabels._aliyun_arms_involvedObject_kind }}Nama Aplikasi: {{ .commonLabels._aliyun_arms_involvedObject_name }}\n{{ end }}Peringatan Dihapus Pada: {{ .startTime }} \nKebijakan Notifikasi: {{ .dispatchRuleName }} \nPesan Peringatan: {{ for .alerts }} {{ .annotations.message }}\n {{ end }}"
      }
    }
  3. Opsional: Klik Test untuk memverifikasi validitas konfigurasi.

  4. Klik OK.

Langkah 3: Konfigurasikan kebijakan notifikasi

Saat membuat atau memodifikasi kebijakan notifikasi, atur parameter Notification Object ke Universal Webhook, lalu pilih webhook. Untuk informasi lebih lanjut, lihat Buat dan kelola kebijakan notifikasi.

Catatan

Periode timeout untuk notifikasi peringatan yang dikirim menggunakan webhook adalah 5 detik. Jika webhook tidak menerima respons dalam waktu 5 detik setelah notifikasi dikirim, pengiriman notifikasi gagal.