

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

# Peringatan di Grafana versi 9
<a name="v9-alerts"></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)

Grafana alert memberi Anda peringatan yang kuat dan dapat ditindaklanjuti yang membantu Anda mempelajari masalah dalam sistem beberapa saat setelah terjadi, meminimalkan gangguan pada layanan Anda.

Grafana yang Dikelola Amazon mencakup akses ke sistem peringatan yang diperbarui, peringatan Grafana, yang *memusatkan informasi peringatan* dalam satu tampilan yang dapat dicari. Ini mencakup fitur-fitur berikut:
+ Buat dan kelola peringatan Grafana dalam tampilan terpusat.
+ Buat dan kelola peringatan terkelola Cortex dan Loki melalui satu antarmuka.
+ Lihat informasi peringatan dari Prometheus, Layanan Terkelola Amazon untuk Prometheus, dan sumber data lain yang kompatibel dengan Alertmanager.

Saat Anda membuat ruang kerja Grafana Terkelola Amazon, Anda memiliki pilihan untuk menggunakan peringatan Grafana, atau. [Peringatan dasbor klasik](old-alerts-overview.md) Bagian ini mencakup peringatan Grafana.

**catatan**  
Jika Anda membuat ruang kerja dengan peringatan Klasik diaktifkan, dan ingin beralih ke peringatan Grafana, Anda dapat [beralih di antara](v9-alerting-use-grafana-alerts.md) dua sistem peringatan. .

## Keterbatasan peringatan Grafana
<a name="v9-alert-limitations"></a>
+ Sistem peringatan Grafana dapat mengambil aturan dari semua sumber data Amazon Managed Service yang tersedia untuk Prometheus, Prometheus, Loki, dan Alertmanager. Mungkin tidak dapat mengambil aturan dari sumber data lain yang didukung.
+ Aturan peringatan yang ditentukan di Grafana, bukan di Prometheus, mengirim beberapa pemberitahuan ke titik kontak Anda. Jika Anda menggunakan peringatan Grafana asli, kami sarankan Anda tetap menggunakan peringatan dasbor klasik dan tidak mengaktifkan fitur peringatan Grafana baru. Jika Anda ingin melihat Peringatan yang ditentukan dalam sumber data Prometheus Anda, maka kami sarankan Anda mengaktifkan Peringatan Grafana, yang hanya mengirimkan satu pemberitahuan untuk peringatan yang dibuat di Prometheus Alertmanager.
**catatan**  
Batasan ini tidak lagi menjadi batasan di ruang kerja Grafana Terkelola Amazon yang mendukung Grafana v10.4 dan yang lebih baru.

**Topics**
+ [Keterbatasan peringatan Grafana](#v9-alert-limitations)
+ [Gambaran umum](v9-alerting-overview.md)
+ [Menjelajahi peringatan](v9-alerting-explore.md)
+ [Mengatur Peringatan](v9-alerting-setup.md)
+ [Memigrasi peringatan dasbor klasik ke peringatan Grafana](v9-alerting-use-grafana-alerts.md)
+ [Kelola aturan peringatan Anda](v9-alerting-managerules.md)
+ [Mengelola notifikasi peringatan](v9-alerting-managenotifications.md)

# Gambaran umum
<a name="v9-alerting-overview"></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)

Berikut ini memberi Anda gambaran umum tentang cara kerja Grafana Alerting dan memperkenalkan Anda pada beberapa konsep kunci yang bekerja bersama dan membentuk inti dari mesin peringatan yang fleksibel dan kuat.

1. **Sumber data**

   Terhubung ke data yang akan digunakan dengan memberi peringatan. Data ini sering merupakan data deret waktu, untuk peringatan, dan menunjukkan rincian sistem yang akan dipantau dan dianalisis. Untuk informasi selengkapnya, lihat [sumber data](AMG-data-sources-builtin.md).

1. **Aturan peringatan**

   Tetapkan kriteria evaluasi yang menentukan apakah instance peringatan akan diaktifkan. Aturan peringatan terdiri dari satu atau lebih kueri dan ekspresi untuk menarik data dari sumber data, kondisi yang menjelaskan apa yang merupakan kebutuhan untuk peringatan, frekuensi evaluasi, dan secara opsional, durasi di mana kondisi harus dipenuhi untuk peringatan untuk menyala.

   Peringatan terkelola Grafana mendukung peringatan multi-dimensi, yang berarti bahwa setiap aturan peringatan dapat membuat beberapa instance peringatan. Ini sangat kuat jika Anda mengamati beberapa seri dalam satu ekspresi.

1. **Label**

   Cocokkan aturan peringatan dan instance-nya dengan kebijakan pemberitahuan dan pembungkaman. Mereka juga dapat digunakan untuk mengelompokkan peringatan Anda berdasarkan tingkat keparahan.

1. **Kebijakan pemberitahuan**

   Tetapkan di mana, kapan, dan bagaimana peringatan diarahkan untuk memberi tahu tim Anda saat peringatan menyala. Setiap kebijakan pemberitahuan menentukan satu set pencocokan label untuk menunjukkan peringatan mana yang menjadi tanggung jawab mereka. Kebijakan notifikasi memiliki titik kontak yang ditetapkan untuk itu yang terdiri dari satu atau beberapa notifier.

1. **Titik kontak**

   Tentukan bagaimana kontak Anda diberi tahu saat peringatan menyala. Kami mendukung banyak ChatOps alat untuk memastikan peringatan datang ke tim Anda.

## Fitur
<a name="v9-alerting-features"></a>

**Satu halaman untuk semua peringatan**

Satu halaman Peringatan Grafana menggabungkan peringatan dan peringatan yang dikelola Grafana yang berada di sumber data Anda yang kompatibel dengan Prometheus di satu tempat.

**Peringatan multi-dimensi**

Aturan peringatan dapat membuat beberapa instance peringatan individual per aturan peringatan, yang dikenal sebagai peringatan multi-dimensi, memberi Anda kekuatan dan fleksibilitas untuk mendapatkan visibilitas ke seluruh sistem Anda hanya dengan satu peringatan.

**Peringatan perutean**

Rutekan setiap instance peringatan ke titik kontak tertentu berdasarkan label yang Anda tentukan. Kebijakan pemberitahuan adalah seperangkat aturan untuk di mana, kapan, dan bagaimana peringatan diarahkan ke titik kontak.

**Membungkam peringatan**

Keheningan memungkinkan Anda untuk berhenti menerima pemberitahuan terus-menerus dari satu atau beberapa aturan peringatan. Anda juga dapat menjeda sebagian peringatan berdasarkan kriteria tertentu. Silences memiliki bagian khusus mereka sendiri untuk organisasi dan visibilitas yang lebih baik, sehingga Anda dapat memindai aturan peringatan yang dijeda tanpa mengacaukan tampilan peringatan utama.

**Bisukan waktu**

Dengan pengaturan waktu bisu, Anda dapat menentukan interval waktu saat Anda tidak ingin notifikasi baru dibuat atau dikirim. Anda juga dapat membekukan pemberitahuan peringatan untuk periode waktu berulang, seperti selama periode pemeliharaan.

# Menjelajahi peringatan
<a name="v9-alerting-explore"></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)

Baik Anda memulai atau memperluas implementasi Grafana Alerting, pelajari lebih lanjut tentang konsep utama dan fitur yang tersedia yang membantu Anda membuat, mengelola, dan mengambil tindakan pada peringatan Anda dan meningkatkan kemampuan tim Anda untuk menyelesaikan masalah dengan cepat.

Pertama-tama, mari kita lihat berbagai jenis aturan peringatan yang ditawarkan Grafana Alerting.

## Jenis aturan peringatan
<a name="v9-alerting-explore-rule-types"></a>

**Aturan yang dikelola Grafana**

Aturan yang dikelola Grafana adalah jenis aturan peringatan yang paling fleksibel. Mereka memungkinkan Anda membuat peringatan yang dapat bertindak berdasarkan data dari sumber data kami yang didukung. Selain mendukung beberapa sumber data, Anda juga dapat menambahkan ekspresi untuk mengubah data Anda dan mengatur kondisi peringatan. Ini adalah satu-satunya jenis aturan yang memungkinkan peringatan dari beberapa sumber data dalam satu definisi aturan.

**Aturan Mimir dan Loki**

Untuk membuat peringatan Mimir atau Loki, Anda harus memiliki sumber data Prometheus atau Loki yang kompatibel. Anda dapat memeriksa apakah sumber data Anda mendukung pembuatan aturan melalui Grafana dengan menguji sumber data dan mengamati apakah API penggaris didukung.

**Aturan perekaman**

Aturan perekaman hanya tersedia untuk sumber data Prometheus atau Loki yang kompatibel. Aturan perekaman memungkinkan Anda untuk menghitung terlebih dahulu ekspresi yang sering dibutuhkan atau mahal secara komputasi dan menyimpan hasilnya sebagai rangkaian waktu baru. Ini berguna jika Anda ingin menjalankan peringatan pada data agregat atau jika Anda memiliki dasbor yang menanyakan ekspresi mahal secara komputasi berulang kali.

## Konsep dan fitur utama
<a name="v9-alerting-explore-features"></a>

Tabel berikut mencakup daftar konsep kunci, fitur, dan definisinya, yang dirancang untuk membantu Anda memaksimalkan Grafana Alerting.


| Konsep atau fitur kunci | Definisi | 
| --- | --- | 
|  Sumber data untuk Peringatan  |  Pilih sumber data yang ingin Anda kueri dan visualisasikan metrik, log, dan jejak.  | 
|  Penyediaan untuk Peringatan  |  Kelola sumber daya peringatan Anda dan sediakan ke dalam sistem Grafana Anda menggunakan penyediaan file atau Terraform.  | 
|  Pengelola Peringatan  |  Mengelola perutean dan pengelompokan instance peringatan.  | 
|  Aturan peringatan  |  Seperangkat kriteria evaluasi kapan aturan peringatan harus ditembakkan. Aturan peringatan terdiri dari satu atau lebih pertanyaan dan ekspresi, kondisi, frekuensi evaluasi, dan durasi di mana kondisi terpenuhi. Aturan peringatan dapat menghasilkan beberapa instance peringatan.  | 
|  Contoh peringatan  |  Sebuah instance peringatan adalah contoh dari aturan peringatan. Aturan peringatan satu dimensi memiliki satu contoh peringatan. Aturan peringatan multidimensi memiliki satu atau lebih contoh peringatan. Aturan peringatan tunggal yang cocok dengan beberapa hasil, seperti CPU terhadap 10 VMs, dihitung sebagai beberapa (dalam hal ini 10) instance peringatan. Jumlah ini dapat bervariasi dari waktu ke waktu. Misalnya, aturan peringatan yang memantau penggunaan CPU untuk semua VMs dalam sistem memiliki lebih banyak instance peringatan seperti VMs yang ditambahkan. Untuk informasi selengkapnya tentang kuota instance peringatan, lihat. [Kuota mencapai kesalahan](v9-alerting-managerules-grafana.md#v9-alerting-rule-quota-reached)  | 
|  Grup peringatan  |  Alertmanager mengelompokkan instance peringatan secara default menggunakan label untuk kebijakan notifikasi root. Ini mengontrol de-duplikasi dan grup instance peringatan, yang dikirim ke titik kontak.  | 
|  Titik kontak  |  Tentukan bagaimana kontak Anda diberi tahu saat aturan peringatan diaktifkan.  | 
|  Templating pesan  |  Buat templat khusus yang dapat digunakan kembali dan gunakan di titik kontak.  | 
|  Kebijakan pemberitahuan  |  Set aturan untuk di mana, kapan, dan bagaimana peringatan dikelompokkan dan diarahkan ke titik kontak.  | 
|  Label dan pencocokan label  |  Label secara unik mengidentifikasi aturan peringatan. Mereka menghubungkan aturan peringatan dengan kebijakan pemberitahuan dan pembungkaman, menentukan kebijakan mana yang harus menanganinya dan aturan peringatan mana yang harus dibungkam.  | 
|  Keheningan  |  Hentikan pemberitahuan dari satu atau beberapa contoh peringatan. Perbedaan antara keheningan dan waktu bisu adalah bahwa keheningan hanya berlangsung hanya untuk jendela waktu tertentu sedangkan waktu bisu dimaksudkan untuk berulang pada jadwal. Menggunakan pencocokan label untuk membungkam instance peringatan.  | 
|  Bisukan waktu  |  Tentukan interval waktu saat Anda tidak ingin notifikasi baru dibuat atau dikirim. Anda juga dapat membekukan notifikasi peringatan untuk periode waktu berulang, seperti selama periode pemeliharaan. Harus ditautkan ke kebijakan pemberitahuan yang ada.  | 

# Sumber data
<a name="v9-alerting-explore-datasources"></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)

Ada sejumlah [sumber data](AMG-data-sources-builtin.md) yang kompatibel dengan Grafana Alerting. Setiap sumber data didukung oleh plugin. Anda dapat menggunakan salah satu sumber data bawaan yang tercantum di bawah ini.

Ini adalah sumber data yang kompatibel dengan dan didukung oleh Grafana yang Dikelola Amazon.
+ [Connect ke sumber data Alertmanager](data-source-alertmanager.md)
+ [Connect ke sumber CloudWatch data Amazon](using-amazon-cloudwatch-in-AMG.md)
+ [Connect ke sumber data Amazon OpenSearch Service](using-Amazon-OpenSearch-in-AMG.md)
+ [Connect ke sumber AWS IoT SiteWise data](using-iotsitewise-in-AMG.md)
+ [Connect ke sumber AWS IoT TwinMaker data](AMG-iot-twinmaker.md)
+ [Connect ke Amazon Managed Service untuk Prometheus dan sumber data Prometheus sumber terbuka](prometheus-data-source.md)
+ [Connect ke sumber data Amazon Timestream](timestream-datasource.md)
+ [Connect ke sumber data Amazon Athena](AWS-Athena.md)
+ [Connect ke sumber data Amazon Redshift](AWS-Redshift.md)
+ [Connect ke sumber AWS X-Ray data](x-ray-data-source.md)
+ [Connect ke sumber data Azure Monitor](using-azure-monitor-in-AMG.md)
+ [Connect ke sumber data Google Cloud Monitoring](using-google-cloud-monitoring-in-grafana.md)
+ [Connect ke sumber data Graphite](using-graphite-in-AMG.md)
+ [Connect ke sumber data InfluxDB](using-influxdb-in-AMG.md)
+ [Connect ke sumber data Loki](using-loki-in-AMG.md)
+ [Connect ke sumber data Microsoft SQL Server](using-microsoft-sql-server-in-AMG.md)
+ [Connect ke sumber data MySQL](using-mysql-in-AMG.md)
+ [Connect ke sumber data OpenTSDB](using-opentsdb-in-AMG.md)
+ [Connect ke sumber data PostgreSQL](using-postgresql-in-AMG.md)
+ [Connect ke sumber data Jaeger](jaeger-data-source.md)
+ [Connect ke sumber data Zipkin](zipkin-data-source.md)
+ [Connect ke sumber data Tempo](tempo-data-source.md)
+ [Konfigurasikan sumber TestData data untuk pengujian](testdata-data-source.md)

# Tentang aturan peringatan
<a name="v9-alerting-explore-rules"></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)

Aturan peringatan adalah seperangkat kriteria evaluasi yang menentukan apakah instance peringatan akan diaktifkan. Aturan terdiri dari satu atau lebih pertanyaan dan ekspresi, kondisi, frekuensi evaluasi, dan opsional, durasi di mana kondisi terpenuhi.

Sementara kueri dan ekspresi memilih kumpulan data untuk dievaluasi, kondisi menetapkan ambang batas yang harus dipenuhi atau dilampaui peringatan untuk membuat peringatan.

Interval menentukan seberapa sering aturan peringatan dievaluasi. Durasi, ketika dikonfigurasi, menunjukkan berapa lama suatu kondisi harus dipenuhi. Aturan peringatan juga dapat menentukan perilaku peringatan tanpa adanya data.

**Topics**
+ [Jenis aturan peringatan](v9-alerting-explore-rules-types.md)
+ [Contoh peringatan](v9-alerting-rules-instances.md)
+ [Ruang nama dan grup](v9-alerting-rules-grouping.md)
+ [Templating pemberitahuan](v9-alerting-rules-notification-templates.md)

# Jenis aturan peringatan
<a name="v9-alerting-explore-rules-types"></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)

Grafana mendukung beberapa jenis aturan peringatan. Bagian berikut akan menjelaskan kelebihan dan kekurangannya dan membantu Anda memilih jenis peringatan yang tepat untuk kasus penggunaan Anda.

Aturan terkelola Grafana

Aturan yang dikelola Grafana adalah jenis aturan peringatan yang paling fleksibel. Mereka memungkinkan Anda membuat peringatan yang dapat bertindak berdasarkan data dari sumber data apa pun yang ada.

Selain mendukung sumber data apa pun, Anda dapat menambahkan [ekspresi](v9-panels-query-xform-expressions.md) untuk mengubah data Anda dan menyatakan kondisi peringatan.

Aturan Mimir, Loki dan Cortex

Untuk membuat peringatan Mimir, Loki, atau Cortex, Anda harus memiliki sumber data Prometheus yang kompatibel. Anda dapat memeriksa apakah sumber data Anda kompatibel dengan menguji sumber data dan memeriksa detailnya jika API penggaris didukung.

Aturan perekaman

Aturan perekaman hanya tersedia untuk sumber data Prometheus yang kompatibel seperti Mimir, Loki, dan Cortex.

Aturan perekaman memungkinkan Anda menyimpan hasil ekspresi ke rangkaian deret waktu baru. Ini berguna jika Anda ingin menjalankan peringatan pada data agregat atau jika Anda memiliki dasbor yang menanyakan ekspresi yang sama berulang kali.

Baca lebih lanjut tentang [aturan perekaman](https://prometheus.io/docs/prometheus/latest/configuration/recording_rules/) di Prometheus.

# Contoh peringatan
<a name="v9-alerting-rules-instances"></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)

Peringatan terkelola Grafana mendukung peringatan multi-dimensi. Setiap aturan peringatan dapat membuat beberapa instance peringatan. Ini sangat kuat jika Anda mengamati beberapa seri dalam satu ekspresi.

Pertimbangkan ekspresi PromQL berikut:

```
sum by(cpu) (
  rate(node_cpu_seconds_total{mode!="idle"}[1m])
)
```

Aturan yang menggunakan ekspresi ini akan membuat instance peringatan sebanyak jumlah yang CPUs diamati selama evaluasi, memungkinkan satu aturan untuk melaporkan status setiap CPU.

# Ruang nama dan grup
<a name="v9-alerting-rules-grouping"></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)

Peringatan dapat diatur menggunakan Folder untuk aturan dan ruang nama yang dikelola Grafana untuk aturan dan nama grup Mimir, Loki, atau Prometheus.

**Ruang nama**

Saat membuat aturan yang dikelola Grafana, folder dapat digunakan untuk melakukan kontrol akses dan memberikan atau menolak akses ke semua aturan dalam folder tertentu.

**Grup**

Semua aturan dalam kelompok dievaluasi pada **interval** yang sama.

Aturan peringatan dan aturan perekaman dalam grup akan selalu dievaluasi **secara berurutan**, artinya tidak ada aturan yang akan dievaluasi pada saat yang sama dan dalam urutan penampilan.

**Tip**  
Jika Anda ingin aturan dievaluasi secara bersamaan dan dengan interval yang berbeda, pertimbangkan untuk menyimpannya dalam kelompok yang berbeda.

# Templating pemberitahuan
<a name="v9-alerting-rules-notification-templates"></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)

