

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Mengatur Peringatan
<a name="v9-alerting-setup"></a>

****  
**Topik dokumentasi ini dirancang untuk ruang kerja Grafana yang mendukung Grafana versi 9.x.**  
Untuk ruang kerja Grafana yang mendukung Grafana versi 10.x, lihat. [Bekerja di Grafana versi 10](using-grafana-v10.md)  
Untuk ruang kerja Grafana yang mendukung Grafana versi 8.x, lihat. [Bekerja di Grafana versi 8](using-grafana-v8.md)

Konfigurasikan fitur dan integrasi yang Anda butuhkan untuk membuat dan mengelola peringatan Anda.

**Topics**
+ [

# Tambahkan Alertmanager eksternal
](v9-alerting-setup-alertmanager.md)
+ [

# Penyediaan sumber daya Peringatan Grafana
](v9-alerting-setup-provision.md)

# Tambahkan Alertmanager eksternal
<a name="v9-alerting-setup-alertmanager"></a>

****  
**Topik dokumentasi ini dirancang untuk ruang kerja Grafana yang mendukung Grafana versi 9.x.**  
Untuk ruang kerja Grafana yang mendukung Grafana versi 10.x, lihat. [Bekerja di Grafana versi 10](using-grafana-v10.md)  
Untuk ruang kerja Grafana yang mendukung Grafana versi 8.x, lihat. [Bekerja di Grafana versi 8](using-grafana-v8.md)

Siapkan Grafana untuk menggunakan Alertmanager eksternal sebagai Alertmanager tunggal untuk menerima semua peringatan Anda. Alertmanager eksternal ini kemudian dapat dikonfigurasi dan dikelola dari dalam Grafana itu sendiri.

Setelah menambahkan Alertmanager, Anda dapat menggunakan Grafana Alerting UI untuk mengelola keheningan, titik kontak, dan kebijakan notifikasi. Opsi dropdown di halaman ini memungkinkan Anda untuk beralih di antara manajer peringatan.

**catatan**  
Dimulai dengan Grafana 9.2, konfigurasi URL pengelola peringatan eksternal dari tab Admin di halaman Peringatan tidak digunakan lagi. Ini akan dihapus dalam rilis future.

Manajer peringatan eksternal sekarang harus dikonfigurasi sebagai sumber data menggunakan Konfigurasi Grafana dari menu navigasi Grafana utama. Ini memungkinkan Anda untuk mengelola titik kontak dan kebijakan pemberitahuan manajer peringatan eksternal dari dalam Grafana dan juga mengenkripsi kredensi otentikasi dasar HTTP yang sebelumnya terlihat saat mengonfigurasi pengelola peringatan eksternal berdasarkan URL.

Untuk menambahkan Alertmanager eksternal, selesaikan langkah-langkah berikut.

1. Klik Konfigurasi dan kemudian Sumber data.

1. Cari Alertmanager.

1. Pilih Implementasi Anda dan isi kolom pada halaman, sesuai kebutuhan.

   Jika Anda menyediakan sumber data Anda, setel tanda `handleGrafanaManagedAlerts` di `jsonData` bidang untuk mengirim peringatan yang dikelola Grafana `true` ke Alertmanager ini.
**catatan**  
Prometheus, Grafana Mimir, dan implementasi Cortex dari Alertmanager didukung. Untuk Prometheus, titik kontak dan kebijakan notifikasi hanya-baca di UI Peringatan Grafana.

1. Klik Simpan & uji.

# Penyediaan sumber daya Peringatan Grafana
<a name="v9-alerting-setup-provision"></a>

****  
**Topik dokumentasi ini dirancang untuk ruang kerja Grafana yang mendukung Grafana versi 9.x.**  
Untuk ruang kerja Grafana yang mendukung Grafana versi 10.x, lihat. [Bekerja di Grafana versi 10](using-grafana-v10.md)  
Untuk ruang kerja Grafana yang mendukung Grafana versi 8.x, lihat. [Bekerja di Grafana versi 8](using-grafana-v8.md)

Infrastruktur peringatan seringkali rumit, dengan banyak potongan pipa yang sering tinggal di tempat yang berbeda. Menskalakan ini di beberapa tim dan organisasi adalah tugas yang sangat menantang. Penyediaan Grafana Alerting membuat proses ini lebih mudah dengan memungkinkan Anda membuat, mengelola, dan memelihara data peringatan Anda dengan cara yang paling sesuai dengan organisasi Anda.

