Аннотации Elasticsearch
Аннотации накладывают данные о событиях на графики дашборда, помогая сопоставлять события журналов с метриками. Вы можете использовать Elasticsearch как источник данных для аннотаций, чтобы отображать на визуализациях такие события, как развёртывания, оповещения или другие значимые происшествия.
Общую информацию об аннотациях см. в разделе Аннотирование визуализаций.
Прежде чем начать
Прежде чем создавать аннотации Elasticsearch, убедитесь, что у вас есть:
- Источник данных Elasticsearch, настроенный в Grafana
- Документы в Elasticsearch, содержащие данные о событиях с полями отметок времени
- Доступ на чтение к индексу Elasticsearch, содержащему ваши события
Создание запроса аннотации
Чтобы добавить аннотацию Elasticsearch на дашборд:
- Перейдите к дашборду, который хотите изменить, и нажмите Edit.
- Нажмите значок Add new element (синий знак «плюс»).
- Нажмите Annotation query.
- Введите имя запроса аннотации.
- Если вы не хотите использовать запрос аннотации сразу, снимите флажок Enabled.
- Выберите цвет маркеров событий аннотации.
- Выберите вариант в раскрывающемся списке Show annotation controls in, чтобы управлять тем, где на дашборде отображается аннотация.
- Выберите вариант в раскрывающемся списке Show in, чтобы управлять тем, на каких панелях отображается аннотация.
- Нажмите Open query editor, чтобы открыть диалоговое окно Annotation Query.
- Выберите ваш источник данных Elasticsearch в раскрывающемся списке Data source.
- Настройте запрос аннотации и сопоставления полей.
- (Необязательно) Нажмите Test annotation query, чтобы убедиться, что запрос работает правильно.
- Нажмите Close, когда завершите настройку запроса.
- Нажмите Save.
- (Необязательно) Введите описание внесённых изменений.
- Нажмите Save.
- Нажмите Exit edit.
Запрос
Используйте поле запроса, чтобы отфильтровать, какие документы Elasticsearch отображаются как аннотации. Запрос использует синтаксис запросов Lucene.
Примеры:
В запросах аннотаций можно использовать переменные шаблона. Например, service:$service фильтрует аннотации по выбранному значению переменной службы.
Сопоставления полей
Сопоставления полей сообщают Grafana, какие поля Elasticsearch содержат данные аннотации.
Time
Поле Time указывает, какое поле содержит отметку времени аннотации.
- По умолчанию:
@timestamp - Формат: поле должно содержать значение даты, которое распознаёт Elasticsearch.
Time End
Поле Time End указывает поле, содержащее время окончания для аннотаций-диапазонов. Аннотации-диапазоны отображаются на графике как затенённая область вместо одной вертикальной линии.
- По умолчанию: пусто (точечные аннотации)
- Сценарий использования: отображение окон обслуживания, инцидентов или любого события с длительностью.
Text
Поле Text указывает, какое поле содержит описание аннотации, отображаемое при наведении курсора на аннотацию.
- По умолчанию:
tags - Совет: используйте описательное поле, например
message,descriptionилиsummary.
Tags
Поле Tags указывает, какое поле содержит теги для аннотации. Теги помогают категоризировать и фильтровать аннотации.
- По умолчанию: пусто
- Формат: поле может содержать либо строку со значениями, разделёнными запятыми, либо массив строк.
Пример: аннотации развёртываний
Чтобы отображать события развёртывания в виде аннотаций:
- Создайте запрос аннотации со следующими настройками:
- Запрос:
type:deployment - Time:
@timestamp - Text:
message - Tags:
environment
- Запрос:
Эта конфигурация отображает события развёртывания с их сообщениями в качестве текста аннотации и среды в качестве тегов.
Пример: аннотации-диапазоны для инцидентов
Чтобы отображать инциденты с длительностью:
- Создайте запрос аннотации со следующими настройками:
- Запрос:
type:incident - Time:
start_time - Time End:
end_time - Text:
description - Tags:
severity
- Запрос:
Эта конфигурация отображает инциденты как затенённые области от времени начала до времени окончания.