API кэширования запросов и ресурсов

Warning

[ru] DOCS_SHARED: "docs/grafana/latest/developer-resources/api-reference/http-api/api-legacy/query_and_resource_caching.ru.md" ("/hugo/content/docs/grafana/latest/developer-resources/api-reference/http-api/api-legacy/query_and_resource_caching.ru.md:29:1") shared directory "docs/grafana/latest/shared" not found

Требования

Если вы используете Grafana Enterprise, для некоторых конечных точек потребуются определённые права. Дополнительные сведения см. в разделе Права управления доступом на основе ролей.

Включение кэширования для источника данных

POST /api/datasources/:dataSourceUID/cache/enable

Требуемые права

Пояснения см. в примечании во введении.

Действие Область
datasources.caching:write datasources:*

Примеры

Пример запроса:

http
POST /api/datasources/jZrmlLCGka/cache/enable HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer <SERVICE_ACCOUNT_TOKEN>

Пример ответа:

http
HTTP/1.1 200
Content-Type: application/json

{
   "message": "Data source cache enabled",
   "dataSourceID": 1,
   "dataSourceUID": "jZrmlLCGka",
   "enabled": true,
   "ttlQueriesMs": 300000,
   "ttlResourcesMs": 300000,
   "useDefaultTTL": true,
   "defaultTTLMs": 300000,
   "created": "2023-04-21T11:49:22-04:00",
   "updated": "2023-04-24T16:30:29-04:00"
}

Коды состояния

Код Описание
200 Кэширование успешно включено для источника данных
500 Непредвиденная ошибка. Подробности см. в теле ответа и/или журналах сервера.

Отключение кэширования для источника данных

POST /api/datasources/:dataSourceUID/cache/disable

Требуемые права

Пояснения см. в примечании во введении.

Действие Область
datasources.caching:write datasources:*

Примеры

Пример запроса:

http
POST /api/datasources/jZrmlLCGka/cache/disable HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer <SERVICE_ACCOUNT_TOKEN>

Пример ответа:

http
HTTP/1.1 200
Content-Type: application/json

{
   "message": "Data source cache disabled",
   "dataSourceID": 1,
   "dataSourceUID": "jZrmlLCGka",
   "enabled": false,
   "ttlQueriesMs": 300000,
   "ttlResourcesMs": 300000,
   "useDefaultTTL": true,
   "defaultTTLMs": 0,
   "created": "2023-04-21T11:49:22-04:00",
   "updated": "2023-04-24T16:30:31-04:00"
}

Коды состояния

Код Описание
200 Кэширование успешно включено для источника данных
500 Непредвиденная ошибка. Подробности см. в теле ответа и/или журналах сервера.

Очистка кэша для всех источников данных

POST /api/datasources/:dataSourceUID/cache/clean

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

Требуемые права

Пояснения см. в примечании во введении.

Действие Область
datasources.caching:write datasources:*

Примеры

Пример запроса:

http
POST /api/datasources/jZrmlLCGka/cache/clean HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer <SERVICE_ACCOUNT_TOKEN>

Пример ответа:

http
HTTP/1.1 200
Content-Type: application/json

{
   "message": "Data source cache cleaned",
   "dataSourceID": 1,
   "dataSourceUID": "jZrmlLCGka",
   "enabled": false,
   "ttlQueriesMs": 300000,
   "ttlResourcesMs": 300000,
   "useDefaultTTL": true,
   "defaultTTLMs": 0,
   "created": "2023-04-21T11:49:22-04:00",
   "updated": "2023-04-24T16:30:31-04:00"
}

Коды состояния

Код Описание
200 Кэширование успешно включено для источника данных
500 Непредвиденная ошибка. Подробности см. в теле ответа и/или журналах сервера.

Обновление конфигурации кэша для источника данных

POST /api/datasources/:dataSourceUID/cache

Требуемые права

Пояснения см. в примечании во введении.

Действие Область
datasources.caching:write datasources:*

Примеры

Пример запроса:

http
POST /api/datasources/jZrmlLCGka/cache HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer <SERVICE_ACCOUNT_TOKEN>

{
   "dataSourceID": 1,
   "dataSourceUID": "jZrmlLCGka",
   "enabled": true,
   "useDefaultTTL": false,
   "ttlQueriesMs": 60000,
   "ttlResourcesMs": 300000,
}

Схема тела JSON

Имя поля Тип данных Описание
dataSourceID number ID источника данных для настройки.
dataSourceUID string UID источника данных для настройки.
enabled boolean Включать ли кэширование для этого источника данных.
useDefaultTTL boolean Использовать ли заданный по умолчанию TTL (Time-To-Live) как для кэширования запросов, так и для кэширования ресурсов вместо значений, указанных пользователем.
ttlQueriesMs number TTL для кэширования запросов, в миллисекундах.
ttlResourcesMs number TTL для кэширования ресурсов, в миллисекундах.

Пример ответа:

http
HTTP/1.1 200
Content-Type: application/json

{
   "message": "Data source cache settings updated",
   "dataSourceID": 1,
   "dataSourceUID": "jZrmlLCGka",
   "enabled": true,
   "useDefaultTTL": false,
   "ttlQueriesMs": 60000,
   "ttlResourcesMs": 300000,
   "defaultTTLMs": 300000,
   "created": "2023-04-21T11:49:22-04:00",
   "updated": "2023-04-24T17:03:40-04:00"
}

Коды состояния

Код Описание
200 Кэширование успешно включено для источника данных
400 Ошибки запроса (некорректный json, отсутствующие или недопустимые поля и т. д.)
500 Непредвиденная ошибка. Подробности см. в теле ответа и/или журналах сервера.

Получение конфигурации кэша для источника данных

GET /api/datasources/:dataSourceUID/cache

Требуемые права

Пояснения см. в примечании во введении.

Действие Область
datasources.caching:read datasources:*

Примеры

Пример запроса:

http
GET /api/datasources/jZrmlLCGka/cache HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer <SERVICE_ACCOUNT_TOKEN>

Пример ответа:

http
HTTP/1.1 200
Content-Type: application/json

{
   "message": "Data source cache settings loaded",
   "dataSourceID": 1,
   "dataSourceUID": "jZrmlLCGka",
   "enabled": true,
   "useDefaultTTL": false,
   "ttlQueriesMs": 60000,
   "ttlResourcesMs": 300000,
   "defaultTTLMs": 300000,
   "created": "2023-04-21T11:49:22-04:00",
   "updated": "2023-04-24T17:03:40-04:00"
}

Коды состояния

Код Описание
200 Кэширование успешно включено для источника данных
500 Непредвиденная ошибка. Подробности см. в теле ответа и/или журналах сервера.