Ada dua opsi untuk dipilih:

1. Menyediakan sumber daya peringatan Anda menggunakan API HTTP Penyediaan Peringatan.
**catatan**  
Biasanya, Anda tidak dapat mengedit aturan peringatan yang disediakan API dari UI Grafana.  
Untuk mengaktifkan pengeditan, tambahkan x-disable-provenance header ke permintaan berikut saat membuat atau mengedit aturan peringatan Anda di API:  

   ```
   POST /api/v1/provisioning/alert-rules
   PUT /api/v1/provisioning/alert-rules/{UID}
   ```

1. Menyediakan sumber peringatan Anda menggunakan Terraform.

**catatan**  
Saat ini, penyediaan Grafana Alerting mendukung aturan peringatan, titik kontak, pengaturan waktu bisu, dan templat. Sumber daya peringatan yang disediakan menggunakan penyediaan file atau Terraform hanya dapat diedit di sumber yang membuatnya dan bukan dari dalam Grafana atau sumber lainnya. Misalnya, jika Anda menyediakan sumber peringatan menggunakan file dari disk, Anda tidak dapat mengedit data di Terraform atau dari dalam Grafana.

**Topics**
+ [

# Buat dan kelola sumber daya peringatan menggunakan Terraform
](v9-alerting-setup-provision-terraform.md)
+ [

# Melihat sumber peringatan yang disediakan di Grafana
](v9-alerting-setup-provision-view.md)

# Buat dan kelola sumber daya peringatan menggunakan Terraform
<a name="v9-alerting-setup-provision-terraform"></a>

****  
**Topik dokumentasi ini dirancang untuk ruang kerja Grafana yang mendukung Grafana versi 9.x.**  
Untuk ruang kerja Grafana yang mendukung Grafana versi 10.x, lihat. [Bekerja di Grafana versi 10](using-grafana-v10.md)  
Untuk ruang kerja Grafana yang mendukung Grafana versi 8.x, lihat. [Bekerja di Grafana versi 8](using-grafana-v8.md)

Gunakan Penyedia Grafana Terraform untuk mengelola sumber daya peringatan Anda dan menyediakannya ke dalam sistem Grafana Anda. Dukungan penyedia Terraform untuk Grafana Alerting memudahkan untuk membuat, mengelola, dan memelihara seluruh tumpukan Grafana Alerting Anda sebagai kode.

