Шаблонизация уведомлений

Вы можете использовать шаблоны уведомлений, чтобы изменять заголовок, сообщение и формат уведомлений.

Grafana предоставляет шаблон по умолчанию для заголовков уведомлений (default.title) и один шаблон по умолчанию для уведомительных сообщений (default.message). Оба шаблона отображают общие сведения об оповещении.

Вы также можете создать шаблон уведомления, чтобы настроить содержимое и формат ваших уведомительных сообщений. Например:

  • Персонализировать тему письма или заголовок сообщения.
  • Изменять текст в уведомлениях, например выбирать или опускать определённые метки, аннотации и ссылки.
  • Форматировать текст с помощью жирного и курсивного начертания, добавлять или удалять переносы строк.

Однако есть ограничения. Вы не можете:

  • Изменять внешний вид: добавлять HTML или CSS в уведомления по email для визуальных изменений. Изменять дизайн уведомлений в сервисах обмена сообщениями, таких как Slack или Microsoft Teams, например добавлять пользовательские блоки или adaptive cards.
  • Управлять медиа и данными: настраивать структуру или формат данных, передаваемых в шаблоны, например добавлять новые поля JSON или отправлять XML-данные для webhooks. Изменять HTTP-заголовки в webhooks за пределами определённых в конфигурации или регулировать количество, размер или размещение изображений.

Вот пример, отображающий аннотации summary и description для каждого оповещения в уведомлении:

Go
{{ define "custom.alerts" -}}
{{ len .Alerts }} alert(s)
{{ range .Alerts -}}
  {{ template "alert.summary_and_description" . -}}
{{ end -}}
{{ end -}}
{{ define "alert.summary_and_description" }}
  Summary: {{.Annotations.summary}}
  Status: {{ .Status }}
  Description: {{.Annotations.description}}
{{ end -}}

Уведомительное сообщение будет выглядеть так:

2 alert(s)

  Summary: The database server db1 has exceeded 75% of available disk space.
  Status: firing
  Description: This alert fires when a database server is at risk of running out of disk space. You should take measures to increase the maximum available disk space as soon as possible to avoid possible corruption.

  Summary: The web server web1 has been responding to 5% of HTTP requests with 5xx errors for the last 5 minutes.
  Status: resolved
  Description: This alert fires when a web server responds with more 5xx errors than is expected. This could be an issue with the web server or a backend service.

Note

Избегайте добавления дополнительной информации об экземплярах оповещений в шаблоны уведомлений, так как эта информация будет видна только в уведомительном сообщении.

Вместо этого вам следует использовать аннотации или метки, чтобы добавлять информацию напрямую в оповещение, обеспечивая её видимость также в состоянии оповещения и истории оповещений в Grafana. Затем вы можете вывести новую аннотацию или метку оповещения в шаблонах уведомлений.

Выбор шаблона уведомления для точки контакта

Шаблоны уведомлений не привязаны к конкретным интеграциям точек контакта, таким как email или Slack, и один и тот же шаблон можно использовать в нескольких точках контакта.

Шаблон уведомления назначается точке контакта, чтобы определять уведомительное сообщение, отправляемое интеграциям точки контакта.

A flow of the alert notification process, from querying the alert rule to sending the alert notification message.
A flow of the alert notification process, from querying the alert rule to sending the alert notification message.

По умолчанию Grafana предоставляет шаблоны по умолчанию, такие как {{define "default.title"}} и {{define "default.message"}}, для форматирования уведомительных сообщений.

Шаблоны, сгенерированные ИИ, в Grafana Cloud

Пользователи Grafana Cloud могут использовать встроенный инструмент ИИ, чтобы сгенерировать для вас шаблоны на соответствующем языке шаблонов оповещений.

Чтобы использовать ИИ для создания вашего шаблона, выполните следующие шаги:

  1. Перейдите в Alerting -> Contact points.

  2. Нажмите вкладку Notification Templates, затем нажмите кнопку + New notification template.

  3. Задайте имя вашего шаблона.

  4. В разделе Template group нажмите кнопку Generate with AI.

  5. Передайте инструменту ИИ запрос или выберите один из примеров запросов и отредактируйте его при необходимости.

  6. Нажмите Save.

Дополнительная информация

Дополнительные сведения о том, как писать шаблоны уведомлений, см. в:

Tip

Практический пример шаблонизации см. в нашем учебнике по началу работы с шаблонизацией.