API истории запросов
Note
Starting in Grafana 13,
/apiendpoints are being deprecated in favor of the/apisroute. This change doesn’t disrupt or break your current setup. Legacy APIs are not being disabled and remain fully accessible and operative, but/apiroutes will no longer be updated.This API will not be migrated. Refer to API deprecation notes for more details and alternatives.
Этот API можно использовать для добавления запросов в историю запросов. Он требует, чтобы пользователь был авторизован и чтобы функция истории запросов была включена в файле конфигурации.
Добавление запроса в историю запросов
POST /api/query-history
Добавляет запрос в историю запросов.
Пример запроса:
POST /api/query-history HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer <SERVICE_ACCOUNT_TOKEN>
{
"datasourceUid": "PE1C5CBDA0504A6A3",
"queries": [
{
"refId": "A",
"key": "Q-87fed8e3-62ba-4eb2-8d2a-4129979bb4de-0",
"scenarioId": "csv_content",
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
}
}
]
}
Схема тела JSON:
- datasourceUid – uid источника данных.
- queries – JSON запроса или запросов.
Пример ответа:
HTTP/1.1 200
Content-Type: application/json
{
"result": {
"uid": "Ahg678z",
"datasourceUid": "PE1C5CBDA0504A6A3",
"createdBy": 1,
"createdAt": 1643630762,
"starred": false,
"comment": "",
"queries": [
{
"refId": "A",
"key": "Q-87fed8e3-62ba-4eb2-8d2a-4129979bb4de-0",
"scenarioId": "csv_content",
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
}
}
]
}
}
Коды состояния:
- 200 – OK
- 400 — Ошибки (некорректный JSON, отсутствующие или недопустимые поля)
- 401 – Не авторизован
- 500 – Внутренняя ошибка
Поиск по истории запросов
GET /api/query-history
Возвращает список запросов в истории запросов, соответствующих критериям поиска. Поиск по истории запросов поддерживает постраничную выдачу. Используйте параметр limit, чтобы управлять максимальным количеством возвращаемых запросов; предел по умолчанию — 100. Также можно использовать параметр запроса page, чтобы получить запросы с любой страницы, кроме первой.
Параметры запроса:
- datasourceUid — фильтрует историю запросов по выбранному источнику данных. Чтобы выполнить фильтрацию по принципу «И» с несколькими источниками данных, укажите параметр источника данных в следующем формате:
datasourceUid=uid1&datasourceUid=uid2. - searchString – фильтрует историю запросов по содержимому.
- sort — задаёт порядок сортировки. Сортировка может быть
time-ascилиtime-desc. По умолчаниюtime-desc. - onlyStarred — искать только запросы, отмеченные звёздочкой. По умолчанию
false. - page — поиск поддерживает постраничную выдачу. Указывает, какую страницу вернуть. Используйте параметр limit, чтобы задать количество запросов на странице.
- limit — ограничивает количество возвращаемых элементов истории запросов на странице. По умолчанию 100 запросов на странице.
- from/to — задаёт временной диапазон для поиска по истории запросов. Время может быть либо меткой времени epoch в миллисекундах, либо относительным с использованием единиц времени Grafana. Например, now-5m.
Пример запроса для поиска по истории запросов:
GET /api/query-history?datasourceUid="PE1C5CBDA0504A6A3"&datasourceUid="FG1C1CBDA0504A6EL"&searchString="ALERTS"&sort="time-asc" HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer <SERVICE_ACCOUNT_TOKEN>
Пример ответа для поиска по истории запросов:
HTTP/1.1 200
Content-Type: application/json
{
"result": {
"totalCount": 150,
"page": 1,
"perPage": 100
"queryHistory":[{
"uid": "Ahg678z",
"datasourceUid": "PE1C5CBDA0504A6A3",
"createdBy": 1,
"createdAt": 1643630762,
"starred": false,
"comment": "",
"queries": [
{
"refId": "A",
"key": "Q-87fed8e3-62ba-4eb2-8d2a-4129979bb4de-0",
"scenarioId": "csv_content",
"datasource": {
"type": "testdata",
"uid": "PE1C5CBDA0504A6A3"
}
}
]
}]
}
Коды состояния:
- 200 – OK
- 401 – Не авторизован
- 500 – Внутренняя ошибка
Удаление запроса из истории запросов по UID
DELETE /api/query-history/:uid
Удаляет запрос в истории запросов, соответствующий указанному uid. Требует, чтобы пользователь был авторизован и чтобы функция истории запросов была включена в файле конфигурации.
Пример запроса:
DELETE /api/query-history/P8zM2I1nz HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer <SERVICE_ACCOUNT_TOKEN>
Пример ответа:
HTTP/1.1 200
Content-Type: application/json
{
"message": "Query deleted",
"id": 28
}
Коды состояния:
- 200 – OK
- 401 – Не авторизован
- 500 – Внутренняя ошибка
Обновление комментария к запросу в истории запросов по UID
PATCH /api/query-history/:uid
Обновляет комментарий к запросу с определённым uid, хранящемуся в истории запросов.
Параметры запроса:
- comment – новый комментарий, который будет добавлен к указанному запросу.
Пример запроса:
PATCH /api/query-history/P8zM2I1nz HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer <SERVICE_ACCOUNT_TOKEN>
{
"comment": "Debugging query",
}
Пример ответа:
HTTP/1.1 200
Content-Type: application/json
{
"result": {
"uid": "P8zM2I1nz",
"datasourceUid": "PE1C5CBDA0504A6A3",
"createdBy": 1,
"createdAt": 1643630762,
"starred": false,
"comment": "Debugging query",
"queries": [
{
"refId": "A",
"key": "Q-87fed8e3-62ba-4eb2-8d2a-4129979bb4de-0",
"scenarioId": "csv_content",
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
}
}
]
}
}
Коды состояния:
- 200 – OK
- 400 — Ошибки (некорректный JSON, отсутствующие или недопустимые поля)
- 401 – Не авторизован
- 500 – Внутренняя ошибка
Добавление запроса в избранное в истории запросов
POST /api/query-history/star/:uid
Добавляет запрос в избранное в истории запросов.
Пример запроса:
POST /api/query-history/star/P8zM2I1nz HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer <SERVICE_ACCOUNT_TOKEN>
Пример ответа:
HTTP/1.1 200
Content-Type: application/json
{
"result": {
"uid": "P8zM2I1nz",
"datasourceUid": "PE1C5CBDA0504A6A3",
"createdBy": 1,
"createdAt": 1643630762,
"starred": false,
"comment": "Debugging query",
"queries": [
{
"refId": "A",
"key": "Q-87fed8e3-62ba-4eb2-8d2a-4129979bb4de-0",
"scenarioId": "csv_content",
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
}
}
]
}
}
Коды состояния:
- 200 – OK
- 401 – Не авторизован
- 500 – Внутренняя ошибка
Удаление запроса из избранного в истории запросов
DELETE /api/query-history/star/:uid
Убирает звёздочку с запроса в истории запросов.
Пример запроса:
DELETE /api/query-history/star/P8zM2I1nz HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer <SERVICE_ACCOUNT_TOKEN>
Пример ответа:
HTTP/1.1 200
Content-Type: application/json
{
"result": {
"uid": "P8zM2I1nz",
"datasourceUid": "PE1C5CBDA0504A6A3",
"createdBy": 1,
"createdAt": 1643630762,
"starred": false,
"comment": "Debugging query",
"queries": [
{
"refId": "A",
"key": "Q-87fed8e3-62ba-4eb2-8d2a-4129979bb4de-0",
"scenarioId": "csv_content",
"datasource": {
"type": "testdata",
"uid": "PD8C576611E62080A"
}
}
]
}
}
Коды состояния:
- 200 – OK
- 401 – Не авторизован
- 500 – Внутренняя ошибка