Pemberitahuan yang dikirim melalui titik kontak dibuat menggunakan templat notifikasi. Template default Grafana didasarkan pada [sistem template Go di mana beberapa bidang dievaluasi sebagai teks, sementara yang lain dievaluasi sebagai HTML (yang dapat memengaruhi pelolosan](https://golang.org/pkg/text/template)).

Template default [default\$1template.go](https://github.com/grafana/alerting/blob/main/templates/default_template.go) adalah referensi yang berguna untuk template kustom.

Karena sebagian besar bidang titik kontak dapat di-template, Anda dapat membuat templat khusus yang dapat digunakan kembali dan menggunakannya di beberapa titik kontak. Untuk mempelajari notifikasi kustom menggunakan templat, lihat[Sesuaikan notifikasi](v9-alerting-notifications.md).

**Template bersarang**

Anda dapat menyematkan template dalam template lain.

Misalnya, Anda dapat menentukan fragmen template menggunakan `define` kata kunci.

```
{{ define "mytemplate" }}
  {{ len .Alerts.Firing }} firing. {{ len .Alerts.Resolved }} resolved.
{{ end }}
```

Anda kemudian dapat menyematkan template kustom dalam fragmen ini menggunakan kata kunci. `template` Contoh:

```
Alert summary:
{{ template "mytemplate" . }}
```

Anda dapat menggunakan salah satu opsi templat bawaan berikut untuk menyematkan templat khusus.


| Nama | Catatan | 
| --- | --- | 
|  `default.title`  |  Menampilkan informasi status tingkat tinggi.  | 
|  `default.message`  |  Menyediakan ringkasan pemformatan dan peringatan yang diselesaikan.  | 
|  `teams.default.message`  |  Mirip dengan`default.messsage`, diformat untuk Microsoft Teams.  | 

**HTML dalam template notifikasi**

HTML dalam peringatan template notifikasi lolos. Kami tidak mendukung rendering HTML dalam notifikasi yang dihasilkan.

Beberapa notifier mendukung metode alternatif untuk mengubah tampilan dan nuansa notifikasi yang dihasilkan. Misalnya, Grafana menginstal template dasar untuk memperingatkan email. `<grafana-install-dir>/public/emails/ng_alert_notification.html` Anda dapat mengedit file ini untuk mengubah tampilan semua email peringatan.

# Peringatan pada data numerik
<a name="v9-alerting-explore-numeric"></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)

Topik ini menjelaskan bagaimana Grafana menangani peringatan pada data numerik daripada deret waktu.

Di antara sumber data tertentu, data numerik yang tidak deret waktu dapat langsung disiagakan, atau diteruskan ke Server Side Expressions (SSE). Hal ini memungkinkan untuk lebih banyak pemrosesan dan menghasilkan efisiensi dalam sumber data, dan juga dapat menyederhanakan aturan peringatan. Saat memperingatkan data numerik alih-alih data deret waktu, tidak perlu mengurangi setiap deret waktu berlabel menjadi satu angka. Sebaliknya, nomor berlabel dikembalikan ke Grafana sebagai gantinya.

**Data Tabular**

Fitur ini didukung dengan sumber data backend yang menanyakan data tabular:
+ Sumber data SQL seperti MySQL, Postgres, MSSQL, dan Oracle.
+ Layanan berbasis Azure Kusto: Azure Monitor (Log), Azure Monitor (Azure Resource Graph), dan Azure Data Explorer.

Kueri dengan peringatan terkelola Grafana atau SSE dianggap numerik dengan sumber data ini, jika:
+ Opsi “Format AS” diatur ke “Tabel” dalam kueri sumber data.
+ Respons tabel yang dikembalikan ke Grafana dari kueri hanya mencakup satu kolom numerik (misalnya int, double, float), dan kolom string tambahan opsional.

Jika ada kolom string, maka kolom tersebut menjadi label. Nama kolom menjadi nama label, dan nilai untuk setiap baris menjadi nilai label yang sesuai. Jika beberapa baris dikembalikan, maka setiap baris harus diidentifikasi secara unik labelnya.

**Contoh**

Untuk tabel MySQL yang disebut “”: DiskSpace


| Waktu | Host | Disk | PercentFree | 
| --- | --- | --- | --- | 
|  2021-Juni-7  |  web1  |  /dll  |  3  | 
|  2021-Juni-7  |  web2  |  /var  |  4  | 
|  2021-Juni-7  |  web3  |  /var  |  8  | 
|  ...  |  ...  |  ...  |  ...  | 

Anda dapat menanyakan pemfilteran data tepat waktu, tetapi tanpa mengembalikan deret waktu ke Grafana. Misalnya, peringatan yang akan memicu per Host, Disk ketika ada kurang dari 5% ruang kosong:

```
SELECT Host , Disk , CASE WHEN PercentFree  < 5.0 THEN PercentFree  ELSE 0 END FROM ( 
   SELECT
      Host, 
      Disk, 
      Avg(PercentFree) 
   FROM DiskSpace
   Group By
      Host, 
      Disk 
   Where __timeFilter(Time)
```

Query ini mengembalikan respon Tabel berikut untuk Grafana:


| Host | Disk | PercentFree | 
| --- | --- | --- | 
|  web1  |  /dll  |  3  | 
|  web2  |  /var  |  4  | 
|  web3  |  /var  |  0  | 

Ketika kueri ini digunakan sebagai **kondisi** dalam aturan peringatan, maka bukan nol akan memperingatkan. Akibatnya, tiga instance peringatan dihasilkan:


| Label | Status | 
| --- | --- | 
|  \$1host = web1, disk =/dll\$1  |  Peringatan  | 
|  \$1host = web2, disk =/var\$1  |  Peringatan  | 
|  \$1host = web3, disk =/var\$1  |  Normal  | 

# Label dan anotasi
<a name="v9-alerting-explore-labels"></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)

Label dan anotasi berisi informasi tentang peringatan. Baik label dan anotasi memiliki struktur yang sama: satu set nilai bernama; namun penggunaan yang dimaksudkan berbeda. Contoh label, atau anotasi yang setara, mungkin`alertname="test"`.

Perbedaan utama antara label dan anotasi adalah label digunakan untuk membedakan peringatan dari semua peringatan lainnya, sementara anotasi digunakan untuk menambahkan informasi tambahan ke peringatan yang ada.

Misalnya, pertimbangkan dua peringatan CPU tinggi: satu untuk `server1` dan satu lagi untuk`server2`. Dalam contoh seperti itu, kita mungkin memiliki label yang disebut `server` di mana peringatan pertama memiliki label `server="server1"` dan peringatan kedua memiliki label`server="server2"`. Namun, kami mungkin juga ingin menambahkan deskripsi ke setiap peringatan seperti`"The CPU usage for server1 is above 75%."`, di `75%` mana `server1` dan diganti dengan nama dan penggunaan CPU server (silakan lihat dokumentasi tentang [Templating label dan anotasi](v9-alerting-explore-labels-templating.md) cara melakukannya). Deskripsi semacam ini akan lebih cocok sebagai anotasi.

## Label
<a name="v9-alerting-explore-labels-labels"></a>

Label berisi informasi yang mengidentifikasi peringatan. Contoh label mungkin`server=server1`. Setiap peringatan dapat memiliki lebih dari satu label, dan set lengkap label untuk peringatan disebut set labelnya. Set label inilah yang mengidentifikasi peringatan.

Misalnya, peringatan mungkin memiliki label yang disetel `{alertname="High CPU usage",server="server1"}` sementara peringatan lain mungkin memiliki label yang disetel`{alertname="High CPU usage",server="server2"}`. Ini adalah dua peringatan terpisah karena meskipun `alertname` labelnya sama, `server` labelnya berbeda.

Label yang ditetapkan untuk peringatan adalah kombinasi label dari sumber data, label khusus dari aturan peringatan, dan sejumlah label yang dicadangkan seperti. `alertname`

**Label Kustom**

Label khusus adalah label tambahan dari aturan peringatan. Seperti anotasi, label khusus harus memiliki nama, dan nilainya dapat berisi kombinasi teks dan kode templat yang dievaluasi saat peringatan diaktifkan. Dokumentasi tentang cara membuat template label kustom dapat ditemukan [di sini](v9-alerting-explore-labels-templating.md).

Saat menggunakan label khusus dengan templat, penting untuk memastikan bahwa nilai label tidak berubah di antara evaluasi berturut-turut dari aturan peringatan karena ini akan menghasilkan sejumlah besar peringatan berbeda. Namun, tidak apa-apa bagi template untuk menghasilkan nilai label yang berbeda untuk peringatan yang berbeda. Misalnya, jangan letakkan nilai kueri di label khusus karena ini akan berakhir dengan membuat kumpulan peringatan baru setiap kali nilainya berubah. Sebagai gantinya gunakan anotasi.

Penting juga untuk memastikan bahwa label yang ditetapkan untuk peringatan tidak memiliki dua atau lebih label dengan nama yang sama. Jika label kustom memiliki nama yang sama dengan label dari sumber data maka label tersebut akan menggantikan label tersebut. Namun, jika label khusus memiliki nama yang sama dengan label yang dicadangkan maka label khusus akan dihilangkan dari peringatan.

## Anotasi
<a name="v9-alerting-explore-labels-annotations"></a>

Anotasi adalah pasangan bernama yang menambahkan informasi tambahan ke peringatan yang ada. Ada sejumlah anotasi yang disarankan di Grafana `description` seperti`summary`,,`runbook_url`, `dashboardUId` dan. `panelId` Seperti label khusus, anotasi harus memiliki nama, dan nilainya dapat berisi kombinasi teks dan kode templat yang dievaluasi saat peringatan diaktifkan. Jika anotasi berisi kode templat, templat dievaluasi sekali saat peringatan diaktifkan. Itu tidak dievaluasi ulang, bahkan ketika peringatan diselesaikan. Dokumentasi tentang cara membuat templat anotasi dapat ditemukan [di sini](v9-alerting-explore-labels-templating.md).

# Cara kerja pencocokan label
<a name="v9-alerting-explore-labels-matching"></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 label dan pencocokan label untuk menautkan aturan peringatan ke kebijakan pemberitahuan dan pembungkaman. Ini memungkinkan cara yang sangat fleksibel untuk mengelola instance peringatan Anda, menentukan kebijakan mana yang harus ditangani, dan peringatan mana yang akan dibungkam.

**Pencocokan label terdiri dari 3 bagian yang berbeda, **label**, **nilai** dan operator.**
+ Bidang **Label** adalah nama label yang cocok. Itu harus sama persis dengan nama label.
+ Bidang **Nilai** cocok dengan nilai yang sesuai untuk nama **Label** yang ditentukan. Bagaimana kecocokannya tergantung pada nilai **Operator**.
+ Bidang **Operator** adalah operator yang cocok dengan nilai label. Operator yang tersedia adalah:


| Operator | Deskripsi | 
| --- | --- | 
|  `=`  |  Pilih label yang persis sama dengan nilainya.  | 
|  `!=`  |  Pilih label yang tidak sama dengan nilainya.  | 
|  `=~`  |  Pilih label yang sesuai dengan nilai regex-nya.  | 
|  `!~`  |  Pilih label yang tidak cocok dengan nilai.  | 

Jika Anda menggunakan beberapa pencocokan label, mereka digabungkan menggunakan operator logis AND. Ini berarti bahwa semua pencocokan harus cocok untuk menautkan aturan ke kebijakan.

**Contoh skenario**

Jika Anda menentukan kumpulan label berikut untuk peringatan Anda:

```
{ foo=bar, baz=qux, id=12 }
```

maka:
+ Pencocokan label yang didefinisikan sebagai `foo=bar` cocok dengan aturan peringatan ini.
+ Pencocokan label yang didefinisikan sebagai `foo!=bar` *tidak* cocok dengan aturan peringatan ini.
+ Pencocokan label yang didefinisikan sebagai `id=~[0-9]+` cocok dengan aturan peringatan ini.
+ Pencocokan label yang didefinisikan sebagai `baz!~[0-9]+` cocok dengan aturan peringatan ini.
+ Dua pencocokan label didefinisikan sebagai `foo=bar` dan `id=~[0-9]+` cocok dengan aturan peringatan ini.

# Label di Grafana Alerting
<a name="v9-alerting-explore-labels-alerting"></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)

Topik ini menjelaskan mengapa label merupakan komponen mendasar dari peringatan.
+ Set lengkap label untuk peringatan adalah apa yang secara unik mengidentifikasi peringatan dalam peringatan Grafana.
+ Alertmanager menggunakan label untuk mencocokkan peringatan untuk keheningan dan grup peringatan dalam kebijakan notifikasi.
+ UI peringatan menampilkan label untuk setiap instance peringatan yang dihasilkan selama evaluasi aturan tersebut.
+ Titik kontak dapat mengakses label untuk menghasilkan notifikasi secara dinamis yang berisi informasi khusus untuk peringatan yang menghasilkan pemberitahuan.
+ Anda dapat menambahkan label ke [aturan peringatan](v9-alerting-managerules.md). Label dapat dikonfigurasi secara manual, menggunakan fungsi templat, dan dapat mereferensikan label lain. Label yang ditambahkan ke aturan peringatan diutamakan jika terjadi tabrakan antar label (kecuali dalam kasus label yang dicadangkan Grafana, lihat di bawah untuk informasi lebih lanjut).

**Kompatibilitas Alertmanager Eksternal**

Alertmanager bawaan Grafana mendukung kunci dan nilai label Unicode. [Jika Anda menggunakan Prometheus Alertmanager eksternal, kunci label harus kompatibel dengan model datanya.](https://prometheus.io/docs/concepts/data_model/#metric-names-and-labels) Ini berarti bahwa kunci label hanya boleh berisi **huruf ASCII**, **angka**, serta **garis bawah** dan cocok dengan regex. `[a-zA-Z_][a-zA-Z0-9_]*` Setiap karakter yang tidak valid akan dihapus atau diganti oleh mesin peringatan Grafana sebelum dikirim ke Alertmanager eksternal sesuai dengan aturan berikut:
+ `Whitespace`akan dihapus.
+ `ASCII characters`akan diganti dengan`_`.
+ `All other characters`akan diganti dengan representasi hex huruf kecil mereka. Jika ini adalah karakter pertama, itu akan diawali dengan`_`.

**catatan**  
Jika beberapa kunci label disanitasi ke nilai yang sama, duplikat akan memiliki hash pendek dari label asli yang ditambahkan sebagai akhiran.

**Label yang dipesan Grafana**

**catatan**  
Label yang diawali dengan `grafana_` dicadangkan oleh Grafana untuk penggunaan khusus. Jika label yang dikonfigurasi secara manual ditambahkan dimulai dengan `grafana_` itu dapat ditimpa jika terjadi tabrakan.

Label yang dicadangkan Grafana dapat digunakan dengan cara yang sama seperti label yang dikonfigurasi secara manual. Daftar label cadangan yang tersedia saat ini adalah:


| Label | Deskripsi | 
| --- | --- | 
|  grafana\$1folder  |  Judul folder yang berisi peringatan.  | 

# Templating label dan anotasi
<a name="v9-alerting-explore-labels-templating"></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)

Di Grafana, Anda membuat template label dan anotasi seperti yang Anda lakukan di Prometheus. Jika Anda telah menggunakan Prometheus sebelumnya maka Anda harus terbiasa dengan `$labels` variabel `$value` dan, yang berisi label dan nilai peringatan. Anda dapat menggunakan variabel yang sama di Grafana, bahkan jika peringatan tidak menggunakan sumber data Prometheus. Jika Anda belum pernah menggunakan Prometheus sebelumnya maka jangan khawatir karena masing-masing variabel ini, dan cara membuat template mereka, akan dijelaskan saat Anda mengikuti sisa halaman ini.

## Bahasa Templating Go
<a name="v9-alerting-explore-labels-templating-go"></a>

