Grafana
Взаимодействие с дашбордами, алертами и аннотациями Grafana
Grafana — это ведущая платформа с открытым исходным кодом для мониторинга, наблюдаемости и визуализации. Она позволяет пользователям запрашивать, визуализировать, настраивать оповещения и анализировать данные из различных источников, что делает ее важным инструментом для мониторинга инфраструктуры и приложений.
С помощью Grafana вы можете:
- Визуализировать данные: Создавать и настраивать дашборды для отображения метрик, логов и трассировок в реальном времени
- Мониторить состояние и статус: Проверять состояние вашего экземпляра Grafana и подключенных источников данных
- Управлять алертами и аннотациями: Настраивать правила оповещений, управлять уведомлениями и аннотировать дашборды важными событиями
- Организовывать контент: Организовывать дашборды и источники данных в папки для лучшего управления доступом
В AACFlow интеграция Grafana позволяет вашим агентам напрямую взаимодействовать с вашим экземпляром Grafana через API, обеспечивая такие действия, как:
- Проверка состояния сервера Grafana, базы данных и источников данных
- Получение, перечисление и управление дашбордами, правилами алертов, аннотациями, источниками данных и папками
- Автоматизация мониторинга вашей инфраструктуры путем интеграции данных и алертов Grafana в ваши рабочие процессы автоматизации
Эти возможности позволяют агентам AACFlow мониторить системы, проактивно реагировать на алерты и помогать обеспечивать надежность и видимость ваших сервисов — все в рамках ваших автоматизированных рабочих процессов.
Интегрируйте Grafana в рабочие процессы. Управляйте дашбордами, алертами, аннотациями, источниками данных, папками и мониторьте состояние.
Получить дашборд по его UID
| Параметр | Тип | Обязательный | Описание |
|---|
apiKey | string | Да | Токен сервисного аккаунта Grafana |
baseUrl | string | Да | URL экземпляра Grafana (например, https://your-grafana.com) |
organizationId | string | Нет | ID организации для многопользовательских экземпляров Grafana (например, 1, 2) |
dashboardUid | string | Да | UID дашборда для получения (например, abc123def) |
| Параметр | Тип | Описание |
|---|
dashboard | json | Полный JSON-объект дашборда |
meta | json | Метаданные дашборда (версия, разрешения и т.д.) |
Поиск и перечисление всех дашбордов
| Параметр | Тип | Обязательный | Описание |
|---|
apiKey | string | Да | Токен сервисного аккаунта Grafana |
baseUrl | string | Да | URL экземпляра Grafana (например, https://your-grafana.com) |
organizationId | string | Нет | ID организации для многопользовательских экземпляров Grafana (например, 1, 2) |
query | string | Нет | Поисковый запрос для фильтрации дашбордов по заголовку |
tag | string | Нет | Фильтр по тегу (через запятую для нескольких тегов) |
folderIds | string | Нет | Фильтр по ID папок (через запятую, например, 1,2,3) |
starred | boolean | Нет | Возвращать только избранные дашборды |
limit | number | Нет | Максимальное количество возвращаемых дашбордов |
| Параметр | Тип | Описание |
|---|
dashboards | array | Список результатов поиска дашбордов |
↳ id | number | ID дашборда |
↳ uid | string | UID дашборда |
↳ title | string | Заголовок дашборда |
↳ url | string | URL-путь дашборда |
↳ tags | array | Теги дашборда |
↳ folderTitle | string | Заголовок родительской папки |
Создать новый дашборд
| Параметр | Тип | Обязательный | Описание |
|---|
apiKey | string | Да | Токен сервисного аккаунта Grafana |
baseUrl | string | Да | URL экземпляра Grafana (например, https://your-grafana.com) |
organizationId | string | Нет | ID организации для многопользовательских экземпляров Grafana (например, 1, 2) |
title | string | Да | Заголовок нового дашборда |
folderUid | string | Нет | UID папки для создания дашборда (например, folder-abc123) |
tags | string | Нет | Список тегов через запятую |
timezone | string | Нет | Часовой пояс дашборда (например, browser, utc) |
refresh | string | Нет | Интервал автообновления (например, 5s, 1m, 5m) |
panels | string | Нет | JSON-массив конфигураций панелей |
overwrite | boolean | Нет | Перезаписать существующий дашборд с таким же заголовком |
message | string | Нет | Сообщение коммита для версии дашборда |
| Параметр | Тип | Описание |
|---|
id | number | Числовой ID созданного дашборда |
uid | string | UID созданного дашборда |
url | string | URL-путь к дашборду |
status | string | Статус операции (success) |
version | number | Номер версии дашборда |
slug | string | URL-дружественный слаг дашборда |
Обновить существующий дашборд. Получает текущий дашборд и объединяет ваши изменения.
| Параметр | Тип | Обязательный | Описание |
|---|
apiKey | string | Да | Токен сервисного аккаунта Grafana |
baseUrl | string | Да | URL экземпляра Grafana (например, https://your-grafana.com) |
organizationId | string | Нет | ID организации для многопользовательских экземпляров Grafana (например, 1, 2) |
dashboardUid | string | Да | UID дашборда для обновления (например, abc123def) |
title | string | Нет | Новый заголовок для дашборда |
folderUid | string | Нет | Новый UID папки для перемещения дашборда (например, folder-abc123) |
tags | string | Нет | Список новых тегов через запятую |
timezone | string | Нет | Часовой пояс дашборда (например, browser, utc) |
refresh | string | Нет | Интервал автообновления (например, 5s, 1m, 5m) |
panels | string | Нет | JSON-массив конфигураций панелей |
overwrite | boolean | Нет | Перезаписать даже при конфликте версий |
message | string | Нет | Сообщение коммита для этой версии |
| Параметр | Тип | Описание |
|---|
id | number | Числовой ID обновленного дашборда |
uid | string | UID обновленного дашборда |
url | string | URL-путь к дашборду |
status | string | Статус операции (success) |
version | number | Новый номер версии дашборда |
slug | string | URL-дружественный слаг дашборда |
Удалить дашборд по его UID
| Параметр | Тип | Обязательный | Описание |
|---|
apiKey | string | Да | Токен сервисного аккаунта Grafana |
baseUrl | string | Да | URL экземпляра Grafana (например, https://your-grafana.com) |
organizationId | string | Нет | ID организации для многопользовательских экземпляров Grafana (например, 1, 2) |
dashboardUid | string | Да | UID дашборда для удаления (например, abc123def) |
| Параметр | Тип | Описание |
|---|
title | string | Заголовок удаленного дашборда |
message | string | Сообщение подтверждения |
id | number | ID удаленного дашборда |
Перечислить все правила алертов в экземпляре Grafana
| Параметр | Тип | Обязательный | Описание |
|---|
apiKey | string | Да | Токен сервисного аккаунта Grafana |
baseUrl | string | Да | URL экземпляра Grafana (например, https://your-grafana.com) |
organizationId | string | Нет | ID организации для многопользовательских экземпляров Grafana (например, 1, 2) |
| Параметр | Тип | Описание |
|---|
rules | array | Список правил алертов |
↳ uid | string | UID правила алерта |
↳ title | string | Заголовок правила алерта |
↳ condition | string | Условие алерта |
↳ folderUID | string | UID родительской папки |
↳ ruleGroup | string | Имя группы правил |
↳ noDataState | string | Состояние при отсутствии данных |
↳ execErrState | string | Состояние при ошибке выполнения |
Получить конкретное правило алерта по его UID
| Параметр | Тип | Обязательный | Описание |
|---|
apiKey | string | Да | Токен сервисного аккаунта Grafana |
baseUrl | string | Да | URL экземпляра Grafana (например, https://your-grafana.com) |
organizationId | string | Нет | ID организации для многопользовательских экземпляров Grafana (например, 1, 2) |
alertRuleUid | string | Да | UID правила алерта для получения |
| Параметр | Тип | Описание |
|---|
uid | string | UID правила алерта |
title | string | Заголовок правила алерта |
condition | string | Условие алерта |
data | json | Данные запроса правила алерта |
folderUID | string | UID родительской папки |
ruleGroup | string | Имя группы правил |
noDataState | string | Состояние при отсутствии данных |
execErrState | string | Состояние при ошибке выполнения |
annotations | json | Аннотации алерта |
labels | json | Метки алерта |
Создать новое правило алерта
| Параметр | Тип | Обязательный | Описание |
|---|
apiKey | string | Да | Токен сервисного аккаунта Grafana |
baseUrl | string | Да | URL экземпляра Grafana (например, https://your-grafana.com) |
organizationId | string | Нет | ID организации для многопользовательских экземпляров Grafana (например, 1, 2) |
title | string | Да | Заголовок правила алерта |
folderUid | string | Да | UID папки для создания алерта (например, folder-abc123) |
ruleGroup | string | Да | Имя группы правил |
condition | string | Да | refId запроса или выражения для использования в качестве условия алерта |
data | string | Да | JSON-массив объектов данных запроса/выражения |
forDuration | string | Нет | Длительность ожидания перед срабатыванием (например, 5m, 1h) |
noDataState | string | Нет | Состояние при отсутствии данных (NoData, Alerting, OK) |
execErrState | string | Нет | Состояние при ошибке выполнения (Alerting, OK) |
annotations | string | Нет | JSON-объект аннотаций |
labels | string | Нет | JSON-объект меток |
| Параметр | Тип | Описание |
|---|
uid | string | UID созданного правила алерта |
title | string | Заголовок правила алерта |
folderUID | string | UID родительской папки |
ruleGroup | string | Имя группы правил |
Обновить существующее правило алерта. Получает текущее правило и объединяет ваши изменения.
| Параметр | Тип | Обязательный | Описание |
|---|
apiKey | string | Да | Токен сервисного аккаунта Grafana |
baseUrl | string | Да | URL экземпляра Grafana (например, https://your-grafana.com) |
organizationId | string | Нет | ID организации для многопользовательских экземпляров Grafana (например, 1, 2) |
alertRuleUid | string | Да | UID правила алерта для обновления |
title | string | Нет | Новый заголовок для правила алерта |
folderUid | string | Нет | Новый UID папки для перемещения алерта (например, folder-abc123) |
ruleGroup | string | Нет | Новое имя группы правил |
condition | string | Нет | Новый refId условия |
data | string | Нет | Новый JSON-массив объектов данных запроса/выражения |
forDuration | string | Нет | Длительность ожидания перед срабатыванием (например, 5m, 1h) |
noDataState | string | Нет | Состояние при отсутствии данных (NoData, Alerting, OK) |
execErrState | string | Нет | Состояние при ошибке выполнения (Alerting, OK) |
annotations | string | Нет | JSON-объект аннотаций |
labels | string | Нет | JSON-объект меток |
| Параметр | Тип | Описание |
|---|
uid | string | UID обновленного правила алерта |
title | string | Заголовок правила алерта |
folderUID | string | UID родительской папки |
ruleGroup | string | Имя группы правил |
Удалить правило алерта по его UID
| Параметр | Тип | Обязательный | Описание |
|---|
apiKey | string | Да | Токен сервисного аккаунта Grafana |
baseUrl | string | Да | URL экземпляра Grafana (например, https://your-grafana.com) |
organizationId | string | Нет | ID организации для многопользовательских экземпляров Grafana (например, 1, 2) |
alertRuleUid | string | Да | UID правила алерта для удаления |
| Параметр | Тип | Описание |
|---|
message | string | Сообщение подтверждения |
Перечислить все контактные точки уведомлений алертов
| Параметр | Тип | Обязательный | Описание |
|---|
apiKey | string | Да | Токен сервисного аккаунта Grafana |
baseUrl | string | Да | URL экземпляра Grafana (например, https://your-grafana.com) |
organizationId | string | Нет | ID организации для многопользовательских экземпляров Grafana (например, 1, 2) |
| Параметр | Тип | Описание |
|---|
contactPoints | array | Список контактных точек |
↳ uid | string | UID контактной точки |
↳ name | string | Имя контактной точки |
↳ type | string | Тип уведомления (email, slack и т.д.) |
↳ settings | object | Настройки, специфичные для типа |
Создать аннотацию на дашборде или как глобальную аннотацию
| Параметр | Тип | Обязательный | Описание |
|---|
apiKey | string | Да | Токен сервисного аккаунта Grafana |
baseUrl | string | Да | URL экземпляра Grafana (например, https://your-grafana.com) |
organizationId | string | Нет | ID организации для многопользовательских экземпляров Grafana (например, 1, 2) |
text | string | Да | Текстовое содержимое аннотации |
tags | string | Нет | Список тегов через запятую |
dashboardUid | string | Да | UID дашборда для добавления аннотации (например, abc123def) |
panelId | number | Нет | ID панели для добавления аннотации (например, 1, 2) |
time | number | Нет | Время начала в миллисекундах эпохи (например, 1704067200000, по умолчанию сейчас) |
timeEnd | number | Нет | Время окончания в миллисекундах эпохи для диапазонных аннотаций (например, 1704153600000) |
| Параметр | Тип | Описание |
|---|
id | number | ID созданной аннотации |
message | string | Сообщение подтверждения |
Запрос аннотаций по временному диапазону, дашборду или тегам
| Параметр | Тип | Обязательный | Описание |
|---|
apiKey | string | Да | Токен сервисного аккаунта Grafana |
baseUrl | string | Да | URL экземпляра Grafana (например, https://your-grafana.com) |
organizationId | string | Нет | ID организации для многопользовательских экземпляров Grafana (например, 1, 2) |
from | number | Нет | Время начала в миллисекундах эпохи (например, 1704067200000) |
to | number | Нет | Время окончания в миллисекундах эпохи (например, 1704153600000) |
dashboardUid | string | Да | UID дашборда для запроса аннотаций (например, abc123def) |
panelId | number | Нет | Фильтр по ID панели (например, 1, 2) |
tags | string | Нет | Список тегов через запятую для фильтрации |
type | string | Нет | Фильтр по типу (alert или annotation) |
limit | number | Нет | Максимальное количество возвращаемых аннотаций |
| Параметр | Тип | Описание |
|---|
annotations | array | Список аннотаций |
↳ id | number | ID аннотации |
↳ dashboardId | number | ID дашборда |
↳ dashboardUID | string | UID дашборда |
↳ created | number | Временная метка создания в мс эпохи |
↳ updated | number | Временная метка последнего обновления в мс эпохи |
↳ time | number | Время начала в мс эпохи |
↳ timeEnd | number | Время окончания в мс эпохи |
↳ text | string | Текст аннотации |
↳ tags | array | Теги аннотации |
↳ login | string | Логин пользователя, создавшего аннотацию |
↳ email | string | Email пользователя, создавшего аннотацию |
↳ avatarUrl | string | URL аватара пользователя |
↳ data | json | Дополнительный объект данных аннотации из Grafana |
Обновить существующую аннотацию
| Параметр | Тип | Обязательный | Описание |
|---|
apiKey | string | Да | Токен сервисного аккаунта Grafana |
baseUrl | string | Да | URL экземпляра Grafana (например, https://your-grafana.com) |
organizationId | string | Нет | ID организации для многопользовательских экземпляров Grafana (например, 1, 2) |
annotationId | number | Да | ID аннотации для обновления |
text | string | Да | Новое текстовое содержимое для аннотации |
tags | string | Нет | Список новых тегов через запятую |
time | number | Нет | Новое время начала в миллисекундах эпохи (например, 1704067200000) |
timeEnd | number | Нет | Новое время окончания в миллисекундах эпохи (например, 1704153600000) |
| Параметр | Тип | Описание |
|---|
id | number | ID обновленной аннотации |
message | string | Сообщение подтверждения |
Удалить аннотацию по ее ID
| Параметр | Тип | Обязательный | Описание |
|---|
apiKey | string | Да | Токен сервисного аккаунта Grafana |
baseUrl | string | Да | URL экземпляра Grafana (например, https://your-grafana.com) |
organizationId | string | Нет | ID организации для многопользовательских экземпляров Grafana (например, 1, 2) |
annotationId | number | Да | ID аннотации для удаления |
| Параметр | Тип | Описание |
|---|
message | string | Сообщение подтверждения |
Перечислить все источники данных, настроенные в Grafana
| Параметр | Тип | Обязательный | Описание |
|---|
apiKey | string | Да | Токен сервисного аккаунта Grafana |
baseUrl | string | Да | URL экземпляра Grafana (например, https://your-grafana.com) |
organizationId | string | Нет | ID организации для многопользовательских экземпляров Grafana (например, 1, 2) |
| Параметр | Тип | Описание |
|---|
dataSources | array | Список источников данных |
↳ id | number | ID источника данных |
↳ uid | string | UID источника данных |
↳ name | string | Имя источника данных |
↳ type | string | Тип источника данных (prometheus, mysql и т.д.) |
↳ url | string | URL источника данных |
↳ isDefault | boolean | Является ли этот источник данных источником по умолчанию |
Получить источник данных по его ID или UID
| Параметр | Тип | Обязательный | Описание |
|---|
apiKey | string | Да | Токен сервисного аккаунта Grafana |
baseUrl | string | Да | URL экземпляра Grafana (например, https://your-grafana.com) |
organizationId | string | Нет | ID организации для многопользовательских экземпляров Grafana (например, 1, 2) |
dataSourceId | string | Да | ID или UID источника данных для получения (например, prometheus, P1234AB5678) |
| Параметр | Тип | Описание |
|---|
id | number | ID источника данных |
uid | string | UID источника данных |
name | string | Имя источника данных |
type | string | Тип источника данных |
url | string | URL подключения источника данных |
database | string | Имя базы данных (если применимо) |
isDefault | boolean | Является ли этот источник данных источником по умолчанию |
jsonData | json | Дополнительная конфигурация источника данных |
Перечислить все папки в Grafana
| Параметр | Тип | Обязательный | Описание |
|---|
apiKey | string | Да | Токен сервисного аккаунта Grafana |
baseUrl | string | Да | URL экземпляра Grafana (например, https://your-grafana.com) |
organizationId | string | Нет | ID организации для многопользовательских экземпляров Grafana (например, 1, 2) |
limit | number | Нет | Максимальное количество возвращаемых папок |
page | number | Нет | Номер страницы для пагинации |
| Параметр | Тип | Описание |
|---|
folders | array | Список папок |
↳ id | number | ID папки |
↳ uid | string | UID папки |
↳ title | string | Заголовок папки |
↳ hasAcl | boolean | Имеет ли папка пользовательские разрешения ACL |
↳ canSave | boolean | Может ли текущий пользователь сохранять папку |
↳ canEdit | boolean | Может ли текущий пользователь редактировать папку |
↳ canAdmin | boolean | Имеет ли текущий пользователь права администратора |
↳ canDelete | boolean | Может ли текущий пользователь удалять папку |
↳ createdBy | string | Имя пользователя, создавшего папку |
↳ created | string | Временная метка создания папки |
↳ updatedBy | string | Имя пользователя, последнего обновившего папку |
↳ updated | string | Временная метка последнего обновления папки |
↳ version | number | Номер версии папки |
Создать новую папку в Grafana
| Параметр | Тип | Обязательный | Описание |
|---|
apiKey | string | Да | Токен сервисного аккаунта Grafana |
baseUrl | string | Да | URL экземпляра Grafana (например, https://your-grafana.com) |
organizationId | string | Нет | ID организации для многопользовательских экземпляров Grafana (например, 1, 2) |
title | string | Да | Заголовок новой папки |
uid | string | Нет | Необязательный UID для папки (автогенерируется, если не предоставлен) |
| Параметр | Тип | Описание |
|---|
id | number | Числовой ID созданной папки |
uid | string | UID созданной папки |
title | string | Заголовок созданной папки |
url | string | URL-путь к папке |
hasAcl | boolean | Имеет ли папка пользовательские разрешения ACL |
canSave | boolean | Может ли текущий пользователь сохранять папку |
canEdit | boolean | Может ли текущий пользователь редактировать папку |
canAdmin | boolean | Имеет ли текущий пользователь права администратора на папку |
canDelete | boolean | Может ли текущий пользователь удалять папку |
createdBy | string | Имя пользователя, создавшего папку |
created | string | Временная метка создания папки |
updatedBy | string | Имя пользователя, последнего обновившего папку |
updated | string | Временная метка последнего обновления папки |
version | number | Номер версии папки |