Untuk informasi lebih lanjut tentang mengelola sumber daya peringatan Anda menggunakan Terraform, lihat dokumentasi [Penyedia](https://registry.terraform.io/providers/grafana/grafana/latest/docs) Grafana di dokumentasi Terraform.

Selesaikan tugas-tugas berikut untuk membuat dan mengelola sumber peringatan Anda menggunakan Terraform.

1. Buat kunci API untuk penyediaan.

1. Konfigurasikan penyedia Terraform.

1. Tentukan sumber peringatan Anda di Terraform.

1. Jalankan `terraform apply` untuk menyediakan sumber peringatan Anda.

## Prasyarat
<a name="v9-alerting-setup-provision-tf-prerequisites"></a>
+ Pastikan Anda memiliki [penyedia grafana/grafana Terraform](https://registry.terraform.io/providers/grafana/grafana/1.28.0) 1.27.0 atau lebih tinggi.
+ Pastikan Anda menggunakan Grafana 9.1 atau lebih tinggi. Jika Anda membuat instance Grafana Terkelola Amazon dengan Grafana versi 9, ini benar.

## Membuat kunci API untuk penyediaan
<a name="v9-alerting-setup-provision-tf-apikey"></a>

Anda dapat [membuat kunci API Grafana normal](Using-Grafana-APIs.md) untuk mengautentikasi Terraform dengan Grafana. Sebagian besar perkakas yang ada menggunakan kunci API akan secara otomatis bekerja dengan dukungan Grafana Alerting yang baru. Untuk informasi khusus tentang membuat kunci untuk digunakan dengan Terraform, lihat [Menggunakan Terraform untuk otomatisasi Grafana Terkelola Amazon](https://aws-observability.github.io/observability-best-practices/recipes/recipes/amg-automation-tf/).

**Untuk membuat kunci API untuk penyediaan**

1. Buat akun layanan baru untuk pipeline CI Anda.

1. Tetapkan peran “Akses API Penyediaan aturan peringatan.”

1. Buat token akun layanan baru.

1. Beri nama dan simpan token untuk digunakan di Terraform.

Atau, Anda dapat menggunakan otentikasi dasar. Untuk melihat semua format otentikasi yang didukung, lihat Autentikasi [Grafana](https://registry.terraform.io/providers/grafana/grafana/latest/docs#authentication) di dokumentasi Terraform.

## Konfigurasikan penyedia Terraform
<a name="v9-alerting-setup-provision-tf-configure"></a>

[Dukungan Grafana Alerting disertakan sebagai bagian dari penyedia Grafana Terraform.](https://registry.terraform.io/providers/grafana/grafana/latest/docs)

Berikut ini adalah contoh yang dapat Anda gunakan untuk mengonfigurasi penyedia Terraform.

```
terraform {
    required_providers {
        grafana = {
            source = "grafana/grafana"
            version = ">= 1.28.2"
        }
    }
}

provider "grafana" {
    url = <YOUR_GRAFANA_URL>
    auth = <YOUR_GRAFANA_API_KEY>
}
```

## Penyediaan titik kontak dan templat
<a name="v9-alerting-setup-provision-tf-contacts"></a>

Titik kontak menghubungkan tumpukan peringatan ke dunia luar. Mereka memberi tahu Grafana cara terhubung ke sistem eksternal Anda dan di mana mengirimkan pemberitahuan. Ada lebih dari lima belas [integrasi](https://registry.terraform.io/providers/grafana/grafana/latest/docs/resources/contact_point#optional) berbeda untuk dipilih. Contoh ini menggunakan titik kontak Slack.

**Untuk menyediakan titik kontak dan templat**

1. Salin blok kode ini ke file.tf di mesin lokal Anda. Ganti *<slack-webhook-url>* dengan URL webhook Slack Anda (atau kontak lainnya

   Contoh ini menciptakan titik kontak yang mengirimkan pemberitahuan peringatan ke Slack.

   ```
   resource "grafana_contact_point" "my_slack_contact_point" {
       name = "Send to My Slack Channel"
   
       slack {
           url = <slack-webhook-url>
           text = <<EOT
   {{ len .Alerts.Firing }} alerts are firing!
   
   Alert summaries:
   {{ range .Alerts.Firing }}
   {{ template "Alert Instance Template" . }}
   {{ end }}
   EOT
       }
   }
   ```

1. Masukkan teks untuk notifikasi Anda di bidang teks.

   `text`Bidang ini mendukung [Templating Go-style](https://pkg.go.dev/text/template). Ini memungkinkan Anda untuk mengelola templat notifikasi Grafana Alerting Anda langsung di Terraform.

1. Jalankan perintah `terraform apply`.

1. Buka Grafana UI dan periksa detail titik kontak Anda.

   Anda tidak dapat mengedit sumber daya yang disediakan melalui Terraform dari UI. Ini memastikan bahwa tumpukan peringatan Anda selalu sinkron dengan kode Anda.

1. Klik **Uji** untuk memverifikasi bahwa titik kontak berfungsi dengan benar.

**catatan**  
Anda dapat menggunakan kembali template yang sama di banyak titik kontak. Dalam contoh di atas, template bersama yaitu disematkan menggunakan pernyataan `{{ template "Alert Instance Template" . }}`  
Fragmen ini kemudian dapat dikelola secara terpisah di Terraform:  

```
resource "grafana_message_template" "my_alert_template" {
    name = "Alert Instance Template"

    template = <<EOT
{{ define "Alert Instance Template" }}
Firing: {{ .Labels.alertname }}
Silence: {{ .SilenceURL }}
{{ end }}
EOT
}
```

## Kebijakan pemberitahuan penyediaan dan perutean
<a name="v9-alerting-setup-provision-tf-notifications"></a>

Kebijakan notifikasi memberi tahu Grafana cara merutekan instance peringatan, sebagai lawan dari where. Mereka menghubungkan peringatan penembakan ke titik kontak yang Anda tentukan sebelumnya menggunakan sistem label dan pencocokan.

**Untuk menyediakan kebijakan pemberitahuan dan perutean**

1. Salin blok kode ini ke file.tf di mesin lokal Anda.

   Dalam contoh ini, peringatan dikelompokkan berdasarkan`alertname`, yang berarti bahwa setiap pemberitahuan yang berasal dari peringatan yang memiliki nama yang sama, dikelompokkan ke dalam pesan Slack yang sama.

   Jika Anda ingin merutekan pemberitahuan tertentu secara berbeda, Anda dapat menambahkan sub-kebijakan. Sub-kebijakan memungkinkan Anda menerapkan perutean ke peringatan yang berbeda berdasarkan pencocokan label. Dalam contoh ini, kami menerapkan waktu bisu ke semua peringatan dengan label a=b.

   ```
   resource "grafana_notification_policy" "my_policy" {
       group_by = ["alertname"]
       contact_point = grafana_contact_point.my_slack_contact_point.name
   
       group_wait = "45s"
       group_interval = "6m"
       repeat_interval = "3h"
   
       policy {
           matcher {
               label = "a"
               match = "="
               value = "b"
           }
           group_by = ["..."]
           contact_point = grafana_contact_point.a_different_contact_point.name
           mute_timings = [grafana_mute_timing.my_mute_timing.name]
   
           policy {
               matcher {
                   label = "sublabel"
                   match = "="
                   value = "subvalue"
               }
               contact_point = grafana_contact_point.a_third_contact_point.name
               group_by = ["..."]
           }
       }
   }
   ```

1. Di bidang mute\$1timings, tautkan waktu bisu ke kebijakan notifikasi Anda.

1. Jalankan perintah `terraform apply`.

1. Buka Grafana UI dan periksa detail kebijakan notifikasi Anda.
**catatan**  
Anda tidak dapat mengedit sumber daya yang disediakan dari Terraform dari UI. Ini memastikan bahwa tumpukan peringatan Anda selalu sinkron dengan kode Anda.

1. Klik **Uji** untuk memverifikasi bahwa titik notifikasi berfungsi dengan benar.

## Ketentuan waktu bisu
<a name="v9-alerting-setup-provision-tf-mutetiming"></a>

Pengaturan waktu bisu memberikan kemampuan untuk membisukan pemberitahuan peringatan untuk periode waktu yang ditentukan.

**Untuk menyediakan timing bisu**

1. Salin blok kode ini ke file.tf di mesin lokal Anda.

   Dalam contoh ini, notifikasi peringatan dibisukan pada akhir pekan.

   ```
   resource "grafana_mute_timing" "my_mute_timing" {
       name = "My Mute Timing"
   
       intervals {
           times {
             start = "04:56"
             end = "14:17"
           }
           weekdays = ["saturday", "sunday", "tuesday:thursday"]
           months = ["january:march", "12"]
           years = ["2025:2027"]
       }
   }
   ```

1. Jalankan perintah `terraform apply`.

1. Buka Grafana UI dan periksa detail waktu bisu Anda.

1. Referensikan waktu bisu yang baru dibuat dalam kebijakan notifikasi menggunakan `mute_timings` bidang. Ini akan menerapkan waktu bisu Anda ke beberapa atau semua notifikasi Anda.
**catatan**  
Anda tidak dapat mengedit sumber daya yang disediakan dari Terraform dari UI. Ini memastikan bahwa tumpukan peringatan Anda selalu sinkron dengan kode Anda.

1. Klik **Uji** untuk memverifikasi bahwa waktu bisu berfungsi dengan benar.

## Aturan peringatan ketentuan
<a name="v9-alerting-setup-provision-tf-rules"></a>

[Aturan peringatan](v9-alerting-managerules.md) memungkinkan Anda untuk memperingatkan terhadap sumber data Grafana apa pun. Ini bisa berupa sumber data yang sudah Anda konfigurasikan, atau Anda dapat [menentukan sumber data Anda di Terraform bersama aturan](https://registry.terraform.io/providers/grafana/grafana/latest/docs/resources/data_source) peringatan Anda.

**Untuk menyediakan aturan peringatan**

1. Buat sumber data untuk kueri dan folder untuk menyimpan aturan Anda.

   Dalam contoh ini, sumber [Konfigurasikan sumber TestData data untuk pengujian](testdata-data-source.md) data digunakan.

   Peringatan dapat didefinisikan terhadap sumber data backend apa pun di Grafana.

   ```
   resource "grafana_data_source" "testdata_datasource" {
       name = "TestData"
       type = "testdata"
   }
   
   resource "grafana_folder" "rule_folder" {
       title = "My Rule Folder"
   }
   ```

1. Tentukan aturan peringatan.

   Untuk informasi selengkapnya tentang aturan peringatan, lihat [cara membuat lansiran yang dikelola Grafana.](https://grafana.com/blog/2022/08/01/grafana-alerting-video-how-to-create-alerts-in-grafana-9/)

1. Buat grup aturan yang berisi satu atau beberapa aturan.

   Dalam contoh ini, grup `grafana_rule_group` sumber daya digunakan.

   ```
   resource "grafana_rule_group" "my_rule_group" {
       name = "My Alert Rules"
       folder_uid = grafana_folder.rule_folder.uid
       interval_seconds = 60
       org_id = 1
   
       rule {
           name = "My Random Walk Alert"
           condition = "C"
           for = "0s"
   
           // Query the datasource.
           data {
               ref_id = "A"
               relative_time_range {
                   from = 600
                   to = 0
               }
               datasource_uid = grafana_data_source.testdata_datasource.uid
               // `model` is a JSON blob that sends datasource-specific data.
               // It's different for every datasource. The alert's query is defined here.
               model = jsonencode({
                   intervalMs = 1000
                   maxDataPoints = 43200
                   refId = "A"
               })
           }
   
           // The query was configured to obtain data from the last 60 seconds. Let's alert on the average value of that series using a Reduce stage.
           data {
               datasource_uid = "__expr__"
               // You can also create a rule in the UI, then GET that rule to obtain the JSON.
               // This can be helpful when using more complex reduce expressions.
               model = <<EOT
   {"conditions":[{"evaluator":{"params":[0,0],"type":"gt"},"operator":{"type":"and"},"query":{"params":["A"]},"reducer":{"params":[],"type":"last"},"type":"avg"}],"datasource":{"name":"Expression","type":"__expr__","uid":"__expr__"},"expression":"A","hide":false,"intervalMs":1000,"maxDataPoints":43200,"reducer":"last","refId":"B","type":"reduce"}
   EOT
               ref_id = "B"
               relative_time_range {
                   from = 0
                   to = 0
               }
           }
   
           // Now, let's use a math expression as our threshold.
           // We want to alert when the value of stage "B" above exceeds 70.
           data {
               datasource_uid = "__expr__"
               ref_id = "C"
               relative_time_range {
                   from = 0
                   to = 0
               }
               model = jsonencode({
                   expression = "$B > 70"
                   type = "math"
                   refId = "C"
               })
           }
       }
   }
   ```

1. Buka UI Grafana dan periksa aturan peringatan Anda.

   Anda dapat melihat apakah aturan peringatan menyala. Anda juga dapat melihat visualisasi setiap tahapan kueri aturan peringatan.

   Saat peringatan diaktifkan, Grafana merutekan notifikasi melalui kebijakan yang Anda tetapkan.

   Misalnya, jika Anda memilih Slack sebagai titik kontak, [Alertmanager](https://github.com/prometheus/alertmanager) tertanam Grafana secara otomatis memposting pesan ke Slack.

# Melihat sumber peringatan yang disediakan di Grafana
<a name="v9-alerting-setup-provision-view"></a>

****  
**Topik dokumentasi ini dirancang untuk ruang kerja Grafana yang mendukung Grafana versi 9.x.**  
Untuk ruang kerja Grafana yang mendukung Grafana versi 10.x, lihat. [Bekerja di Grafana versi 10](using-grafana-v10.md)  
Untuk ruang kerja Grafana yang mendukung Grafana versi 8.x, lihat. [Bekerja di Grafana versi 8](using-grafana-v8.md)

 Anda dapat memverifikasi bahwa sumber peringatan Anda dibuat di Grafana.

**Untuk melihat sumber daya yang Anda sediakan di Grafana**

1. Buka instance Grafana Anda.

1. Arahkan ke Peringatan.

1. Klik folder sumber peringatan, misalnya, Aturan peringatan.

   Sumber daya yang disediakan diberi label **Provisioned**, sehingga jelas bahwa mereka tidak dibuat secara manual.

**catatan**  
Anda tidak dapat mengedit sumber daya yang disediakan dari Grafana. Anda hanya dapat mengubah properti sumber daya dengan mengubah file penyediaan dan memulai ulang Grafana atau melakukan hot reload. Ini mencegah perubahan yang dilakukan pada sumber daya yang akan ditimpa jika file disediakan lagi atau hot reload dilakukan.