[Template untuk label dan anotasi ditulis dalam bahasa template Go, teks/template.](https://pkg.go.dev/text/template)

**Membuka dan menutup tag**

Dalam teks/template, template dimulai dengan `{{` dan diakhiri dengan `}}` terlepas dari apakah template mencetak variabel atau menjalankan struktur kontrol seperti pernyataan if. Ini berbeda dari bahasa templating lainnya seperti Jinja di mana pencetakan variabel menggunakan `{{` dan `}}` dan struktur kontrol menggunakan `{%` dan. `%}`

**Cetak**

Untuk mencetak nilai sesuatu gunakan `{{` dan`}}`. Anda dapat mencetak hasil fungsi atau nilai variabel. Misalnya, untuk mencetak `$labels` variabel Anda akan menulis yang berikut:

```
{{ $labels }}
```

**Iterasi di atas label**

Untuk mengulangi setiap label di `$labels` Anda dapat menggunakan. `range` Di sini `$k` mengacu pada nama dan `$v` mengacu pada nilai label saat ini. Misalnya, jika kueri Anda mengembalikan label `instance=test` maka `$k` akan `instance` dan `$v` akan menjadi`test`.

```
{{ range $k, $v := $labels }}
{{ $k }}={{ $v }}
{{ end }}
```

## Label, nilai dan nilai variabel
<a name="v9-alerting-explore-labels-templating-variables"></a>

**Variabel label**

`$labels`Variabel berisi label dari kueri. Misalnya, kueri yang memeriksa apakah instance sedang down mungkin mengembalikan label instance dengan nama instance yang sedang down. Misalnya, Anda memiliki aturan peringatan yang menyala ketika salah satu instance Anda telah mati selama lebih dari 5 menit. Anda ingin menambahkan ringkasan ke peringatan yang memberi tahu Anda instance mana yang sedang down. Dengan `$labels` variabel, Anda dapat membuat ringkasan yang mencetak label instance dalam ringkasan:

```
Instance {{ $labels.instance }} has been down for more than 5 minutes
```

**Label dengan titik-titik**

Jika label yang ingin Anda cetak berisi titik (penghentian penuh atau titik) dalam namanya menggunakan titik yang sama di templat tidak akan berfungsi:

```
Instance {{ $labels.instance.name }} has been down for more than 5 minutes
```

Ini karena template mencoba menggunakan bidang yang tidak ada yang dipanggil`name`. `$labels.instance` Anda sebaiknya menggunakan `index` fungsi, yang mencetak label `instance.name` dalam `$labels` variabel:

```
Instance {{ index $labels "instance.name" }} has been down for more than 5 minutes
```

**Variabel nilai**

`$value`Variabel bekerja berbeda dari Prometheus. Dalam `$value` Prometheus adalah nomor floating point yang berisi nilai ekspresi, tetapi di Grafana itu adalah string yang berisi label dan nilai dari semua ekspresi Ambang, Kurangi dan Matematika, dan Kondisi Klasik untuk aturan peringatan ini. Ini tidak berisi hasil kueri, karena ini dapat kembali dari 10 hingga 10.000 baris atau metrik.

Jika Anda menggunakan `$value` variabel dalam ringkasan peringatan:

```
{{ $labels.service }} has over 5% of responses with 5xx errors: {{ $value }})
```

Ringkasannya mungkin terlihat seperti berikut:

```
api has an over 5% of responses with 5xx errors: [ var='B' labels={service=api} value=6.789 ]
```

Di sini `var='B'` mengacu pada ekspresi dengan RefiD B. Di Grafana, semua kueri dan ekspresi diidentifikasi oleh ReFID yang mengidentifikasi setiap kueri dan ekspresi dalam aturan peringatan. Demikian pula `labels={service=api}` mengacu pada label, dan `value=6.789` mengacu pada nilai.

Anda mungkin telah mengamati bahwa tidak ada ReFID A. Itu karena di sebagian besar aturan peringatan ReFID A mengacu pada kueri, dan karena kueri dapat mengembalikan banyak baris atau deret waktu mereka tidak termasuk dalam. `$value`

**Variabel nilai**

Jika `$value` variabel berisi lebih banyak informasi daripada yang Anda butuhkan, Anda dapat mencetak label dan nilai ekspresi individu menggunakan`$values`. Tidak seperti`$value`, `$values` variabel adalah tabel objek yang berisi label dan nilai floating point dari setiap ekspresi, diindeks oleh ReFID mereka.

Jika Anda mencetak nilai ekspresi dengan ReFID `B` dalam ringkasan peringatan:

```
{{ $labels.service }} has over 5% of responses with 5xx errors: {{ $values.B }}%
```

Ringkasan hanya akan berisi nilai:

```
api has an over 5% of responses with 5xx errors: 6.789%
```

Namun, saat `{{ $values.B }}` mencetak angka 6.789, itu sebenarnya adalah string karena Anda mencetak objek yang berisi label dan nilai untuk RefiD B, bukan nilai floating point B. Untuk menggunakan nilai floating point dari RefiD B Anda harus menggunakan bidang dari. `Value` `$values.B` Jika Anda memanusiakan nilai floating point dalam ringkasan peringatan:

```
{{ $labels.service }} has over 5% of responses with 5xx errors: {{ humanize $values.B.Value }}%
```

**Tidak ada data, kesalahan runtime, dan batas waktu**

Jika kueri dalam aturan peringatan Anda tidak mengembalikan data, atau gagal karena kesalahan sumber data atau batas waktu, maka ekspresi Threshold, Reduce atau Math apa pun yang menggunakan kueri itu juga tidak akan mengembalikan data atau kesalahan. Ketika ini terjadi ungkapan ini akan absen dari`$values`. Merupakan praktik yang baik untuk memeriksa apakah ReFID ada sebelum menggunakannya karena jika tidak, template Anda akan rusak jika kueri Anda tidak mengembalikan data atau kesalahan. Anda dapat melakukan ini menggunakan pernyataan if:

```
{{ if $values.B }}{{ $labels.service }} has over 5% of responses with 5xx errors: {{ humanizePercentage $values.B.Value }}{{ end }}
```

## Kondisi Klasik
<a name="v9-alerting-explore-labels-templating-classic"></a>

Jika aturan menggunakan Classic Conditions bukan Threshold, Reduce dan Math ekspresi, maka `$values` variabel diindeks oleh kedua ID Ref dan posisi kondisi dalam Kondisi Klasik. Misalnya, jika Anda memiliki Kondisi Klasik dengan ReFID B yang berisi dua kondisi, maka `$values` akan berisi dua kondisi `B0` dan. `B1`

```
The first condition is {{ $values.B0 }}, and the second condition is {{ $values.B1 }}
```

## Fungsi
<a name="v9-alerting-explore-labels-templating-functions"></a>

Fungsi-fungsi berikut juga tersedia saat memperluas label dan anotasi:

**args**

`args`Fungsi menerjemahkan daftar objek ke peta dengan kunci arg0, arg1 dll Ini dimaksudkan untuk memungkinkan beberapa argumen diteruskan ke template.

**Contoh**

```
{{define "x"}}{{.arg0}} {{.arg1}}{{end}}{{template "x" (args 1 "2")}}
```

```
1 2
```

**URL eksternal**

`externalURL`Fungsi mengembalikan URL eksternal dari server Grafana seperti yang dikonfigurasi dalam file ini (s).

**Contoh**

```
{{ externalURL }}
```

```
https://example.com/grafana
```

**GraphLink**

`graphLink`Fungsi mengembalikan path ke tampilan grafis [Jelajahi di Grafana versi 9](v9-explore.md) untuk ekspresi yang diberikan dan sumber data.

**Contoh**

```
{{ graphLink "{\"expr\": \"up\", \"datasource\": \"gdev-prometheus\"}" }}
```

```
/explore?left=["now-1h","now","gdev-prometheus",{"datasource":"gdev-prometheus","expr":"up","instant":false,"range":true}]
```

**memanusiakan**

`humanize`Fungsi memanusiakan angka desimal.

**Contoh**

```
{{ humanize 1000.0 }}
```

```
1k
```

**manusia1024**

`humanize1024`Karya-karya yang mirip dengan `humanize` tetapi menggunakan 1024 sebagai basis daripada 1000.

**Contoh**

```
{{ humanize1024 1024.0 }}
```

```
1ki
```

**HumanizeUrasi**

`humanizeDuration`Fungsi memanusiakan durasi dalam hitungan detik.

**Contoh**

```
{{ humanizeDuration 60.0 }}
```

```
1m 0s
```

**HumanizePersentase**

`humanizePercentage`Fungsi memanusiakan nilai rasio terhadap persentase.

**Contoh**

```
{{ humanizePercentage 0.2 }}
```

```
20%
```

**HumanizeTimestamp**

`humanizeTimestamp`Fungsi ini memanusiakan stempel waktu Unix.

**Contoh**

```
{{ humanizeTimestamp 1577836800.0 }}
```

```
2020-01-01 00:00:00 +0000 UTC
```

**pertandingan**

`match`Fungsi ini cocok dengan teks terhadap pola ekspresi reguler.

**Contoh**

```
{{ match "a.*" "abc" }}
```

```
true
```

**PathPrefix**

`pathPrefix`Fungsi mengembalikan path dari server Grafana seperti yang dikonfigurasi dalam file ini (s).

**Contoh**

```
{{ pathPrefix }}
```

```
/grafana
```

**TableLink**

`tableLink`Fungsi mengembalikan path ke tampilan tabular [Jelajahi di Grafana versi 9](v9-explore.md) untuk ekspresi yang diberikan dan sumber data.

**Contoh**

```
{{ tableLink "{\"expr\": \"up\", \"datasource\": \"gdev-prometheus\"}" }}
```

```
/explore?left=["now-1h","now","gdev-prometheus",{"datasource":"gdev-prometheus","expr":"up","instant":true,"range":false}]
```

**judul**

`title`Fungsi ini mengkapitalisasi karakter pertama dari setiap kata.

**Contoh**

```
{{ title "hello, world!" }}
```

```
Hello, World!
```

**ToLower**

`toLower`Fungsi mengembalikan semua teks dalam huruf kecil.

**Contoh**

```
{{ toLower "Hello, world!" }}
```

```
hello, world!
```

**TouPper**

`toUpper`Fungsi mengembalikan semua teks dalam huruf besar.

**Contoh**

```
{{ toUpper "Hello, world!" }}
```

```
HELLO, WORLD!
```

**reReplaceAll**

`reReplaceAll`Fungsi menggantikan teks yang cocok dengan ekspresi reguler.

**Contoh**

```
{{ reReplaceAll "localhost:(.*)" "example.com:$1" "localhost:8080" }}
```

```
example.com:8080
```

# Keadaan dan kesehatan aturan peringatan
<a name="v9-alerting-explore-state"></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)

Keadaan dan kesehatan aturan peringatan membantu Anda memahami beberapa indikator status utama tentang peringatan Anda.

Ada tiga komponen utama: *status aturan peringatan, status* *instance peringatan*, dan *kesehatan aturan peringatan*. Meskipun terkait, setiap komponen menyampaikan informasi yang sedikit berbeda.

**Status aturan peringatan**

Aturan peringatan dapat berada di salah satu dari status berikut:


| Status | Deskripsi | 
| --- | --- | 
|  Normal  |  Tak satu pun dari deret waktu yang dikembalikan oleh mesin evaluasi dalam `Firing` keadaan `Pending` atau.  | 
|  Tertunda  |  Setidaknya satu deret waktu yang dikembalikan oleh mesin evaluasi adalah`Pending`.  | 
|  Menembak  |  Setidaknya satu deret waktu yang dikembalikan oleh mesin evaluasi adalah`Firing`.  | 

**catatan**  
Peringatan akan bertransisi pertama ke `pending` dan kemudian`firing`, sehingga akan membutuhkan setidaknya dua siklus evaluasi sebelum peringatan diaktifkan.

**Status contoh peringatan**

Instance peringatan dapat berada di salah satu dari status berikut:


| Status | Deskripsi | 
| --- | --- | 
|  Normal  |  Keadaan peringatan yang tidak menembak atau tertunda, semuanya berfungsi dengan benar.  | 
|  Tertunda  |  Status peringatan yang telah aktif kurang dari durasi ambang batas yang dikonfigurasi.  | 
|  Peringatan  |  Status peringatan yang telah aktif lebih lama dari durasi ambang batas yang dikonfigurasi.  | 
|  NoData  |  Tidak ada data yang diterima untuk jendela waktu yang dikonfigurasi.  | 
|  Kesalahan  |  Kesalahan yang terjadi saat mencoba mengevaluasi aturan peringatan.  | 

**Peringatan aturan kesehatan**

Aturan peringatan dapat memiliki satu status kesehatan berikut:


| Status | Deskripsi | 
| --- | --- | 
|  Oke  |  Tidak ada kesalahan saat mengevaluasi aturan peringatan.  | 
|  Kesalahan  |  Terjadi kesalahan saat mengevaluasi aturan peringatan.  | 
|  NoData  |  Tidak adanya data dalam setidaknya satu deret waktu yang dikembalikan selama evaluasi aturan.  | 

**Peringatan khusus untuk `NoData` dan `Error`**

Saat evaluasi aturan peringatan menghasilkan status `NoData` atau`Error`, Grafana Alerting akan menghasilkan instance peringatan yang memiliki label tambahan berikut:


| Label | Deskripsi | 
| --- | --- | 
|  nama peringatan  |  Baik `DatasourceNoData` atau `DatasourceError` tergantung pada negara.  | 
|  datasource\$1uid  |  UID dari sumber data yang menyebabkan negara.  | 

Anda dapat menangani peringatan ini dengan cara yang sama seperti peringatan biasa dengan menambahkan keheningan, rute ke titik kontak, dan sebagainya.

# Titik kontak
<a name="v9-alerting-explore-contacts"></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 titik kontak untuk menentukan bagaimana kontak Anda diberi tahu saat aturan peringatan diaktifkan. Titik kontak dapat memiliki satu atau lebih jenis titik kontak, misalnya, email, Slack, webhook, dan sebagainya. Ketika aturan peringatan diaktifkan, pemberitahuan dikirim ke semua jenis titik kontak yang terdaftar untuk titik kontak. Titik kontak dapat dikonfigurasi untuk Grafana Alertmanager serta manajer peringatan eksternal.

Anda juga dapat menggunakan template notifikasi untuk menyesuaikan pesan notifikasi untuk jenis titik kontak.

**Jenis titik kontak yang didukung**

Tabel berikut mencantumkan jenis titik kontak yang didukung oleh Grafana.


| Nama | Tipe | 
| --- | --- | 
|  Amazon SNS  |  `sns`  | 
|  OpsGenie  |  `opsgenie`  | 
|  Tugas Pager  |  `pagerduty`  | 
|  Slack  |  `slack`  | 
|  VictorOps  |  `victorops`  | 

Untuk informasi lebih lanjut tentang titik kontak, lihat [Bekerja dengan titik kontak](v9-alerting-contact-points.md) dan[Sesuaikan notifikasi](v9-alerting-notifications.md).

# Notifikasi
<a name="v9-alerting-explore-notifications"></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)

Grafana menggunakan Alertmanagers untuk mengirim notifikasi untuk mengaktifkan dan menyelesaikan peringatan. [Grafana memiliki Alertmanager sendiri, disebut sebagai “Grafana” di antarmuka pengguna, tetapi juga mendukung pengiriman pemberitahuan dari Alertmanager lain juga, seperti Prometheus Alertmanager.](https://prometheus.io/docs/alerting/latest/alertmanager/) Grafana Alertmanager menggunakan kebijakan notifikasi dan titik kontak untuk mengonfigurasi bagaimana dan di mana pemberitahuan dikirim; seberapa sering pemberitahuan harus dikirim; dan apakah semua peringatan harus dikirim dalam pemberitahuan yang sama, dikirim dalam pemberitahuan yang dikelompokkan berdasarkan kumpulan label, atau sebagai pemberitahuan terpisah.

## Kebijakan pemberitahuan
<a name="v9-alerting-explore-notifications-policies"></a>

Kebijakan notifikasi mengontrol kapan dan di mana notifikasi dikirim. Kebijakan notifikasi dapat memilih untuk mengirim semua peringatan bersama-sama dalam pemberitahuan yang sama, mengirim peringatan dalam pemberitahuan yang dikelompokkan berdasarkan kumpulan label, atau mengirim peringatan sebagai pemberitahuan terpisah. Anda dapat mengonfigurasi setiap kebijakan notifikasi untuk mengontrol seberapa sering pemberitahuan harus dikirim serta memiliki satu atau lebih waktu bisu untuk menghambat pemberitahuan pada waktu-waktu tertentu dalam sehari dan pada hari-hari tertentu dalam seminggu.

Kebijakan pemberitahuan diatur dalam struktur pohon di mana pada akar pohon ada kebijakan pemberitahuan yang disebut kebijakan root. Hanya ada satu kebijakan root dan kebijakan root tidak dapat dihapus.

Kebijakan perutean khusus adalah turunan dari kebijakan root dan dapat digunakan untuk mencocokkan semua peringatan atau subset peringatan berdasarkan sekumpulan label yang cocok. Kebijakan notifikasi cocok dengan peringatan ketika label yang cocok cocok dengan label dalam peringatan.

Kebijakan perutean tertentu dapat memiliki kebijakan turunannya sendiri, yang disebut kebijakan bersarang, yang memungkinkan pencocokan peringatan tambahan. Contoh kebijakan perutean tertentu dapat mengirimkan peringatan infrastruktur ke tim Ops; sementara kebijakan anak mungkin mengirim peringatan prioritas tinggi ke Pagerduty dan peringatan prioritas rendah ke Slack.

Semua peringatan, terlepas dari labelnya, cocok dengan kebijakan root. Namun, ketika kebijakan root menerima peringatan, kebijakan perutean akan melihat setiap kebijakan perutean tertentu dan mengirimkan peringatan ke kebijakan perutean spesifik pertama yang cocok dengan peringatan tersebut. Jika kebijakan perutean tertentu memiliki kebijakan turunan lebih lanjut, maka kebijakan tersebut dapat mencoba mencocokkan peringatan dengan salah satu kebijakan bersarangnya. Jika tidak ada kebijakan bersarang yang cocok dengan peringatan maka kebijakan perutean tertentu adalah kebijakan yang cocok. Jika tidak ada kebijakan perutean tertentu, atau tidak ada kebijakan perutean tertentu yang cocok dengan peringatan, maka kebijakan root adalah kebijakan yang cocok.

## Titik kontak
<a name="v9-alerting-explore-notifications-contacts"></a>

Titik kontak berisi konfigurasi untuk mengirim pemberitahuan. Titik kontak adalah daftar integrasi, yang masing-masing mengirimkan pemberitahuan ke alamat email, layanan, atau URL tertentu. Titik kontak dapat memiliki beberapa integrasi dari jenis yang sama, atau kombinasi integrasi dari berbagai jenis. Misalnya, titik kontak dapat berisi integrasi Pager Duty; Pager Duty dan integrasi Slack; atau integrasi Pager Duty, integrasi Slack, dan dua integrasi Amazon SNS. Anda juga dapat mengonfigurasi titik kontak tanpa integrasi; dalam hal ini tidak ada pemberitahuan yang dikirim.

Titik kontak tidak dapat mengirim pemberitahuan sampai telah ditambahkan ke kebijakan pemberitahuan. Kebijakan pemberitahuan hanya dapat mengirim peringatan ke satu titik kontak, tetapi titik kontak dapat ditambahkan ke sejumlah kebijakan pemberitahuan secara bersamaan. Ketika peringatan cocok dengan kebijakan notifikasi, peringatan dikirim ke titik kontak dalam kebijakan notifikasi tersebut, yang kemudian mengirimkan pemberitahuan ke setiap integrasi dalam konfigurasinya.

**catatan**  
Untuk informasi tentang integrasi yang didukung untuk titik kontak, lihat[Titik kontak](v9-alerting-explore-contacts.md).

## Pemberitahuan Templating
<a name="v9-alerting-explore-notifications-templating"></a>

Anda dapat menyesuaikan notifikasi dengan templat. Misalnya, template dapat digunakan untuk mengubah judul dan pesan notifikasi yang dikirim ke Slack.

Template tidak terbatas pada integrasi individu atau titik kontak, tetapi dapat digunakan dalam sejumlah integrasi di titik kontak yang sama dan bahkan integrasi di berbagai titik kontak. Misalnya, pengguna Grafana dapat membuat template yang disebut `custom_subject_or_title` dan menggunakannya untuk subjek templating di Pager Duty dan judul pesan Slack tanpa harus membuat dua templat terpisah.

Semua template notifikasi ditulis dalam [bahasa template Go](https://pkg.go.dev/text/template), dan berada di tab Titik kontak di halaman Peringatan.

## Keheningan
<a name="v9-alerting-explore-notifications-silences"></a>

Anda dapat menggunakan keheningan untuk membisukan notifikasi dari satu atau beberapa aturan penembakan. Keheningan tidak menghentikan peringatan agar tidak ditembakkan atau diselesaikan, atau menyembunyikan peringatan penembakan di antarmuka pengguna. Keheningan berlangsung selama durasinya yang dapat dikonfigurasi dalam hitungan menit, jam, hari, bulan atau tahun.

# 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.

# Memigrasi peringatan dasbor klasik ke peringatan Grafana
<a name="v9-alerting-use-grafana-alerts"></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)

Ruang kerja yang memilih untuk tidak menggunakan peringatan Grafana, gunakan peringatan dasbor klasik. Untuk beralih ke peringatan Grafana baru, Anda harus ikut serta dalam fitur tersebut.

Anda dapat mengonfigurasi instans Grafana Terkelola Amazon untuk menggunakan peringatan Grafana menggunakan API Grafana yang Dikelola Amazon Konsol Manajemen AWS, AWS CLI atau Amazon. Untuk detail tentang cara mengonfigurasi Grafana Terkelola Amazon, termasuk mengaktifkan atau menonaktifkan peringatan Grafana, lihat. [Konfigurasikan ruang kerja Grafana yang Dikelola Amazon](AMG-configure-workspace.md)

**catatan**  
Saat menggunakan peringatan Grafana, aturan peringatan yang ditentukan di Grafana, bukan di Prometheus, kirim beberapa pemberitahuan ke titik kontak Anda. Jika Anda menggunakan peringatan Grafana asli, kami sarankan Anda tetap menggunakan peringatan dasbor klasik dan tidak mengaktifkan fitur peringatan Grafana baru. Jika Anda ingin melihat Peringatan yang ditentukan dalam sumber data Prometheus Anda, maka kami sarankan Anda mengaktifkan Peringatan Grafana, yang hanya mengirimkan satu pemberitahuan untuk peringatan yang dibuat di Prometheus Alertmanager.  
Batasan ini telah dihapus di ruang kerja Grafana Terkelola Amazon yang mendukung Grafana v10.4 dan yang lebih baru.

## Bermigrasi ke sistem peringatan Grafana
<a name="v9-alerting-use-grafana-alerts-opt-in"></a>

Saat peringatan Grafana diaktifkan, peringatan dasbor klasik yang ada bermigrasi dalam format yang kompatibel dengan peringatan Grafana. Di halaman Peringatan instans Grafana Anda, Anda dapat melihat peringatan yang dimigrasi bersama peringatan baru. Dengan peringatan Grafana, aturan peringatan yang dikelola Grafana Anda mengirim beberapa notifikasi, bukan satu peringatan saat dicocokkan.

Akses baca dan tulis ke lansiran dasbor klasik dan peringatan Grafana diatur oleh izin folder yang menyimpannya. Selama migrasi, izin peringatan dasbor klasik dicocokkan dengan izin aturan baru sebagai berikut:
+ Jika dasbor peringatan asli memiliki izin, migrasi akan membuat folder bernama dengan format ini `Migrated {"dashboardUid": "UID", "panelId": 1, "alertId": 1}` agar sesuai dengan izin dasbor asli (termasuk izin yang diwariskan dari folder).
+ Jika tidak ada izin dasbor dan dasbor berada di bawah folder, maka aturan tersebut ditautkan ke folder ini dan mewarisi izinnya.
+ Jika tidak ada izin dasbor dan dasbor berada di bawah folder Umum, maka aturan tersebut ditautkan ke folder General Alerting, dan aturan mewarisi izin default.

**catatan**  
Karena tidak ada `Keep Last State` opsi untuk `NoData` peringatan Grafana, opsi ini menjadi `NoData` selama migrasi aturan klasik. Opsi `Keep Last State` untuk `Error` penanganan dimigrasikan ke opsi `Error` baru. Untuk mencocokkan perilaku`Keep Last State`, dalam kedua kasus, selama migrasi Grafana yang Dikelola Amazon secara otomatis membuat keheningan untuk setiap aturan peringatan dengan durasi satu tahun.

Saluran notifikasi dimigrasikan ke konfigurasi Alertmanager dengan rute dan penerima yang sesuai. Saluran pemberitahuan default ditambahkan sebagai titik kontak ke rute default. Saluran pemberitahuan yang tidak terkait dengan peringatan Dasbor apa pun masuk ke `autogen-unlinked-channel-recv` rute.

### Batasan
<a name="v9-alerting-use-grafana-alerts-limitations"></a>
+ Sistem peringatan Grafana dapat mengambil aturan dari semua sumber data Prometheus, Loki, dan Alertmanager yang tersedia. Mungkin tidak dapat mengambil aturan peringatan dari sumber data lain yang didukung.
+ Migrasi bolak-balik antara peringatan Grafana dan peringatan dasbor klasik dapat mengakibatkan hilangnya data untuk fitur yang didukung dalam satu sistem, tetapi tidak yang lain.
**catatan**  
Jika Anda bermigrasi kembali ke peringatan dasbor klasik, Anda kehilangan semua perubahan yang dibuat pada konfigurasi peringatan yang dibuat saat peringatan Grafana diaktifkan, termasuk aturan peringatan baru yang dibuat.

# Kelola aturan peringatan Anda
<a name="v9-alerting-managerules"></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)

Aturan peringatan adalah seperangkat kriteria evaluasi yang menentukan apakah peringatan akan menyala. Aturan peringatan terdiri dari satu atau lebih pertanyaan dan ekspresi, kondisi, frekuensi evaluasi, dan secara opsional, durasi di mana kondisi terpenuhi.

Sementara kueri dan ekspresi memilih kumpulan data untuk dievaluasi, kondisi menetapkan ambang batas yang harus dipenuhi atau dilampaui peringatan untuk membuat peringatan. Interval menentukan seberapa sering aturan peringatan dievaluasi. Durasi, ketika dikonfigurasi, menunjukkan berapa lama suatu kondisi harus dipenuhi. Aturan peringatan juga dapat menentukan perilaku peringatan tanpa adanya data.

**catatan**  
Aturan peringatan terkelola Grafana hanya dapat diedit atau dihapus oleh pengguna dengan izin Edit untuk folder yang menyimpan aturan.  
Aturan peringatan untuk instans Grafana Mimir atau Loki eksternal dapat diedit atau dihapus oleh pengguna dengan peran Editor atau Admin.

**Topics**
+ [Membuat aturan peringatan terkelola Grafana](v9-alerting-managerules-grafana.md)
+ [Membuat aturan peringatan terkelola Grafana Mimir atau Loki](v9-alerting-managerules-mimir-loki.md)
+ [Membuat aturan perekaman terkelola Grafana Mimir atau Loki](v9-alerting-managerules-mimir-loki-recording.md)
+ [Grafana Mimir atau grup aturan Loki dan ruang nama](v9-alerting-managerules-mimir-loki-groups.md)
+ [Melihat dan mengedit aturan peringatan](v9-alerting-managerules-view-edit.md)

# Membuat aturan peringatan terkelola Grafana
<a name="v9-alerting-managerules-grafana"></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)

Grafana memungkinkan Anda membuat aturan peringatan yang menanyakan satu atau lebih sumber data, mengurangi atau mengubah hasil dan membandingkannya satu sama lain atau dengan ambang batas tetap. Saat ini dijalankan, Grafana mengirimkan notifikasi ke titik kontak.

**Untuk menambahkan aturan terkelola Grafana**

1. Dari konsol Grafana Anda, di menu Grafana, pilih ikon **Peringatan (bel) untuk membuka halaman Peringatan yang mencantumkan** **peringatan** yang ada.

1. Pilih **Aturan peringatan baru**.

1. Pada **Langkah 1**, tambahkan nama aturan, jenis dan lokasi penyimpanan, sebagai berikut:
   + Dalam **nama Aturan**, tambahkan nama deskriptif. Nama ini ditampilkan dalam daftar aturan peringatan. Ini juga merupakan `alertname` label untuk setiap instance peringatan yang dibuat dari aturan ini.
   + **Dari tarik-turun **Jenis aturan**, pilih Grafana managed alert.**
   + Dari dropdown **Folder**, pilih folder tempat Anda ingin menyimpan aturan. Jika Anda tidak memilih folder, aturan disimpan dalam `General` folder. Untuk membuat folder, pilih dropdown dan masukkan nama folder baru.

1. Pada **Langkah 2**, tambahkan kueri dan ekspresi untuk mengevaluasi.
   + Simpan nama default atau arahkan kursor ke atas dan pilih ikon edit untuk mengubah nama.
   + Untuk kueri, pilih sumber data dari dropdown.
   + Tambahkan satu atau beberapa [kueri atau ekspresi](v9-panels-query-xform-expressions.md).
   + Untuk setiap ekspresi, pilih salah satu **kondisi Klasik** untuk membuat aturan peringatan tunggal, atau pilih dari opsi **Matematika**, **Kurangi**, **Sampel ulang** untuk menghasilkan peringatan terpisah untuk setiap seri. Untuk detail tentang opsi ini, lihat[Aturan tunggal dan multidimensi](#v9-alerting-single-multi-rule).
   + Pilih **Jalankan kueri** untuk memverifikasi bahwa kueri berhasil.

1. Pada **Langkah 3**, tambahkan kondisi.
   + Dari **kondisi** tarik-turun, pilih kueri atau ekspresi untuk memulai aturan peringatan.
   + Untuk **Evaluasi setiap**, tentukan frekuensi evaluasi. Harus kelipatan 10 detik. Misalnya,`1m`,`30s`.
   + **Untuk Evaluasi** untuk, tentukan durasi kondisinya harus benar sebelum peringatan dimulai.
**catatan**  
Setelah suatu kondisi dilanggar, peringatan masuk ke `Pending` status. Jika kondisi tetap dilanggar selama durasi yang ditentukan, peringatan akan beralih ke status. `Firing` Jika tidak lagi terpenuhi, ia kembali ke `Normal` negara.
   + Di **Konfigurasikan tidak ada data dan penanganan kesalahan**, konfigurasikan perilaku peringatan jika tidak ada data. gunakan pedoman di. [Tidak menangani data atau kasus kesalahan](#v9-alerting-rule-no-data-error)
   + Pilih **Pratinjau lansiran** untuk memeriksa hasil menjalankan kueri saat ini. Pratinjau mengecualikan tidak ada data dan kondisi penanganan kesalahan.

1. Pada **Langkah 4**, tambahkan metadata tambahan yang terkait dengan aturan.
   + Tambahkan deskripsi dan ringkasan untuk menyesuaikan pesan peringatan. Gunakan pedoman di[Label dan anotasi](v9-alerting-explore-labels.md).
   + Tambahkan URL Runbook, panel, dasbor, dan peringatan IDs.
   + Tambahkan label khusus.

1. Pilih **Simpan** untuk menyimpan aturan atau **Simpan dan keluar** untuk menyimpan aturan dan kembali ke halaman **Peringatan**.

Setelah Anda membuat aturan, Anda dapat membuat pemberitahuan untuk aturan Anda. Untuk informasi selengkapnya tentang notifikasi, lihat[Mengelola notifikasi peringatan](v9-alerting-managenotifications.md).

## Aturan tunggal dan multidimensi
<a name="v9-alerting-single-multi-rule"></a>

Untuk aturan peringatan terkelola Grafana, Anda dapat membuat aturan dengan kondisi klasik atau Anda dapat membuat aturan multidimensi.

**Aturan dimensi tunggal (kondisi klasik)**

Gunakan ekspresi kondisi klasik untuk membuat aturan yang memulai peringatan tunggal ketika kondisinya terpenuhi. Untuk kueri yang mengembalikan beberapa seri, Grafana tidak melacak status peringatan setiap seri. Akibatnya, Grafana hanya mengirimkan satu peringatan bahkan ketika kondisi peringatan terpenuhi untuk beberapa seri.

Untuk informasi selengkapnya tentang cara memformat ekspresi, lihat [Ekspresi](https://grafana.com/docs/grafana/next/panels/query-a-data-source/) dalam dokumentasi *Grafana*.

**Aturan multidimensi**

Untuk menghasilkan instance peringatan terpisah untuk setiap seri yang dikembalikan dalam kueri, buat aturan multidimensi.

**catatan**  
Setiap instance peringatan yang dihasilkan oleh aturan multi-dimensi dihitung terhadap total kuota peringatan Anda. Aturan tidak dievaluasi ketika Anda mencapai kuota peringatan Anda. Untuk informasi selengkapnya tentang kuota untuk aturan multi-dimensi, lihat. [Kuota mencapai kesalahan](#v9-alerting-rule-quota-reached)

Untuk membuat beberapa instance dari satu aturan, gunakan `Math``Reduce`, atau `Resample` ekspresi untuk membuat aturan multidimensi. Sebagai contoh, Anda dapat:
+ Tambahkan `Reduce` ekspresi untuk setiap kueri ke nilai agregat dalam rentang waktu yang dipilih menjadi satu nilai. (Tidak diperlukan untuk [aturan menggunakan data numerik](v9-alerting-explore-numeric.md)).
+ Tambahkan `Math` ekspresi dengan kondisi untuk aturan. Ini tidak diperlukan jika kueri atau ekspresi pengurangan sudah mengembalikan 0 jika aturan tidak harus memulai peringatan, atau angka positif jika harus memulai peringatan. 

  Beberapa contoh: 
  + `$B > 70`jika harus memulai peringatan jika nilai B query/expression lebih dari 70. 
  + `$B < $C * 100`dalam hal itu harus memulai peringatan jika nilai B kurang dari nilai C dikalikan dengan 100. Jika kueri yang dibandingkan memiliki beberapa seri dalam hasilnya, seri dari kueri yang berbeda dicocokkan jika mereka memiliki label yang sama, atau satu adalah bagian dari yang lain.

**catatan**  
Grafana tidak mendukung kueri peringatan dengan variabel template. Informasi lebih lanjut tersedia di halaman komunitas [Variabel Template tidak didukung dalam kueri peringatan saat menyiapkan Peringatan](https://community.grafana.com/t/template-variables-are-not-supported-in-alert-queries-while-setting-up-alert/2514).



**Pertimbangan kinerja untuk aturan multidimensi**

Setiap instance peringatan dihitung terhadap kuota peringatan. Aturan multidimensi yang membuat lebih banyak instance daripada yang dapat diakomodasi dalam kuota peringatan tidak dievaluasi dan mengembalikan kesalahan kuota. Untuk informasi selengkapnya, lihat [Kuota mencapai kesalahan](#v9-alerting-rule-quota-reached).

Peringatan multidimensi dapat berdampak tinggi pada kinerja ruang kerja Grafana Anda, serta kinerja sumber data Anda saat Grafana menanyakannya untuk mengevaluasi aturan peringatan Anda. Pertimbangan berikut dapat membantu saat Anda mencoba mengoptimalkan kinerja sistem pemantauan Anda.
+ **Frekuensi evaluasi aturan — Evaluasi** **Setiap** properti dari aturan peringatan mengontrol frekuensi evaluasi aturan. Kami merekomendasikan menggunakan frekuensi evaluasi terendah yang dapat diterima. 
+ **Hasil set kardinalitas** — Jumlah instance peringatan yang Anda buat dengan aturan memengaruhi kinerjanya. Misalkan Anda memantau kesalahan respons API untuk setiap jalur API, di setiap VM di armada Anda. Set ini memiliki kardinalitas jumlah jalur dikalikan dengan jumlah. VMs Anda dapat mengurangi kardinalitas set hasil, misalnya, dengan memantau kesalahan total per VM, bukan per jalur per VM.
+ **Kompleksitas kueri — Kueri** yang sumber data dapat memproses dan merespons dengan cepat mengkonsumsi lebih sedikit sumber daya. Meskipun pertimbangan ini kurang penting daripada pertimbangan lain yang tercantum di atas, jika Anda telah menguranginya sebanyak mungkin, melihat kinerja kueri individu dapat membuat perbedaan. Anda juga harus menyadari dampak kinerja yang mengevaluasi aturan ini terhadap sumber data Anda. Kueri peringatan seringkali merupakan sebagian besar kueri yang ditangani oleh database pemantauan, jadi faktor beban yang sama yang memengaruhi instance Grafana juga memengaruhi mereka.

## Kuota mencapai kesalahan
<a name="v9-alerting-rule-quota-reached"></a>

Ada kuota untuk jumlah instance peringatan yang dapat Anda miliki dalam satu ruang kerja. Ketika Anda mencapai nomor itu, Anda tidak dapat lagi membuat aturan peringatan baru di ruang kerja itu. Dengan peringatan multidimensi, jumlah instance peringatan dapat bervariasi dari waktu ke waktu.

Berikut ini penting untuk diingat saat bekerja dengan instance peringatan.
+ Jika Anda hanya membuat aturan satu dimensi, setiap aturan adalah contoh peringatan tunggal. Anda dapat membuat jumlah aturan yang sama dalam satu ruang kerja dengan kuota instans peringatan, dan tidak lebih.
+ Aturan multidimensi membuat beberapa contoh peringatan, namun jumlahnya tidak diketahui sampai dievaluasi. Misalnya, jika Anda membuat aturan peringatan yang melacak penggunaan CPU instans Amazon EC2 Anda, mungkin ada 50 instans EC2 saat Anda membuatnya (dan karenanya 50 instans peringatan), tetapi jika Anda menambahkan 10 instans EC2 lagi seminggu kemudian, evaluasi berikutnya memiliki 60 instance peringatan.

  Jumlah instans peringatan dievaluasi ketika Anda membuat peringatan multidimensi, dan Anda tidak dapat membuat satu yang segera menempatkan Anda di atas kuota instance peringatan Anda. Karena jumlah instans peringatan dapat berubah, kuota Anda akan diperiksa setiap kali aturan Anda dievaluasi.
+ Pada waktu evaluasi aturan, jika aturan menyebabkan Anda melampaui kuota untuk instance peringatan, aturan tersebut tidak dievaluasi hingga pembaruan dibuat pada aturan peringatan yang membawa jumlah total instance peringatan di bawah kuota layanan. Ketika ini terjadi, Anda menerima pemberitahuan peringatan yang memberi tahu Anda bahwa kuota Anda telah tercapai (notifikasi menggunakan kebijakan notifikasi untuk aturan yang sedang dievaluasi). Pemberitahuan mencakup `Error` anotasi dengan nilai`QuotaReachedError`.
+ Aturan yang menyebabkan `QuotaReachedError` berhenti dievaluasi. Evaluasi hanya dilanjutkan ketika pembaruan dilakukan dan evaluasi setelah pembaruan tidak sendiri menyebabkan a. `QuotaReachedError` Aturan yang tidak dievaluasi menunjukkan kesalahan **Kuota yang dicapai** di konsol Grafana.
+ Anda dapat menurunkan jumlah instance peringatan dengan menghapus aturan peringatan, atau dengan mengedit peringatan multidimensi agar lebih sedikit instance peringatan (misalnya, dengan memiliki satu peringatan tentang kesalahan per VM, daripada satu peringatan tentang kesalahan per API di VM).
+ Untuk melanjutkan evaluasi, perbarui peringatan dan simpan. Anda dapat memperbaruinya untuk menurunkan jumlah instance peringatan, atau jika Anda telah membuat perubahan lain untuk menurunkan jumlah instance peringatan, Anda dapat menyimpannya tanpa perubahan. Jika bisa dilanjutkan, memang begitu. Jika itu menyebabkan yang lain`QuotaReachedError`, Anda tidak dapat menyimpannya.
+ Ketika peringatan disimpan dan melanjutkan evaluasi tanpa melewati kuota peringatan, kesalahan **Kuota tercapai** dapat terus ditampilkan di konsol Grafana untuk beberapa waktu (hingga interval evaluasinya), namun, evaluasi aturan peringatan akan dimulai dan peringatan dikirim jika ambang batas aturan terpenuhi.
+ Untuk detail tentang kuota peringatan, serta kuota lainnya, lihat. [Kuota layanan Grafana yang Dikelola Amazon](AMG_quotas.md)

## Tidak menangani data atau kasus kesalahan
<a name="v9-alerting-rule-no-data-error"></a>

Pilih opsi untuk cara menangani perilaku peringatan jika tidak ada data atau ketika ada kesalahan.

Opsi untuk menangani tidak ada data tercantum dalam tabel berikut.


| Tidak ada opsi Data | Perilaku | 
| --- | --- | 
|  Tidak ada Data  |  Buat peringatan `DatasourceNoData` dengan nama dan UID aturan peringatan, dan UID sumber data yang tidak mengembalikan data sebagai label.  | 
|  Peringatan  |  Tetapkan status aturan peringatan ke`Alerting`.  | 
|  OK  |  Tetapkan status aturan peringatan ke`Normal`.  | 

Opsi untuk menangani kasus kesalahan tercantum dalam tabel berikut.


| Opsi kesalahan atau batas waktu | Perilaku | 
| --- | --- | 
|  Peringatan  |  Tetapkan status aturan peringatan ke `Alerting`  | 
|  OK  |  Tetapkan status aturan peringatan ke `Normal`  | 
|  Kesalahan  |  Buat peringatan `DatasourceError` dengan nama dan UID aturan peringatan, dan UID sumber data yang tidak mengembalikan data sebagai label.  | 

# Membuat aturan peringatan terkelola Grafana Mimir atau Loki
<a name="v9-alerting-managerules-mimir-loki"></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)

Menggunakan Grafana, Anda dapat membuat aturan peringatan untuk instance Grafana Mimir atau Loki eksternal.

**catatan**  
Grafana Mimir dapat terhubung ke Amazon Managed Service untuk sumber data Prometheus dan Prometheus.

**Prasyarat**
+ Verifikasi bahwa Anda memiliki izin menulis ke sumber data Prometheus. Jika tidak, Anda tidak dapat membuat atau memperbarui aturan peringatan terkelola Cortex.
+ Untuk sumber data Grafana Mimir dan Loki, aktifkan API penggaris dengan mengonfigurasi layanan masing-masing.
  + **Loki** — Jenis penyimpanan `local` aturan, default untuk sumber data Loki, hanya mendukung tampilan aturan. Untuk mengedit aturan, konfigurasikan salah satu jenis penyimpanan lainnya.
  + **Grafana Mimir** — Gunakan awalan warisan, bukan. `/api/prom` `/prometheus` Sumber data Prometheus mendukung Grafana Mimir dan Prometheus, dan Grafana mengharapkan bahwa API Kueri dan API Penggaris berada di bawah URL yang sama. Anda tidak dapat memberikan URL terpisah untuk Ruler API.

**catatan**  
**Jika Anda tidak ingin mengelola aturan peringatan untuk sumber data Loki atau Prometheus tertentu, buka pengaturannya dan hapus kotak centang Kelola peringatan melalui UI Peringatan.**

**Untuk menambahkan aturan peringatan terkelola Grafana Mimir atau Loki**

1. Dari konsol Grafana Anda, di menu Grafana, pilih ikon **Peringatan (bel) untuk membuka halaman Peringatan yang mencantumkan** **peringatan** yang ada.

1. Pilih **Buat aturan peringatan**.

1. Pada **Langkah 1**, pilih jenis aturan, dan detailnya, sebagai berikut:
   + Pilih peringatan **Mimir atau Loki**.
   + Dalam **nama Aturan**, tambahkan nama deskriptif. Nama ini ditampilkan dalam daftar aturan peringatan. Ini juga merupakan `alertname` label untuk setiap instance peringatan yang dibuat dari aturan ini.
   + Dari menu tarik-turun **Pilih sumber data**, pilih Prometheus, atau sumber data Loki.
   + Dari dropdown **Namespace**, pilih namespace aturan yang ada. Jika tidak, pilih **Tambahkan baru** dan masukkan nama untuk membuatnya. Ruang nama dapat berisi satu atau lebih grup aturan dan hanya memiliki tujuan organisasi. Untuk informasi selengkapnya, lihat [Grup aturan dan ruang nama Cortex atau Loki](alert-rules.md#alert-rule-groups).
   + Dari dropdown **Grup**, pilih grup yang ada dalam namespace yang dipilih. Jika tidak, pilih **Tambahkan baru** dan masukkan nama untuk membuatnya. Aturan yang baru dibuat ditambahkan ke akhir grup. Aturan dalam grup dijalankan secara berurutan pada interval reguler, dengan waktu evaluasi yang sama.

1. Pada **Langkah 2**, tambahkan kueri untuk mengevaluasi.

   Nilai dapat berupa ekspresi promQL atau logQL. Aturan memulai peringatan jika hasil evaluasi memiliki setidaknya satu seri dengan nilai yang lebih besar dari 0. Peringatan dibuat untuk setiap seri.

1. Pada **Langkah 3**, tentukan interval evaluasi peringatan.

   Dalam **Untuk** kotak teks kondisi, tentukan durasi kondisinya harus benar sebelum peringatan dimulai. Jika Anda menentukan`5m`, kondisi harus benar selama lima menit sebelum peringatan dimulai.
**catatan**  
Setelah suatu kondisi terpenuhi, peringatan masuk ke `Pending` negara. Jika kondisi tetap aktif selama durasi yang ditentukan, peringatan akan beralih ke `Firing` status. Jika tidak lagi terpenuhi, ia kembali ke `Normal` negara.

1. Pada **Langkah 4**, tambahkan metadata tambahan yang terkait dengan aturan.
   + Tambahkan deskripsi dan ringkasan untuk menyesuaikan pesan peringatan. Gunakan pedoman di[Label dan anotasi](v9-alerting-explore-labels.md).
   + Tambahkan URL Runbook, panel, dasbor, dan peringatan IDs.
   + Tambahkan label khusus.

1. Pilih **Pratinjau lansiran** untuk mengevaluasi aturan dan melihat peringatan apa yang akan dihasilkannya. Ini menampilkan daftar peringatan dengan status dan nilai masing-masing.

1. Pilih **Simpan** untuk menyimpan aturan atau **Simpan dan keluar** untuk menyimpan aturan dan kembali ke halaman **Peringatan**.

Setelah Anda membuat aturan, Anda dapat membuat pemberitahuan untuk aturan Anda. Untuk informasi selengkapnya tentang notifikasi, lihat[Mengelola notifikasi peringatan](v9-alerting-managenotifications.md).

# Membuat aturan perekaman terkelola Grafana Mimir atau Loki
<a name="v9-alerting-managerules-mimir-loki-recording"></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 membuat dan mengelola aturan perekaman untuk instans Grafana Mimir atau Loki eksternal. Aturan perekaman menghitung ekspresi yang sering dibutuhkan atau ekspresi mahal secara komputasi terlebih dahulu dan menyimpan hasilnya sebagai rangkaian waktu baru. Menanyakan deret waktu baru ini lebih cepat, terutama untuk dasbor karena mereka menanyakan ekspresi yang sama setiap kali dasbor disegarkan.

**Prasyarat**

Untuk sumber data Grafana Mimir dan Loki, aktifkan API penggaris dengan mengonfigurasi layanan masing-masing.
+ **Loki** — Jenis penyimpanan `local` aturan, default untuk sumber data Loki, hanya mendukung tampilan aturan. Untuk mengedit aturan, konfigurasikan salah satu jenis penyimpanan lainnya.
+ **Grafana Mimir** — Saat mengonfigurasi sumber data untuk menunjuk ke Grafana Mimir, gunakan awalan lama, bukan. `/api/prom` `/prometheus` Sumber data Prometheus mendukung Grafana Mimir dan Prometheus, dan Grafana mengharapkan bahwa API Kueri dan API Penggaris berada di bawah URL yang sama. Anda tidak dapat memberikan URL terpisah untuk Ruler API.

**catatan**  
**Jika Anda tidak ingin mengelola aturan peringatan untuk sumber data Loki atau Prometheus tertentu, buka pengaturannya dan hapus kotak centang Kelola peringatan melalui UI Peringatan.**

**Untuk menambahkan aturan rekaman terkelola Grafana Mimir atau Loki**

1. Dari konsol Grafana Anda, di menu Grafana, pilih ikon **Peringatan (bel) untuk membuka halaman Peringatan yang mencantumkan** **peringatan** yang ada.

1. Pilih **Buat aturan peringatan**.

1. Pada **Langkah 1**, tambahkan jenis aturan, nama aturan, dan lokasi penyimpanan, sebagai berikut.
   + Pilih opsi **aturan perekaman Mimir atau Loki**.
   + Dalam **nama Aturan**, tambahkan nama deskriptif. Nama ini ditampilkan dalam daftar aturan peringatan. Ini juga merupakan `alertname` label untuk setiap instance peringatan yang dibuat dari aturan ini.
   + Dari menu tarik-turun **Pilih sumber data**, pilih Prometheus, atau sumber data Loki.
   + Dari dropdown **Namespace**, pilih namespace aturan yang ada. Jika tidak, pilih **Tambahkan baru** dan masukkan nama untuk membuatnya. Ruang nama dapat berisi satu atau lebih grup aturan dan hanya memiliki tujuan organisasi. Untuk informasi selengkapnya, lihat [Grup aturan dan ruang nama Cortex atau Loki](alert-rules.md#alert-rule-groups).
   + Dari dropdown **Grup**, pilih grup yang ada di dalam namespace yang dipilih. Jika tidak, pilih **Tambahkan baru** dan masukkan nama untuk membuatnya. Aturan yang baru dibuat ditambahkan ke akhir grup. Aturan dalam grup dijalankan secara berurutan pada interval reguler, dengan waktu evaluasi yang sama.

1. Pada **Langkah 2**, tambahkan kueri untuk mengevaluasi.

   Nilai dapat berupa ekspresi promQL atau logQL. Aturan memulai peringatan jika hasil evaluasi memiliki setidaknya satu seri dengan nilai yang lebih besar dari 0. Peringatan dibuat untuk setiap seri.

1. Pada **Langkah 3**, tambahkan metadata tambahan yang terkait dengan aturan.
   + Tambahkan deskripsi dan ringkasan untuk menyesuaikan pesan peringatan. Gunakan pedoman di[Anotasi dan label untuk aturan peringatan](alert-rules.md#alert-rule-labels).
   + Tambahkan URL Runbook, panel, dasbor, dan peringatan IDs.
   + Tambahkan label khusus.

1. Pilih **Simpan** untuk menyimpan aturan atau **Simpan dan keluar** untuk menyimpan aturan dan kembali ke halaman **Peringatan**.

# Grafana Mimir atau grup aturan Loki dan ruang nama
<a name="v9-alerting-managerules-mimir-loki-groups"></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 mengatur aturan Anda. Aturan dibuat dalam grup aturan, dan grup aturan diatur ke dalam ruang nama. Aturan dalam kelompok aturan dijalankan secara berurutan pada interval reguler. Interval default adalah satu menit. Anda dapat mengganti nama ruang nama Grafana Mimir atau Loki dan grup aturan, dan mengedit interval evaluasi grup aturan.

**Untuk mengedit grup aturan atau namespace**

1. **Dari konsol Grafana Anda, di menu Grafana, pilih ikon **Peringatan** (bel) untuk membuka halaman Peringatan.**

1. Arahkan ke aturan dalam grup aturan atau namespace yang ingin Anda edit.

1. Pilih ikon **Edit** (pena).

1. Buat perubahan pada grup aturan atau namespace.
**catatan**  
Untuk ruang nama, Anda hanya dapat mengedit nama. Untuk grup aturan, Anda mengubah nama, atau interval evaluasi untuk aturan dalam grup. Misalnya, Anda dapat memilih `1m` agar aturan dievaluasi sekali per menit, atau `30s` mengevaluasi setiap 30 detik sekali.

1. Pilih **Simpan perubahan**.

# Melihat dan mengedit aturan peringatan
<a name="v9-alerting-managerules-view-edit"></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)

Halaman **Peringatan mencantumkan** aturan peringatan. Secara default, aturan dikelompokkan berdasarkan jenis sumber data. Bagian **Grafana mencantumkan** aturan yang dikelola oleh Grafana, dan bagian **Cortex/Loki** mencantumkan aturan untuk sumber data yang kompatibel dengan Prometheus. Anda dapat melihat aturan peringatan untuk sumber data yang kompatibel dengan Prometheus tetapi Anda tidak dapat mengeditnya.

Bagian Mimir/Cortex/Loki aturan mencantumkan semua aturan untuk sumber data Mimir, Cortex, atau Loki. Aturan peringatan cloud juga tercantum di bagian ini.

Saat mengelola volume peringatan yang besar, Anda dapat menggunakan kemampuan pencarian aturan peringatan yang diperluas untuk memfilter folder, grup evaluasi, dan aturan. Selain itu, Anda dapat memfilter aturan peringatan berdasarkan propertinya seperti label, status, jenis, dan kesehatan.

**catatan**  
Anda dapat melihat definisi kueri untuk peringatan yang disediakan, tetapi Anda tidak dapat mengeditnya. Mampu melihatnya memungkinkan Anda memverifikasi bahwa kueri dan definisi aturan Anda benar tanpa kembali ke repositori penyediaan Anda untuk definisi aturan.

## Lihat aturan peringatan
<a name="v9-alerting-managerules-view"></a>

Menggunakan peringatan Grafana, Anda dapat melihat semua peringatan Anda dalam satu halaman.

**Untuk melihat detail peringatan**

1. **Dari konsol Grafana Anda, di menu Grafana, pilih ikon **Peringatan** (bel) untuk membuka halaman Peringatan.** Secara default, aturan ditampilkan dalam grup berdasarkan tipe sumber data. Anda juga dapat melihat berdasarkan status saat ini dari setiap peringatan (ini dijelaskan secara lebih rinci dalam teks berikut).

1. Di **View as**, Anda dapat beralih antara tampilan grup dan status dengan memilih opsi yang Anda inginkan.

1. Pilih panah di sebelah baris untuk melihat detail lebih lanjut untuk baris itu. Detail untuk aturan mencakup label aturan, anotasi, sumber data, dan kueri, serta daftar instance peringatan yang dihasilkan dari aturan tersebut.

**catatan**  
Untuk informasi selengkapnya tentang memahami detail lansiran Anda, lihat[Keadaan dan kesehatan aturan peringatan](v9-alerting-explore-state.md).

**Tampilan grup**

Tampilan grup menunjukkan aturan peringatan Grafana yang dikelompokkan berdasarkan folder dan aturan peringatan Loki atau Prometheus yang dikelompokkan berdasarkan \$1. `namespace` `group` Ini adalah tampilan daftar aturan default, yang ditujukan untuk mengelola aturan. Anda dapat memperluas setiap grup untuk melihat daftar aturan dalam grup ini. Perluas aturan lebih lanjut untuk melihat detailnya. Anda juga dapat memperluas tombol tindakan dan peringatan yang dihasilkan dari aturan untuk melihat detailnya.

**Tampilan negara**

Tampilan status menunjukkan aturan peringatan yang dikelompokkan berdasarkan negara bagian. Gunakan tampilan ini untuk mendapatkan gambaran umum tentang aturan mana yang berada dalam keadaan apa. Setiap aturan dapat diperluas untuk melihat detailnya. Tombol tindakan dan peringatan apa pun yang dihasilkan oleh aturan ini, dan setiap peringatan dapat diperluas lebih lanjut untuk melihat detailnya.

**Filter aturan peringatan**

Anda dapat memfilter aturan peringatan yang muncul di halaman **Peringatan dengan** beberapa cara.
+ Anda dapat memfilter untuk menampilkan aturan yang menanyakan sumber data tertentu dengan memilih **Pilih sumber data**, lalu memilih sumber data yang akan difilter.
+ Anda dapat memfilter berdasarkan label dengan memilih kriteria pencarian di **Cari berdasarkan label**. Misalnya, Anda dapat mengetik `environment=production,region=~US|EU,severity!=warning` untuk memfilter peringatan produksi di AS dan UE.
+ Anda dapat memfilter untuk menampilkan aturan dalam keadaan tertentu dengan memilih **Menyaring peringatan menurut negara**, lalu memilih status yang ingin Anda lihat.

## Mengedit atau menghapus aturan peringatan
<a name="v9-alerting-managerules-edit"></a>

Aturan peringatan terkelola Grafana hanya dapat diedit atau dihapus oleh pengguna dengan izin Edit untuk folder yang menyimpan aturan. Aturan peringatan untuk instance Mimir atau Loki eksternal dapat diedit atau dihapus oleh pengguna dengan peran Editor atau Admin.

**Untuk mengedit atau menghapus aturan**

1. Perluas aturan hingga Anda dapat melihat kontrol aturan untuk **Lihat**, **Edit**, dan **Hapus**.

1. Pilih **Edit** untuk membuka halaman aturan buat. Buat pembaruan dengan cara yang sama seperti Anda membuat aturan. Untuk detailnya, lihat instruksi di [Membuat aturan peringatan terkelola Grafana](v9-alerting-managerules-grafana.md) atau[Membuat aturan peringatan terkelola Grafana Mimir atau Loki](v9-alerting-managerules-mimir-loki.md).

1. Secara opsional, pilih **Hapus** untuk menghapus aturan.

## Aturan peringatan ekspor
<a name="v9-alerting-managerules-export"></a>

**Anda dapat mengekspor aturan ke YAMAL atau JSON di ruang kerja Grafana, dengan memilih Ekspor.** Ini akan memberi Anda opsi untuk menentukan aturan baru, lalu mengekspornya. Anda dapat membuat aturan menggunakan UI dan kemudian mengekspornya untuk digunakan dalam API penyediaan atau skrip terraform.

**catatan**  
Ini didukung di ruang kerja Grafana dan antarmuka penyediaan.

# Mengelola notifikasi peringatan
<a name="v9-alerting-managenotifications"></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)

Memilih bagaimana, kapan, dan di mana mengirim pemberitahuan peringatan Anda adalah bagian penting dari pengaturan sistem peringatan Anda. Keputusan ini akan berdampak langsung pada kemampuan Anda untuk menyelesaikan masalah dengan cepat dan tidak melewatkan sesuatu yang penting.

Sebagai langkah pertama, tentukan *titik kontak* Anda; ke mana harus mengirim pemberitahuan peringatan Anda. Titik kontak dapat berupa serangkaian tujuan untuk pemberitahuan yang cocok. Tambahkan templat notifikasi ke titik kontak untuk digunakan kembali dan pesan yang konsisten di notifikasi Anda.

Selanjutnya, buat *kebijakan notifikasi*, yang merupakan seperangkat aturan untuk tempat, kapan, dan bagaimana peringatan Anda diarahkan ke titik kontak. Dalam kebijakan notifikasi, Anda menentukan tempat mengirim pemberitahuan peringatan dengan memilih salah satu titik kontak yang Anda buat. Tambahkan pengaturan waktu bisu ke kebijakan notifikasi Anda. *Waktu bisu* adalah interval waktu berulang di mana Anda tidak ingin pemberitahuan dikirim.

*Saat aturan peringatan dievaluasi, penggaris peringatan mengirimkan instance peringatan ke Alertmanager — satu aturan peringatan dapat memicu beberapa instance peringatan individual.*

Alertmanager menerima instance peringatan ini dan kemudian menangani pengaturan waktu bisu, mengelompokkan peringatan, dan mengirimkan pemberitahuan ke titik kontak Anda sebagaimana didefinisikan dalam kebijakan notifikasi.

**Topics**
+ [Pengelola Peringatan](v9-alerting-managenotifications-alertmanager.md)
+ [Bekerja dengan titik kontak](v9-alerting-contact-points.md)
+ [Bekerja dengan kebijakan notifikasi](v9-alerting-notification-policies.md)
+ [Sesuaikan notifikasi](v9-alerting-notifications.md)
+ [Membungkam pemberitahuan peringatan untuk sumber data Prometheus](v9-alerting-silences.md)
+ [Bisukan waktu](v9-alerting-notification-muting.md)
+ [Lihat dan filter menurut grup peringatan](v9-alerting-viewfiltergroups.md)
+ [Lihat kesalahan pemberitahuan](v9-alerting-viewnotificationerrors.md)

# Pengelola Peringatan
<a name="v9-alerting-managenotifications-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)

Alertmanager memungkinkan Anda mengelola dan merespons peringatan dengan cepat dan efisien. Ini menerima peringatan, menangani mutasi, penghambatan, pengelompokan, dan perutean dengan mengirimkan pemberitahuan melalui saluran pilihan Anda, misalnya, email atau Slack.

Di Grafana, Anda dapat menggunakan Grafana Alertmanager, atau Alertmanager eksternal. Anda juga dapat menjalankan beberapa pengelola peringatan; keputusan Anda tergantung pada pengaturan Anda dan di mana peringatan Anda dihasilkan.

**Grafana Alertmanager**

Grafana Alertmanager adalah Alertmanager internal yang telah dikonfigurasi sebelumnya dan tersedia untuk dipilih secara default jika Anda menjalankan Grafana di lokasi atau sumber terbuka.

Grafana Alertmanager dapat menerima peringatan dari Grafana, tetapi tidak dapat menerima peringatan dari luar Grafana, misalnya, dari Mimir atau Loki.

**catatan**  
Aturan penghambatan tidak didukung di Grafana Alertmanager.

**Pengelola Peringatan Eksternal**

Jika Anda ingin menggunakan satu alertmanager untuk menerima semua peringatan Grafana, Loki, Mimir, dan Prometheus Anda, Anda dapat mengatur Grafana untuk menggunakan Alertmanager eksternal. Alertmanager eksternal ini dapat dikonfigurasi dan dikelola dari dalam Grafana itu sendiri.

Berikut adalah dua contoh kapan Anda mungkin ingin mengonfigurasi manajer peringatan eksternal Anda sendiri dan mengirim peringatan Anda ke sana alih-alih Grafana Alertmanager:

1. Anda sudah memiliki pengelola peringatan di lokasi di infrastruktur Cloud Anda sendiri yang telah Anda atur dan masih ingin digunakan, karena Anda memiliki generator peringatan lain, seperti Prometheus.

1. Anda ingin menggunakan Prometheus on-premise dan Grafana yang dihosting untuk mengirim peringatan ke alertmanager yang sama yang berjalan di infrastruktur Cloud Anda.

Alertmanagers terlihat dari menu tarik-turun pada halaman Alerting Contact Points, dan Notification Policies.

Jika Anda menyediakan sumber data Anda, setel tanda `handleGrafanaManagedAlerts` di `jsonData` bidang untuk mengirim peringatan yang dikelola Grafana `true` ke Alertmanager ini.

# Bekerja dengan titik kontak
<a name="v9-alerting-contact-points"></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 titik kontak untuk menentukan bagaimana kontak Anda diberi tahu saat peringatan dimulai. Titik kontak dapat memiliki satu atau lebih integrasi titik kontak, misalnya, Amazon Simple Notification Service atau Slack. Ketika peringatan dimulai, pemberitahuan dikirim ke semua integrasi titik kontak yang terdaftar untuk titik kontak. Secara opsional, gunakan [templat notifikasi](v9-alerting-create-templates.md) untuk menyesuaikan pesan notifikasi untuk jenis titik kontak.

**catatan**  
Anda dapat membuat dan mengedit titik kontak untuk peringatan terkelola Grafana. Titik kontak untuk peringatan Alertmanager hanya bisa dibaca.

## Bekerja dengan titik kontak
<a name="v9-alerting-working-contact-points"></a>

Prosedur berikut merinci cara menambahkan, mengedit, menguji, dan menghapus titik kontak.

**Untuk menambahkan titik kontak**

1. **Dari konsol Grafana Anda, di menu Grafana, pilih ikon **Peringatan** (bel) untuk membuka halaman Peringatan.**

1. Pilih **Titik kontak**, lalu **Tambahkan titik kontak**.

1. Dari dropdown **Alertmanager**, pilih Alertmanager. Grafana Alertmanager dipilih secara default.

1. Masukkan **Nama** untuk titik kontak.

1. Dari **integrasi titik kontak**, pilih jenis, dan bidang wajib berdasarkan jenis itu. Misalnya, jika Anda memilih Slack, masukkan saluran Slack dan pengguna yang harus dihubungi.

1. Jika tersedia untuk titik kontak yang Anda pilih, pilih **Pengaturan opsional** yang diinginkan untuk menentukan pengaturan tambahan.

1. Di bawah **Pengaturan pemberitahuan**, pilih **Nonaktifkan pesan yang diselesaikan** secara opsional jika Anda tidak ingin diberi tahu saat peringatan diselesaikan.

1. Jika titik kontak Anda membutuhkan lebih banyak jenis titik kontak, Anda dapat memilih **Tambahkan integrasi titik kontak** dan ulangi langkah-langkah untuk setiap jenis titik kontak yang diperlukan.

1. Pilih **Simpan titik kontak** untuk menyimpan perubahan Anda.

**Untuk mengedit titik kontak**

1. Pilih **Titik kontak** untuk melihat daftar titik kontak yang ada.

1. Pilih titik kontak yang akan diedit, lalu pilih ikon **Edit** (pena).

1. Buat perubahan yang diperlukan, lalu pilih **Simpan titik kontak** untuk menyimpan perubahan Anda.

Setelah titik kontak Anda dibuat, Anda dapat mengirim pemberitahuan pengujian untuk memverifikasi bahwa itu dikonfigurasi dengan benar.

**Untuk mengirim pemberitahuan pengujian**

1. Pilih **Titik kontak** untuk membuka daftar titik kontak yang ada.

1. Pilih titik kontak yang akan diuji, lalu pilih ikon **Edit** (pena).

1. Pilih ikon **Uji** (paper airplane).

1. Pilih apakah akan mengirim pemberitahuan pengujian yang telah ditentukan sebelumnya atau pilih **Kustom** untuk menambahkan anotasi dan label kustom Anda sendiri dalam pemberitahuan pengujian.

1. Pilih **Kirim pemberitahuan pengujian** untuk menguji peringatan dengan titik kontak yang diberikan.

Anda dapat menghapus titik kontak yang tidak digunakan oleh kebijakan pemberitahuan.

**Untuk menghapus titik kontak**

1. Pilih **Titik kontak** untuk membuka daftar titik kontak yang ada.

1. Pilih titik kontak yang akan dihapus, lalu pilih ikon **Hapus** (tempat sampah).

1. Di kotak dialog konfirmasi, pilih **Ya, hapus**.

**catatan**  
Jika titik kontak digunakan oleh kebijakan notifikasi, Anda harus menghapus kebijakan notifikasi atau mengeditnya untuk menggunakan titik kontak yang berbeda sebelum menghapus titik kontak.

## Daftar notifier yang didukung
<a name="v9-alerting-contactpoint-supported-notifiers"></a>


|  Nama  |  Tipe  | 
| --- | --- | 
| Amazon SNS  |  sns  | 
|  OpsGenie  |  opsgenie  | 
| Tugas Pager  |  pagerduty  | 
| Slack  |  slack  | 
|  VictorOps  |  victorops  | 

# Bekerja dengan kebijakan notifikasi
<a name="v9-alerting-notification-policies"></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)

Kebijakan pemberitahuan menentukan bagaimana peringatan diarahkan ke titik kontak. Kebijakan memiliki struktur pohon, di mana setiap kebijakan dapat memiliki satu atau lebih kebijakan anak. Setiap kebijakan, kecuali kebijakan root, juga dapat mencocokkan label peringatan tertentu. Setiap peringatan dievaluasi oleh kebijakan root dan kemudian oleh setiap kebijakan anak. Jika Anda mengaktifkan `Continue matching subsequent sibling nodes` opsi untuk kebijakan tertentu, evaluasi berlanjut bahkan setelah satu atau lebih kecocokan. Pengaturan konfigurasi kebijakan induk dan informasi titik kontak mengatur perilaku peringatan yang tidak cocok dengan kebijakan turunan mana pun. Kebijakan root mengatur peringatan apa pun yang tidak cocok dengan kebijakan tertentu.

**catatan**  
Anda dapat membuat dan mengedit kebijakan notifikasi untuk lansiran terkelola Grafana. Kebijakan pemberitahuan untuk peringatan Alertmanager hanya bisa dibaca.

**Pemberitahuan pengelompokan**

Pengelompokan mengkategorikan notifikasi peringatan yang sifatnya serupa ke dalam satu corong. Ini memungkinkan Anda untuk mengontrol pemberitahuan peringatan selama pemadaman yang lebih besar ketika banyak bagian dari sistem gagal sekaligus menyebabkan sejumlah besar peringatan dimulai secara bersamaan.

**Contoh pengelompokan**

Misalkan Anda memiliki 100 layanan yang terhubung ke database di lingkungan yang berbeda. Layanan ini dibedakan oleh label`env=environmentname`. Aturan peringatan ada untuk memantau apakah layanan Anda dapat mencapai database. Aturan peringatan membuat peringatan bernama`alertname=DatabaseUnreachable`.

Jika partisi jaringan terjadi, di mana setengah dari layanan Anda tidak dapat lagi mencapai database, 50 peringatan berbeda dimulai. Untuk situasi ini, Anda ingin menerima pemberitahuan satu halaman (sebagai lawan dari 50) dengan daftar lingkungan yang terpengaruh.

Anda dapat mengonfigurasi pengelompokan menjadi `group_by: [alertname]` (tidak menggunakan `env` label, yang berbeda untuk setiap layanan). Dengan konfigurasi ini, Grafana mengirimkan satu notifikasi ringkas yang memiliki semua lingkungan yang terpengaruh untuk aturan peringatan ini.

**Grup Khusus**

Grafana memiliki dua kelompok khusus. Grup default, `group_by: null` mengelompokkan *semua* peringatan menjadi satu grup. Anda juga dapat menggunakan label khusus yang diberi nama `...` untuk mengelompokkan peringatan berdasarkan semua label, menonaktifkan pengelompokan secara efektif, dan mengirim setiap peringatan ke dalam grupnya sendiri.

## Bekerja dengan notifikasi
<a name="v9-alerting-notification-policies-working"></a>

Prosedur berikut menunjukkan cara membuat dan mengelola kebijakan notifikasi.

**Untuk mengedit kebijakan pemberitahuan root**

1. **Dari konsol Grafana Anda, di menu Grafana, pilih ikon **Peringatan** (bel) untuk membuka halaman Peringatan.**

1. Pilih **Kebijakan pemberitahuan**.

1. Dari dropdown **Alertmanager**, pilih Alertmanager yang ingin Anda edit.

1. Di bagian **Kebijakan Root**, pilih ikon **Edit** (pena).

1. Di **titik kontak default**, perbarui titik kontak tempat pemberitahuan harus dikirim untuk aturan saat aturan peringatan tidak cocok dengan kebijakan tertentu.

1. Di **Grup menurut**, pilih label (atau grup khusus) untuk mengelompokkan peringatan berdasarkan.

1. Di **Opsi waktu**, pilih dari opsi berikut.
   + **Tunggu grup** — Saatnya menunggu untuk menyangga peringatan dari grup yang sama sebelum mengirim pemberitahuan awal. Waktu default-nya adalah 30 detik.
   + **Interval grup** — Interval waktu minimum antara dua pemberitahuan untuk grup. Default adalah 5 menit.
   + **Interval pengulangan** — Interval waktu minimum sebelum mengirim ulang pemberitahuan jika tidak ada peringatan baru yang ditambahkan ke grup. Defaultnya adalah 4 jam.

1. Pilih **Simpan** untuk menyimpan perubahan Anda.

**Untuk menambahkan kebijakan spesifik tingkat atas yang baru**

1. **Dari konsol Grafana Anda, di menu Grafana, pilih ikon **Peringatan** (bel) untuk membuka halaman Peringatan.**

1. Pilih **Kebijakan pemberitahuan**.

1. Dari dropdown **Alertmanager**, pilih Alertmanager yang ingin Anda edit.

1. Di bagian **Perutean khusus**, pilih **Kebijakan spesifik baru**.

1. Di bagian **Mencocokkan label**, tambahkan satu atau beberapa label peringatan yang cocok. Informasi lebih lanjut tentang pencocokan label nanti dalam topik ini.

1. Di **titik Kontak**, tambahkan titik kontak untuk mengirim notifikasi jika peringatan cocok dengan kebijakan khusus ini. Kebijakan bersarang mengesampingkan titik kontak ini.

1. Secara opsional, aktifkan **Lanjutkan pencocokan node saudara berikutnya** untuk terus mencocokkan kebijakan saudara kandung bahkan setelah peringatan cocok dengan kebijakan saat ini. Jika kebijakan ini diaktifkan, Anda bisa mendapatkan lebih dari satu notifikasi untuk peringatan yang sama.

1. Secara opsional pilih **Ganti pengelompokan** untuk menentukan pengelompokan yang berbeda dari kebijakan root.

1. Secara opsional pilih **Ganti pengaturan waktu umum** untuk mengganti opsi waktu dalam kebijakan pemberitahuan grup.

1. Pilih **Simpan kebijakan** untuk menyimpan perubahan Anda.

**Untuk menambahkan kebijakan bersarang**

1. Perluas kebijakan spesifik yang ingin Anda buat kebijakan bersarang di bawahnya.

1. Pilih **Tambahkan kebijakan bertingkat**, lalu tambahkan detailnya (seperti saat menambahkan kebijakan spesifik tingkat atas).

1. Pilih **Simpan kebijakan** untuk menyimpan perubahan Anda.

**Untuk mengedit kebijakan tertentu**

1. Dari halaman **Peringatan**, pilih **Kebijakan pemberitahuan** untuk membuka halaman yang mencantumkan kebijakan yang ada.

1. Pilih kebijakan yang ingin Anda edit, lalu pilih ikon **Edit** (pena).

1. Buat perubahan apa pun (seperti saat menambahkan kebijakan spesifik tingkat atas).

1. Pilih **Simpan kebijakan**.

**Mencari kebijakan**

Anda dapat mencari di dalam pohon kebijakan berdasarkan *pencocokan Label atau titik* *kontak*.
+ Untuk mencari berdasarkan titik kontak, masukkan nama sebagian atau lengkap titik kontak di bidang **Cari berdasarkan titik kontak**.
+ Untuk mencari berdasarkan label, masukkan pencocokan label yang valid di kolom **Cari berdasarkan label**. Beberapa matcher dapat dimasukkan, dipisahkan dengan koma. Misalnya, masukan pencocokan yang valid bisa `severity=high, region=~EMEA|NA` jadi.
**catatan**  
Saat mencari berdasarkan label, semua kebijakan yang cocok akan sama persis. Pertandingan sebagian dan pertandingan gaya regeks tidak didukung.

**Cara kerja pencocokan label**

Kebijakan akan cocok dengan peringatan jika label peringatan cocok dengan semua *Label Pencocokan* yang ditentukan pada kebijakan.
+ **Label** — Nama label yang cocok. Itu harus sama persis dengan nama label peringatan.
+ **Operator** — Operator digunakan untuk membandingkan nilai label dengan nilai label yang cocok. Operator yang tersedia adalah:
  + `=`Pilih label yang nilainya sama persis dengan string yang disediakan.
  + `!=`Pilih label yang nilainya tidak cocok dengan string yang disediakan.
  + `=~`Pilih label yang nilainya cocok dengan nilai interpretasi regex dari string yang disediakan (string yang disediakan ditafsirkan sebagai ekspresi reguler.
  + `!=`Pilih label yang tidak cocok dengan ekspresi reguler yang disediakan.
+ **Nilai** — Nilai untuk mencocokkan nilai label. Hal ini dapat cocok sebagai string atau sebagai ekspresi reguler, tergantung pada operator yang dipilih.

# Sesuaikan notifikasi
<a name="v9-alerting-notifications"></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)

Sesuaikan notifikasi Anda dengan templat notifikasi.

Anda dapat menggunakan templat notifikasi untuk mengubah judul, pesan, dan format pesan di notifikasi.

Template notifikasi tidak terkait dengan integrasi titik kontak tertentu, seperti email atau Slack. Namun, Anda dapat memilih untuk membuat templat notifikasi terpisah untuk integrasi titik kontak yang berbeda.

Anda dapat menggunakan template notifikasi untuk:
+ Menambahkan, menghapus, atau mengurutkan ulang informasi dalam pemberitahuan termasuk ringkasan, deskripsi, label dan anotasi, nilai, dan tautan
+ Format teks dalam huruf tebal dan miring, dan tambahkan atau hapus jeda baris

Anda tidak dapat menggunakan templat notifikasi untuk:
+ Ubah desain notifikasi di layanan pesan instan seperti Slack dan Microsoft Teams

**Topics**
+ [Menggunakan bahasa template Go](v9-alerting-notifications-go-templating.md)
+ [Buat templat notifikasi](v9-alerting-create-templates.md)
+ [Referensi templat](v9-alerting-template-reference.md)

# Menggunakan bahasa template Go
<a name="v9-alerting-notifications-go-templating"></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 menulis template notifikasi dalam bahasa template Go, [teks/template](https://pkg.go.dev/text/template).

Bagian ini memberikan ikhtisar bahasa template Go dan template penulisan dalam teks/template.

## Dot
<a name="v9-go-dot"></a>

Di text/template sana ada kursor khusus yang disebut titik, dan ditulis sebagai`.`. Anda dapat menganggap kursor ini sebagai variabel yang nilainya berubah tergantung di mana dalam template itu digunakan. Misalnya, pada awal template notifikasi `.` mengacu pada `ExtendedData` objek, yang berisi sejumlah bidang termasuk`Alerts`,,`Status`, `GroupLabels``CommonLabels`, `CommonAnnotations` dan`ExternalURL`. Namun, dot mungkin merujuk ke sesuatu yang lain saat digunakan dalam daftar di `range` atas, saat digunakan di dalam`with`, atau saat menulis templat fitur untuk digunakan di templat lain. Anda dapat melihat contoh ini di[Buat templat notifikasi](v9-alerting-create-templates.md), dan semua data dan fungsi di[Referensi templat](v9-alerting-template-reference.md).

## Membuka dan menutup tag
<a name="v9-go-openclosetags"></a>

Dalam teks/template, template dimulai dengan `{{` dan diakhiri dengan `}}` terlepas dari apakah template mencetak variabel atau menjalankan struktur kontrol seperti pernyataan if. Ini berbeda dari bahasa templating lainnya seperti Jinja di mana pencetakan variabel menggunakan `{{` dan `}}` dan struktur kontrol menggunakan `{%` dan. `%}`

## Cetak
<a name="v9-go-print"></a>

Untuk mencetak nilai sesuatu gunakan `{{` dan`}}`. Anda dapat mencetak nilai titik, bidang titik, hasil fungsi, dan nilai [variabel](#v9-go-variables). Misalnya, untuk mencetak `Alerts` bidang di mana titik mengacu pada `ExtendedData` Anda akan menulis yang berikut:

```
{{ .Alerts }}
```

## Iterasi di atas peringatan
<a name="v9-go-iterate-alerts"></a>

Untuk mencetak hanya label setiap peringatan, bukan semua informasi tentang peringatan, Anda dapat menggunakan a `range` untuk mengulangi peringatan di: `ExtendedData`

```
{{ range .Alerts }}
{{ .Labels }}
{{ end }}
```

Di dalam rentang titik tidak lagi mengacu pada`ExtendedData`, tetapi ke`Alert`. Anda dapat menggunakan `{{ .Labels }}` untuk mencetak label setiap peringatan. Ini berfungsi karena `{{ range .Alerts }}` perubahan titik untuk merujuk ke peringatan saat ini dalam daftar peringatan. Ketika rentang selesai titik diatur ulang ke nilai yang dimilikinya sebelum dimulainya rentang, yang dalam contoh ini adalah`ExtendedData`:

```
{{ range .Alerts }}
{{ .Labels }}
{{ end }}
{{/* does not work, .Labels does not exist here */}}
{{ .Labels }}
{{/* works, cursor was reset */}}
{{ .Status }}
```

## Ulangi anotasi dan label
<a name="v9-go-iterate-labels"></a>

Mari kita menulis template untuk mencetak label setiap peringatan dalam format`The name of the label is $name, and the value is $value`, di mana `$name` dan `$value` berisi nama dan nilai setiap label.

Seperti pada contoh sebelumnya, gunakan rentang untuk mengulangi peringatan `.Alerts` sedemikian rupa sehingga titik mengacu pada peringatan saat ini dalam daftar peringatan, dan kemudian gunakan rentang kedua pada label yang diurutkan sehingga titik diperbarui untuk kedua kalinya untuk merujuk ke label saat ini. Di dalam rentang kedua gunakan `.Name` dan `.Value` untuk mencetak nama dan nilai setiap label:

```
{{ range .Alerts }}
{{ range .Labels.SortedPairs }}
The name of the label is {{ .Name }}, and the value is {{ .Value }}
{{ end }}
{{ range .Annotations.SortedPairs }}
The name of the annotation is {{ .Name }}, and the value is {{ .Value }}
{{ end }}
{{ end }}
```

## Jika pernyataan
<a name="v9-go-if"></a>

Anda dapat menggunakan pernyataan if dalam template. Misalnya, untuk mencetak `There are no alerts` jika tidak ada peringatan di `.Alerts` Anda akan menulis yang berikut:

```
{{ if .Alerts }}
There are alerts
{{ else }}
There are no alerts
{{ end }}
```

## Dengan
<a name="v9-go-with"></a>

Dengan mirip dengan pernyataan if, namun tidak seperti pernyataan if, `with` pembaruan titik untuk merujuk ke nilai with:

```
{{ with .Alerts }}
There are {{ len . }} alert(s)
{{ else }}
There are no alerts
{{ end }}
```

## Variabel
<a name="v9-go-variables"></a>

Variabel dalam text/template harus dibuat dalam template. Misalnya, untuk membuat variabel yang disebut `$variable` dengan nilai titik saat ini Anda akan menulis yang berikut ini:

```
{{ $variable := . }}
```

Anda dapat menggunakan `$variable` di dalam rentang atau `with` dan itu akan merujuk ke nilai titik pada saat variabel didefinisikan, bukan nilai titik saat ini.

Misalnya, Anda tidak dapat menulis templat yang digunakan `{{ .Labels }}` dalam rentang kedua karena di sini titik mengacu pada label saat ini, bukan peringatan saat ini:

```
{{ range .Alerts }}
{{ range .Labels.SortedPairs }}
{{ .Name }} = {{ .Value }}
{{/* does not work because in the second range . is a label not an alert */}}
There are {{ len .Labels }}
{{ end }}
{{ end }}
```

Anda dapat memperbaikinya dengan mendefinisikan variabel yang disebut `$alert` dalam rentang pertama dan sebelum rentang kedua:

```
{{ range .Alerts }}
{{ $alert := . }}
{{ range .Labels.SortedPairs }}
{{ .Name }} = {{ .Value }}
{{/* works because $alert refers to the value of dot inside the first range */}}
There are {{ len $alert.Labels }}
{{ end }}
{{ end }}
```

## Rentang dengan indeks
<a name="v9-go-rangeindex"></a>

Anda bisa mendapatkan indeks setiap peringatan dalam rentang dengan mendefinisikan indeks dan variabel nilai di awal rentang:

```
{{ $num_alerts := len .Alerts }}
{{ range $index, $alert := .Alerts }}
This is alert {{ $index }} out of {{ $num_alerts }}
{{ end }}
```

## Tentukan templat
<a name="v9-go-define"></a>

Anda dapat menentukan template yang dapat digunakan dalam template lain, menggunakan `define` dan nama template dalam tanda kutip ganda. Anda tidak boleh mendefinisikan template dengan nama yang sama dengan template lain, termasuk template default seperti`__subject`,`__text_values_list`,`__text_alert_list`, `default.title` dan`default.message`. Jika templat telah dibuat dengan nama yang sama dengan templat default, atau templat di templat notifikasi lain, Grafana mungkin menggunakan salah satu templat. Grafana tidak mencegah, atau menampilkan pesan kesalahan, ketika ada dua atau lebih templat dengan nama yang sama.

```
{{ define "print_labels" }}
{{ end }}
```

## Template sematkan
<a name="v9-go-embed"></a>

Anda dapat menyematkan template yang ditentukan dalam template Anda menggunakan`template`, nama template dalam tanda kutip ganda, dan kursor yang harus diteruskan ke template:

```
{{ template "print_labels" . }}
```

## Meneruskan data ke template
<a name="v9-go-passdata"></a>

Dalam titik template mengacu pada nilai yang diteruskan ke template.

Misalnya, jika templat dilewatkan daftar peringatan penembakan maka dot mengacu pada daftar peringatan penembakan tersebut:

```
{{ template "print_alerts" .Alerts }}
```

Jika templat dilewatkan label yang diurutkan untuk peringatan maka dot mengacu pada daftar label yang diurutkan:

```
{{ template "print_labels" .SortedLabels }}
```

Ini berguna saat menulis templat yang dapat digunakan kembali. Misalnya, untuk mencetak semua peringatan, Anda dapat menulis yang berikut ini:

```
{{ template "print_alerts" .Alerts }}
```

Kemudian untuk mencetak hanya peringatan penembakan Anda dapat menulis ini:

```
{{ template "print_alerts" .Alerts.Firing }}
```

Ini berfungsi karena keduanya `.Alerts` dan `.Alerts.Firing` merupakan daftar peringatan.

```
{{ define "print_alerts" }}
{{ range . }}
{{ template "print_labels" .SortedLabels }}
{{ end }}
{{ end }}
```

## Komentar
<a name="v9-go-comments"></a>

Anda dapat menambahkan komentar dengan `{{/*` dan`*/}}`:

```
{{/* This is a comment */}}
```

Untuk mencegah komentar menambahkan jeda baris gunakan:

```
{{- /* This is a comment with no leading or trailing line breaks */ -}}
```

## Lekukan
<a name="v9-go-indentation"></a>

Anda dapat menggunakan lekukan, baik tab maupun spasi, dan jeda baris, untuk membuat templat lebih mudah dibaca:

```
{{ range .Alerts }}
  {{ range .Labels.SortedPairs }}
    {{ .Name }} = {{ .Value }}
  {{ end }}
{{ end }}
```

Namun, lekukan dalam template juga akan ada dalam teks. Selanjutnya kita akan melihat cara menghapusnya.

## Hapus spasi dan jeda baris
<a name="v9-go-removespace"></a>

 text/template Digunakan `{{-` dan `-}}` untuk menghapus spasi depan dan trailing dan jeda garis.

Misalnya, saat menggunakan lekukan dan jeda baris untuk membuat templat lebih mudah dibaca:

```
{{ range .Alerts }}
  {{ range .Labels.SortedPairs }}
    {{ .Name }} = {{ .Value }}
  {{ end }}
{{ end }}
```

Lekukan dan jeda baris juga akan ada dalam teks:

```
    alertname = "Test"

    grafana_folder = "Test alerts"
```

Anda dapat menghapus lekukan dan jeda baris dari teks yang berubah `}}` menjadi `-}}` di awal setiap rentang:

```
{{ range .Alerts -}}
  {{ range .Labels.SortedPairs -}}
    {{ .Name }} = {{ .Value }}
  {{ end }}
{{ end }}
```

Indentasi dan jeda baris dalam template sekarang tidak ada dari teks:

```
alertname = "Test"
grafana_folder = "Test alerts"
```

# Buat templat notifikasi
<a name="v9-alerting-create-templates"></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)

Buat templat notifikasi yang dapat digunakan kembali untuk dikirim ke titik kontak Anda.

Anda dapat menambahkan satu atau beberapa templat ke templat notifikasi Anda.

Nama template notifikasi Anda harus unik. Anda tidak dapat memiliki dua templat dengan nama yang sama di templat notifikasi yang sama atau di templat notifikasi yang berbeda. Hindari mendefinisikan template dengan nama yang sama dengan template default, seperti:`__subject`,, `__text_values_list``__text_alert_list`, `default.title` dan`default.message`.

Di tab Titik kontak, Anda dapat melihat daftar templat notifikasi Anda.

## Membuat template notifikasi
<a name="v9-alerting-creating-templates"></a>

**Untuk membuat template notifikasi**

1. Klik **Tambahkan templat**.

1. Pilih nama untuk template notifikasi, seperti`email.subject`.

1. Tulis konten template di bidang konten.

   Contoh:

   ```
   {{ if .Alerts.Firing -}}
      {{ len .Alerts.Firing }} firing alerts
      {{ end }}
      {{ if .Alerts.Resolved -}}
      {{ len .Alerts.Resolved }} resolved alerts
      {{ end }}
   ```

1. Klik Simpan.

   `{{ define "email.subject" }}`(di `email.subject` mana nama template Anda) dan `{{ end }}` secara otomatis ditambahkan ke awal dan akhir konten.

**Untuk membuat template notifikasi yang berisi lebih dari satu template:**

1. Klik **Tambahkan Template**.

1. Masukkan nama untuk template notifikasi keseluruhan. Misalnya, `email`.

1. Tulis setiap templat di bidang Konten, termasuk `{{ define "name-of-template" }}` dan `{{ end }}` di awal dan akhir setiap templat. Anda dapat menggunakan nama deskriptif untuk setiap templat di templat notifikasi, misalnya, `email.subject` atau`email.message`. Dalam hal ini, jangan gunakan kembali nama template notifikasi yang Anda masukkan di atas.

   Bagian berikut menunjukkan contoh rinci untuk template yang mungkin Anda buat.

1. Klik Simpan.

## Membuat template untuk subjek email
<a name="v9-alerting-create-template-subject"></a>

Buat templat untuk subjek email yang berisi jumlah peringatan yang ditembakkan dan diselesaikan, seperti dalam contoh ini:

```
1 firing alerts, 0 resolved alerts
```

**Untuk membuat template untuk subjek email**

1. Buat template yang disebut `email.subject` dengan konten berikut:

   ```
   {{ define "email.subject" }}
   {{ len .Alerts.Firing }} firing alerts, {{ len .Alerts.Resolved }} resolved alerts
   {{ end }}
   ```

1. Gunakan template saat membuat integrasi titik kontak Anda dengan memasukkannya ke bidang **Subjek** dengan `template` kata kunci.

   ```
   {{ template "email.subject" . }}
   ```

## Membuat template untuk pesan email
<a name="v9-alerting-create-template-message"></a>

Buat templat untuk pesan email yang berisi ringkasan semua peringatan yang diaktifkan dan diselesaikan, seperti dalam contoh ini:

```
There are 2 firing alerts, and 1 resolved alerts

Firing alerts:

- alertname=Test 1 grafana_folder=GrafanaCloud has value(s) B=1
- alertname=Test 2 grafana_folder=GrafanaCloud has value(s) B=2

Resolved alerts:

- alertname=Test 3 grafana_folder=GrafanaCloud has value(s) B=0
```

**Untuk membuat template untuk pesan email**

1. Buat template notifikasi yang disebut `email` dengan dua templat dalam konten: `email.message_alert` dan`email.message`.

   `email.message_alert`Template digunakan untuk mencetak label dan nilai untuk setiap peringatan yang diaktifkan dan diselesaikan sementara `email.message` template berisi struktur email.

   ```
   {{- define "email.message_alert" -}}
   {{- range .Labels.SortedPairs }}{{ .Name }}={{ .Value }} {{ end }} has value(s)
   {{- range $k, $v := .Values }} {{ $k }}={{ $v }}{{ end }}
   {{- end -}}
   
   {{ define "email.message" }}
   There are {{ len .Alerts.Firing }} firing alerts, and {{ len .Alerts.Resolved }} resolved alerts
   
   {{ if .Alerts.Firing -}}
   Firing alerts:
   {{- range .Alerts.Firing }}
   - {{ template "email.message_alert" . }}
   {{- end }}
   {{- end }}
   
   {{ if .Alerts.Resolved -}}
   Resolved alerts:
   {{- range .Alerts.Resolved }}
   - {{ template "email.message_alert" . }}
   {{- end }}
   {{- end }}
   
   {{ end }}
   ```

1. Gunakan template saat membuat integrasi titik kontak Anda dengan memasukkannya ke dalam bidang **Text Body** dengan `template` kata kunci.

   ```
   {{ template "email.message" . }}
   ```

## Membuat template untuk judul pesan Slack
<a name="v9-alerting-create-template-slack-title"></a>

Buat template untuk judul pesan Slack yang berisi jumlah peringatan yang diaktifkan dan diselesaikan, seperti pada contoh berikut:

```
1 firing alerts, 0 resolved alerts
```

**Untuk membuat template untuk judul pesan Slack**

1. Buat template yang disebut `slack.title` dengan konten berikut:

   ```
   {{ define "slack.title" }}
   {{ len .Alerts.Firing }} firing alerts, {{ len .Alerts.Resolved }} resolved alerts
   {{ end }}
   ```

1. Gunakan template saat membuat integrasi titik kontak Anda dengan memasukkannya ke dalam bidang **Judul** dengan `template` kata kunci.

   ```
   {{ template "slack.title" . }}
   ```

## Membuat template untuk konten pesan Slack
<a name="v9-alerting-create-template-slack-message"></a>

Buat template untuk konten pesan Slack yang berisi deskripsi semua peringatan yang diaktifkan dan diselesaikan, termasuk label, anotasi, dan URL Dasbor:

```
1 firing alerts:

[firing] Test1
Labels:
- alertname: Test1
- grafana_folder: GrafanaCloud
Annotations:
- description: This is a test alert
Go to dashboard: https://example.com/d/dlhdLqF4z?orgId=1

1 resolved alerts:

[firing] Test2
Labels:
- alertname: Test2
- grafana_folder: GrafanaCloud
Annotations:
- description: This is another test alert
Go to dashboard: https://example.com/d/dlhdLqF4z?orgId=1
```

**Untuk membuat template untuk konten pesan Slack**

1. Buat template yang disebut `slack` dengan dua template dalam konten: `slack.print_alert` dan`slack.message`.

   `slack.print_alert`Template digunakan untuk mencetak label, anotasi, dan dasbordURL sementara `slack.message` template berisi struktur notifikasi.

   ```
   {{ define "slack.print_alert" -}}
   [{{.Status}}] {{ .Labels.alertname }}
   Labels:
   {{ range .Labels.SortedPairs -}}
   - {{ .Name }}: {{ .Value }}
   {{ end -}}
   {{ if .Annotations -}}
   Annotations:
   {{ range .Annotations.SortedPairs -}}
   - {{ .Name }}: {{ .Value }}
   {{ end -}}
   {{ end -}}
   {{ if .DashboardURL -}}
     Go to dashboard: {{ .DashboardURL }}
   {{- end }}
   {{- end }}
   
   {{ define "slack.message" -}}
   {{ if .Alerts.Firing -}}
   {{ len .Alerts.Firing }} firing alerts:
   {{ range .Alerts.Firing }}
   {{ template "slack.print_alert" . }}
   {{ end -}}
   {{ end }}
   {{ if .Alerts.Resolved -}}
   {{ len .Alerts.Resolved }} resolved alerts:
   {{ range .Alerts.Resolved }}
   {{ template "slack.print_alert" .}}
   {{ end -}}
   {{ end }}
   {{- end }}
   ```

1. Gunakan template saat membuat integrasi titik kontak Anda dengan memasukkannya ke dalam bidang **Text Body** dengan `template` kata kunci.

   ```
   {{ template "slack.message" . }}
   ```

## Template email dan Slack dengan template bersama
<a name="v9-alerting-create-shared-templates"></a>

Alih-alih membuat template notifikasi terpisah untuk setiap titik kontak, seperti email dan Slack, Anda dapat berbagi template yang sama.

Misalnya, jika Anda ingin mengirim email dengan subjek ini dan pesan Slack dengan judul ini`1 firing alerts, 0 resolved alerts`, Anda dapat membuat templat bersama.

**Untuk membuat template bersama**

1. Buat template yang disebut `common.subject_title` dengan konten berikut:

   ```
   {{ define "common.subject_title" }}
   {{ len .Alerts.Firing }} firing alerts, {{ len .Alerts.Resolved }} resolved alerts
   {{ end }}
   ```

1. Untuk email, jalankan template dari bidang subjek dalam integrasi titik kontak email Anda:

   ```
   {{ template "common.subject_title" . }}
   ```

1. Untuk Slack, jalankan template dari bidang judul di integrasi titik kontak Slack Anda:

   ```
   {{ template "common.subject_title" . }}
   ```

## Menggunakan template notifikasi
<a name="v9-alerting-use-notification-templates"></a>

Gunakan templat di titik kontak untuk menyesuaikan notifikasi Anda.

**Untuk menggunakan template saat membuat titik kontak**

1. Dari menu **Peringatan**, pilih **Titik kontak** untuk melihat daftar titik kontak yang ada.

1. Pilih **Tambahkan titik kontak**. Sebagai alternatif, Anda dapat mengedit titik kontak yang ada dengan memilih ikon **Edit** (pena) di sebelah titik kontak yang ingin Anda edit.

1. Masukkan templat yang ingin Anda gunakan dalam satu atau beberapa bidang, seperti **Pesan** atau **Subjek**. Untuk memasukkan templat, gunakan formulir`{{ template "template_name" . }}`, ganti *template\$1name* dengan nama templat yang ingin Anda gunakan.

1. Klik **Simpan titik kontak**.

# Referensi templat
<a name="v9-alerting-template-reference"></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)

Bagian ini memberikan informasi referensi untuk membuat template Anda.

## Data templat
<a name="v9-alerting-template-data"></a>

Data berikut diteruskan ke template pesan.


| Nama | Tipe | Catatan | 
| --- | --- | --- | 
|  `Receiver`  |  string  |  Nama titik kontak tempat notifikasi dikirim.  | 
|  `Status`  |  string  |  menembak jika setidaknya satu peringatan ditembakkan, jika tidak diselesaikan.  | 
|  `Alerts`  |  Pemberitahuan  |  Daftar objek peringatan yang disertakan dalam pemberitahuan ini (lihat di bawah).  | 
|  `GroupLabels`  |  KeyValue  |  Label peringatan ini dikelompokkan berdasarkan.  | 
|  `CommonLabels`  |  KeyValue  |  Label umum untuk semua peringatan yang disertakan dalam notifikasi ini.  | 
|  `CommonAnnotations`  |  KeyValue  |  Anotasi umum untuk semua peringatan yang disertakan dalam pemberitahuan ini.  | 
|  `ExternalURL`  |  string  |  Tautan kembali ke Grafana yang mengirim notifikasi. Jika menggunakan Alertmanager eksternal, tautan kembali ke Alertmanager ini.  | 

`Alerts`Jenis ini mengekspos dua fungsi untuk memfilter peringatan yang dikembalikan.
+ `Alerts.Firing`— Mengembalikan daftar peringatan penembakan.
+ `Alerts.Resolved`— Mengembalikan daftar peringatan diselesaikan.

**Peringatan (tipe)**

Jenis peringatan berisi data berikut.


| Nama | Tipe | Catatan | 
| --- | --- | --- | 
|  Status  |  string  |  `firing` atau `resolved`.  | 
|  Label  |  KeyValue  |  Satu set label yang dilampirkan pada peringatan.  | 
|  Anotasi  |  KeyValue  |  Satu set anotasi yang dilampirkan pada peringatan.  | 
| Nilai | KeyValue | Nilai dari semua ekspresi, termasuk Kondisi Klasik | 
|  StartsAt  |  waktu.waktu  |  Waktu peringatan mulai menembak.  | 
|  EndsAt  |  waktu.waktu  |  Hanya atur jika waktu akhir peringatan diketahui. Jika tidak, atur ke periode batas waktu yang dapat dikonfigurasi sejak peringatan terakhir diterima.  | 
|  GeneratorURL  |  string  |  Tautan balik ke Grafana atau Alertmanager eksternal.  | 
|  SilenceUrl  |  string  |  Tautan untuk membungkam peringatan (dengan label untuk peringatan ini telah diisi sebelumnya). Hanya untuk peringatan terkelola Grafana.  | 
|  DashboardURL  |  string  |  Tautkan ke dasbor grafana, jika aturan peringatan milik salah satunya. Hanya untuk peringatan terkelola Grafana.  | 
|  PanelURL  |  string  |  Tautkan ke panel dasbor grafana, jika aturan peringatan milik salah satunya. Hanya untuk peringatan terkelola Grafana.  | 
|  Sidik jari  |  string  |  Sidik jari yang dapat digunakan untuk mengidentifikasi peringatan.  | 
|  ValueString  |  string  |  String yang berisi label dan nilai setiap ekspresi yang dikurangi dalam peringatan.  | 

 **ExtendedData**

 ExtendedData Objek berisi properti berikut.


| Nama | Jenis | Deskripsi | Contoh | 
| --- | --- | --- | --- | 
|  Penerima  |  `string`  |  Nama titik kontak yang mengirimkan notifikasi.  |  `{{ .Receiver }}`  | 
|  Status  |  `string`  |  Statusnya adalah `firing if at least one alert is firing, otherwise resolved.`  |  `{{ .Status }}`  | 
|  Pemberitahuan  |  `[]Alert`  |  Daftar semua peringatan yang ditembakkan dan diselesaikan dalam pemberitahuan ini.  |  `There are {{ len .Alerts }} alerts`  | 
|  Peringatan penembakan  |  `[]Alert`  |  Daftar semua peringatan penembakan dalam pemberitahuan ini.  |  `There are {{ len .Alerts.Firing }} firing alerts`  | 
|  Peringatan terselesaikan  |  `[]Alert`  |  Daftar semua peringatan yang diselesaikan dalam pemberitahuan ini.  |  `There are {{ len .Alerts.Resolved }} resolved alerts`  | 
|  GroupLabels  |  `KeyValue`  |  Label yang mengelompokkan peringatan ini termasuk pemberitahuannya.  |  `{{ .GroupLabels }}`  | 
|  CommonLabels  |  `KeyValue`  |  Label umum untuk semua peringatan dalam pemberitahuan ini.  |  `{{ .CommonLabels }}`  | 
|  CommonAnnotations  |  `KeyValue`  |  Anotasi umum untuk semua peringatan dalam pemberitahuan ini.  |  `{{ .CommonAnnotations }}`  | 
|  URL eksternal  |  `string`  |  Tautan ke ruang kerja Grafana atau Alertmanager yang mengirimkan pemberitahuan ini.  |  `{{ .ExternalURL }}`  | 

**KeyValue jenis**

`KeyValue`Tipe adalah satu set pasangan key/value string yang mewakili label dan anotasi.

Selain akses langsung dari data yang disimpan sebagai a`KeyValue`, ada juga metode untuk menyortir, menghapus, dan mengubah data.


| Nama | Pendapat | Pengembalian | Catatan | Contoh | 
| --- | --- | --- | --- | --- | 
|  SortedPairs  |    |  Daftar pasangan string kunci dan nilai yang diurutkan  |    | `{{ .Annotations.SortedPairs }}` | 
|  Menghapus  |  [] string  |  KeyValue  |  Mengembalikan salinan Key/Value peta tanpa kunci yang diberikan.  | `{{ .Annotations.Remove "summary" }}` | 
|  Nama  |    |  [] string  |  Daftar nama label  | `{{ .Names }}` | 
|  Nilai  |    |  [] string  |  Daftar nilai label  | `{{ .Values }}` | 

**Waktu**

Waktu dari [https://pkg.go.dev/time#Time](https://pkg.go.dev/time#Time)paket Go. Anda dapat mencetak waktu dalam sejumlah format berbeda. Misalnya, untuk mencetak waktu peringatan diaktifkan dalam format`Monday, 1st January 2022 at 10:00AM`, Anda menulis template berikut:

```
{{ .StartsAt.Format "Monday, 2 January 2006 at 3:04PM" }}
```

Anda dapat menemukan referensi untuk format waktu Go [di sini](https://pkg.go.dev/time#pkg-constants).

## Fungsi template
<a name="v9-alerting-template-functions"></a>

Dengan menggunakan fungsi template, Anda dapat memproses label dan anotasi untuk menghasilkan notifikasi dinamis. Fungsi-fungsi berikut tersedia.


| Nama | Jenis Argumen | Jenis pengembalian | Deskripsi | 
| --- | --- | --- | --- | 
|  `humanize`  |  nomor atau string  |  string  |  Mengonversi angka ke format yang lebih mudah dibaca, menggunakan awalan metrik.  | 
|  `humanize1024`  |  nomor atau string  |  string  |  Seperti memanusiakan, tetapi menggunakan 1024 sebagai basis daripada 1000.  | 
|  `humanizeDuration`  |  nomor atau string  |  string  |  Mengonversi durasi dalam hitungan detik ke format yang lebih mudah dibaca.  | 
|  `humanizePercentage`  |  nomor atau string  |  string  |  Mengkonversi nilai rasio menjadi pecahan dari 100.  | 
|  `humanizeTimestamp`  |  nomor atau string  |  string  |  Mengonversi stempel waktu Unix dalam hitungan detik ke format yang lebih mudah dibaca.  | 
|  `title`  |  string  |  string  |  Strings.title, mengkapitalisasi karakter pertama dari setiap kata.  | 
|  `toUpper`  |  string  |  string  |  senar. ToUpper, mengonversi semua karakter ke huruf besar.  | 
|  `toLower`  |  string  |  string  |  senar. ToLower, mengonversi semua karakter ke huruf kecil.  | 
|  `match`  |  pola, teks  |  Boolean  |  regexp. MatchString Tes untuk pertandingan regexp yang tidak ditambatkan.  | 
|  `reReplaceAll`  |  pola, penggantian, teks  |  string  |  Regexp. ReplaceAllString Regexp substitusi, tidak berlabuh.  | 
|  `graphLink`  |  string - Objek JSON dengan `expr` dan bidang `datasource`  |  string  |  Mengembalikan jalur ke tampilan grafis di Jelajahi untuk ekspresi dan sumber data yang diberikan.  | 
|  `tableLink`  |  string - Objek JSON dengan `expr` dan bidang `datasource`  |  string  |  Mengembalikan jalur ke tampilan tabel di Jelajahi untuk ekspresi dan sumber data yang diberikan.  | 
|  `args`  |  [] antarmuka \$1\$1  |  peta [string] antarmuka \$1\$1  |  Mengkonversi daftar objek ke peta dengan kunci, misalnya, arg0, arg1. Gunakan fungsi ini untuk meneruskan beberapa argumen ke template.  | 
|  `externalURL`  |  tidak ada  |  string  |  Mengembalikan string yang mewakili URL eksternal.  | 
|  `pathPrefix`  |  tidak ada  |  string  |  Mengembalikan jalur URL eksternal.  | 

Tabel berikut menunjukkan contoh penggunaan setiap fungsi.


| Fungsi | TemplateString | Input | Expected | 
| --- | --- | --- | --- | 
|  memanusiakan  |  \$1memanusiakan \$1value\$1  |  1234567.0  |  1.235 M  | 
|  manusia1024  |  \$1humanize1024 \$1nilai\$1  |  1048576.0  |  1Mi  | 
|  HumanizeUrasi  |  \$1HumanizeDuration \$1value\$1  |  899,99  |  14m 59s  | 
|  HumanizePersentase  |  \$1HumanizePersentase \$1 nilai\$1  |  0.1234567  |  12,35%  | 
|  HumanizeTimestamp  |  \$1HumanizeTimeStamp \$1nilai\$1  |  1435065584.128  |  2015-06-23 13:19:44.128 \$10000 UTC  | 
|  title  |  \$1\$1value \$1 judul\$1  |  aa bB CC  |  Aa Bb Cc  | 
|  toUpper  |  \$1\$1nilai \$1 TouPper\$1  |  aa bB CC  |  AA BB CC  | 
|  toLower  |  \$1\$1value \$1 toLower\$1  |  aa bB CC  |  aa bb cc  | 
|  match  |  \$1cocokkan “a\$1” \$1labels.instance\$1  |  aa  |  true  | 
|  reReplaceAll  |  \$1\$1 reReplaceAll “localhost :( .\$1)” “my.domain: \$11" \$1labels.instance\$1\$1  |  localhost:3000  |  domain.my:3000  | 
|  GraphLink  |  \$1\$1GraphLink “\$1\$1" expr\$1”:\$1 "up\$1”,\$1 "sumber data\$1”:\$1 "gdev-prometheus\$1"\$1”\$1\$1  |    |  /jelajahi? left= ["now-1h”, "now”, "gdev-prometheus”, \$1"datasource” :"gdev-prometheus”, "expr” :"up”, "instant” :false, "range” :true\$1]  | 
|  TableLink  |  \$1\$1TableLink “\$1\$1" expr\$1”:\$1 "up\$1”,\$1 "sumber data\$1”:\$1 "gdev-prometheus\$1"\$1”\$1\$1  |    |  /jelajahi? left= ["now-1h”, "now”, "gdev-prometheus”, \$1"datasource” :"gdev-prometheus”, "expr” :"up”, "instant” :true, "range” :false\$1]  | 
|  args  |  \$1\$1define “x"\$1\$1 \$1\$1.arg0\$1\$1 \$1\$1.arg1\$1\$1 \$1\$1end\$1\$1 \$1\$1template “x” (argumen 1 “2")\$1\$1  |    |  1 2  | 
|  URL eksternal  |  \$1ExternalUrl\$1  |    |  http://localhost/path/prefix  | 
|  PathPrefix  |  \$1PathPrefix\$1  |    |  /jalur/awalan  | 

# Membungkam pemberitahuan peringatan untuk sumber data Prometheus
<a name="v9-alerting-silences"></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)

*Untuk sumber data pengelola Peringatan eksternal (termasuk Amazon Managed Service untuk Prometheus), Anda dapat menekan pemberitahuan peringatan dengan diam.* Keheningan hanya menghentikan pemberitahuan agar tidak dibuat: Keheningan tidak mencegah aturan peringatan dievaluasi, dan mereka tidak menghentikan peringatan instance agar tidak ditampilkan di antarmuka pengguna. Saat Anda membungkam peringatan, Anda menentukan jendela waktu untuk ditekan.

Anda dapat mengonfigurasi keheningan untuk sumber data Alertmanager eksternal.

**catatan**  
Untuk menekan pemberitahuan peringatan pada interval waktu reguler, atau untuk sumber data lain, (misalnya, selama periode pemeliharaan rutin), gunakan [Bisukan waktu](v9-alerting-notification-muting.md) bukan diam.

**Untuk menambahkan keheningan**

1. **Dari konsol Grafana Anda, di menu Grafana, pilih ikon **Peringatan** (bel) untuk membuka halaman Peringatan.**

1. Pilih **Silences** untuk membuka daftar halaman yang ada[Bekerja dengan titik kontak](v9-alerting-contact-points.md).

1. Pilih Alertmanager eksternal dari dropdown **Alertmanager**.

1. Pilih **Tambahkan Keheningan**.

1. Pilih tanggal mulai dan berakhir di **Silence start and end** untuk menunjukkan kapan keheningan akan berlaku dan kapan harus berakhir.

   Sebagai alternatif untuk mengatur waktu akhir, di **Durasi**, tentukan berapa lama keheningan diberlakukan. Ini secara otomatis memperbarui waktu akhir di bidang **Mulai dan Akhir Diam**.

1. Di bidang **Nama** dan **Nilai**, masukkan satu atau beberapa *Label Pencocokan*. Matcher menentukan aturan mana yang berlaku untuk keheningan. Pencocokan label dibahas secara lebih rinci mengikuti prosedur ini.

1. Secara opsional, tambahkan **Komentar**, atau ubah **Pencipta** untuk mengatur pemilik keheningan.

1. Pilih **Buat** untuk membuat keheningan.

Anda dapat mengedit keheningan yang ada dengan memilih ikon **Edit** (pena).

**Pencocokan label untuk penekanan peringatan**

Saat Anda membuat keheningan, Anda membuat satu set *label yang cocok* sebagai bagian dari keheningan. Ini adalah seperangkat aturan tentang label yang harus cocok agar peringatan ditekan. Label yang cocok terdiri dari tiga bagian:
+ **Label** — Nama label yang cocok. Itu harus sama persis dengan nama label peringatan.
+ **Operator** — Operator digunakan untuk membandingkan nilai label dengan nilai label yang cocok. Operator yang tersedia adalah:
  + `=`Pilih label yang nilainya sama persis dengan string yang disediakan.
  + `!=`Pilih label yang nilainya tidak cocok dengan string yang disediakan.
  + `=~`Pilih label yang nilainya cocok dengan nilai interpretasi regex dari string yang disediakan (string yang disediakan ditafsirkan sebagai ekspresi reguler).
  + `!=`Pilih label yang tidak cocok dengan ekspresi reguler yang disediakan.
+ **Nilai** — Nilai untuk mencocokkan nilai label. Hal ini dapat cocok sebagai string atau sebagai ekspresi reguler, tergantung pada operator yang dipilih.

Keheningan berakhir pada tanggal akhir yang ditunjukkan, tetapi Anda dapat mengakhiri penindasan secara manual kapan saja.

**Untuk mengakhiri keheningan secara manual**

1. Di halaman **Peringatan**, pilih **Silences** untuk melihat daftar keheningan yang ada.

1. Pilih keheningan yang ingin Anda akhiri, dan pilih **Unsilence**. Ini mengakhiri penindasan peringatan.
**catatan**  
Unsilencing mengakhiri penindasan peringatan, seolah-olah waktu akhir ditetapkan untuk waktu saat ini. Keheningan yang telah berakhir (secara otomatis atau manual) dipertahankan dan terdaftar selama lima hari. Anda tidak dapat menghapus keheningan dari daftar secara manual.

**Membuat tautan ke formulir pembuatan keheningan**

Anda dapat membuat URL ke formulir pembuatan diam dengan detail yang sudah diisi. Operator dapat menggunakan ini untuk menekan alarm dengan cepat selama acara operasional.

Saat membuat tautan ke formulir diam, gunakan parameter `matchers` kueri untuk menentukan label yang cocok, dan parameter `comment` kueri untuk menentukan komentar. `matchers`Parameter membutuhkan satu atau lebih nilai dalam bentuk`[label][operator][value]`, dipisahkan dengan koma.

**Contoh URL**

Untuk menautkan ke formulir diam, dengan label yang cocok `severity=critical` dan`cluster!~europe-.*`, dengan komentar yang mengatakan`Silencing critical EU alerts`, gunakan URL seperti berikut ini. Ganti *mygrafana* dengan nama host instance Grafana Anda.

```
https://mygrafana/alerting/silence/new?matchers=severity%3Dcritical%2Ccluster!~europe-*&comment=Silence%20critical%20EU%20alert
```

Untuk menautkan ke halaman diam baru untuk Alertmanager eksternal, tambahkan parameter `alertmanager` kueri dengan nama sumber data Alertmanage, seperti. `alertmanager=myAlertmanagerdatasource`

# Bisukan waktu
<a name="v9-alerting-notification-muting"></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)

Waktu bisu adalah interval waktu berulang ketika tidak ada pemberitahuan baru untuk kebijakan yang dibuat atau dikirim. Gunakan mereka untuk mencegah peringatan menembakkan periode tertentu dan berulang, misalnya, periode pemeliharaan rutin.

Mirip dengan keheningan, timing bisu tidak mencegah aturan peringatan dievaluasi, juga tidak menghentikan instance peringatan ditampilkan di antarmuka pengguna. Mereka hanya mencegah pemberitahuan dibuat.

Anda dapat mengonfigurasi pengaturan waktu bisu terkelola Grafana serta pengaturan waktu bisu untuk sumber data Alertmanager eksternal.

**Pengaturan waktu bisu dibandingkan dengan keheningan**

Tabel berikut menyoroti perbedaan antara timing bisu dan keheningan.


| Bisukan waktu | Pembisuan | 
| --- | --- | 
|  Menggunakan definisi interval waktu yang dapat terulang kembali.  |  Memiliki waktu mulai dan berakhir yang tetap.  | 
|  Dibuat dan kemudian ditambahkan ke kebijakan pemberitahuan.  |  Menggunakan label untuk mencocokkan dengan peringatan untuk menentukan apakah akan diam atau tidak.  | 
|  Bekerja dengan peringatan Grafana dan Manajer Peringatan eksternal.  |  Hanya berfungsi dengan Alertmanagers eksternal.  | 

**Untuk membuat waktu bisu**

1. **Dari konsol Grafana Anda, di menu Grafana, pilih ikon **Peringatan** (bel) untuk membuka halaman Peringatan.**

1. Pilih **Kebijakan pemberitahuan**.

1. Dari dropdown **Alertmanager**, pilih Alertmanager yang ingin Anda edit.

1. Di bagian **Mute timing**, pilih tombol **Add mute timing**.

1. Pilih interval waktu yang Anda inginkan agar waktu bisu diterapkan.

1. Pilih **Kirim** untuk membuat waktu bisu.

**Untuk menambahkan waktu bisu ke kebijakan notifikasi**

1. Pilih kebijakan notifikasi yang ingin Anda tambahkan waktu bisu, lalu pilih tombol **Edit**.

1. Dari menu tarik-turun **Pengaturan waktu bisu**, pilih pengaturan waktu bisu yang ingin ditambahkan ke kebijakan.

   Pilih tombol **Simpan kebijakan**.

**Interval waktu**

Interval waktu adalah definisi untuk rentang waktu. Jika peringatan dimulai selama interval ini, peringatan itu ditekan. Rentang didukung menggunakan `:` (misalnya,`monday:thursday`). Waktu bisu dapat berisi beberapa interval waktu. Interval waktu terdiri dari beberapa bidang (detail dalam daftar berikut), yang semuanya harus cocok untuk menekan peringatan. Misalnya, jika Anda menentukan hari dalam seminggu `monday:friday` dan rentang waktu dari 8:00-9:00, maka peringatan ditekan dari 8-9, Senin hingga Jumat, tetapi tidak, misalnya, 8-9 pada hari Sabtu.
+ **Rentang waktu** — Waktu hari untuk menekan notifikasi. Terdiri dari dua sub-bidang, **Start time** dan **End time**. Contoh waktu adalah`14:30`. Waktu dalam notasi 24 jam, di UTC.
+ **Hari dalam seminggu** — Hari-hari dalam seminggu. Dapat berupa satu hari, seperti`monday`, rentang, seperti`monday:friday`, atau daftar hari yang terpisah koma, seperti. `monday, tuesday, wednesday`
+ **Bulan** — Bulan untuk memilih. Anda dapat menentukan bulan dengan penunjukan numerik, atau dengan nama bulan penuh, misalnya `1` atau `january` keduanya menentukan Januari. Anda dapat menentukan satu bulan, rentang bulan, atau daftar bulan yang dipisahkan koma.
+ **Hari dalam sebulan** — Tanggal dalam sebulan. Nilai dapat berkisar dari `1` -`31`. Nilai negatif menentukan hari dalam sebulan dalam urutan terbalik, jadi `-1` mewakili hari terakhir bulan itu. Hari dalam sebulan dapat ditentukan sebagai satu hari, rentang hari, atau daftar hari yang terpisah koma.
+ **Tahun** — Tahun atau tahun untuk interval. Misalnya, `2023:2025`.

Masing-masing elemen ini dapat berupa daftar, dan setidaknya satu item dalam elemen harus dipenuhi untuk menjadi kecocokan. Jadi jika Anda menetapkan tahun ke`2023:2025, 2027`, maka itu akan benar selama 2023, 2024, 2025, dan 2027 (tetapi bukan 2026).

Jika bidang dibiarkan kosong, setiap saat akan cocok dengan bidang. Momen waktu harus cocok dengan semua bidang agar sesuai dengan interval waktu yang lengkap.

Jika Anda ingin menentukan durasi yang tepat, tentukan semua opsi yang diperlukan untuk durasi tersebut. Misalnya, jika Anda ingin membuat interval waktu untuk Senin pertama setiap bulan, untuk bulan Maret, Juni, September, dan Desember, antara jam 12:00 dan 24:00 UTC, spesifikasi interval waktu Anda dapat berupa:
+ Rentang waktu:
  + Waktu mulai: `12:00`
  + Waktu akhir: `24:00`
+ Hari dalam seminggu: `monday`
+ Bulan: `3, 6, 9, 12`
+ Hari dalam sebulan: `1:7`

# Lihat dan filter menurut grup peringatan
<a name="v9-alerting-viewfiltergroups"></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)

Grup peringatan menampilkan peringatan yang dikelompokkan dari instance Alertmanager. Secara default, aturan peringatan dikelompokkan berdasarkan kunci label untuk kebijakan root dalam kebijakan notifikasi. Mengelompokkan aturan peringatan umum ke dalam satu grup peringatan mencegah aturan peringatan duplikat dipecat.

Anda dapat melihat grup peringatan dan juga memfilter aturan peringatan yang sesuai dengan kriteria tertentu.

**Untuk melihat grup peringatan**

1. Di menu Grafana, klik ikon **Peringatan** (bel) untuk membuka halaman Peringatan yang mencantumkan peringatan yang ada.

1. Klik **Grup peringatan** untuk membuka halaman yang mencantumkan grup yang ada.

1. Dari tarik-turun **Alertmanager**, pilih Alertmanager eksternal sebagai sumber data Anda.

1. Dari **grup kustom berdasarkan** tarik-turun, pilih kombinasi label untuk melihat pengelompokan selain default. Ini berguna untuk men-debug dan memverifikasi pengelompokan kebijakan pemberitahuan Anda.

Jika peringatan tidak berisi label yang ditentukan baik dalam pengelompokan kebijakan root atau pengelompokan kustom, maka peringatan akan ditambahkan ke grup catch all dengan header. `No grouping`

**Untuk memfilter berdasarkan label**
+ Di **Penelusuran**, masukkan label yang ada untuk melihat peringatan yang cocok dengan label.

  Misalnya, `environment=production,region=~US|EU,severity!=warning`.

**Untuk memfilter menurut negara**
+ Di **Negara Bagian**, pilih dari Status Aktif, Ditekan, atau Tidak Diproses untuk melihat peringatan yang cocok dengan status yang Anda pilih. Semua peringatan lainnya disembunyikan.

# Lihat kesalahan pemberitahuan
<a name="v9-alerting-viewnotificationerrors"></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)

Lihat kesalahan pemberitahuan dan pahami mengapa kesalahan tersebut gagal dikirim atau tidak diterima.

**catatan**  
Fitur ini hanya didukung untuk Grafana Alertmanager.

**Untuk melihat kesalahan pemberitahuan**

1. Di menu Grafana, klik ikon **Peringatan** (bel) untuk membuka halaman Peringatan yang mencantumkan peringatan yang ada.

1. Pilih **Titik kontak** untuk melihat daftar titik kontak yang ada.

   Jika ada titik kontak yang gagal, pesan di sudut kanan layar memberi tahu pengguna tentang fakta bahwa ada kesalahan dan berapa banyak.

1. Klik pada titik kontak untuk melihat detail kesalahan untuk titik kontak tersebut.

   Detail kesalahan ditampilkan jika Anda mengarahkan kursor ke ikon Kesalahan.

   Jika titik kontak memiliki lebih dari satu integrasi, Anda melihat semua kesalahan untuk setiap integrasi yang terdaftar.

1. Di kolom Health, periksa status notifikasi.

   Ini bisa berupa OK, Tidak ada upaya, atau Kesalahan.