Spec-Zone.ru › OpenTSDB

/api/annotation/bulk

ПРИМЕЧАНИЕ: (Версия 2.1) Конечная точка bulk позволяет добавлять, обновлять или удалять несколько аннотаций в одном вызове. Обновления аннотаций должны отправляться с помощью PUT или POST в качестве данных содержимого. Запросы с параметрами запроса не поддерживаются для POST или GET. Каждая аннотация обрабатывается индивидуально и синхронизируется с сервером. Если у одной из аннотаций возникнет ошибка, например, отсутствует поле, будет возвращено исключение, и некоторые аннотации могут не быть записаны в хранилище. В таком случае некорректную аннотацию следует исправить, и все аннотации следует отправить снова.

Аннотации также могут быть удалены в пакетном режиме для указанного временного интервала. Если вы предоставите список одного или нескольких TSUIDs, аннотации с start time, который попадает в указанный временной интервал и относится к этим TSUIDs, будут удалены. В качестве альтернативы можно установить флаг global, и любые глобальные аннотации (те, которые не связаны с временным рядом) будут удалены в заданном диапазоне.

Глаголы

  • POST - Создать или изменить аннотации
  • PUT - Создать или заменить аннотации
  • DELETE - Удалить аннотации в течение определенного временного интервала

Запросы

Поля для отправки или обновления аннотаций документированы в /api/annotation

Поля для запроса пакетного удаления определены ниже:

Имя Тип данных Обязательно Описание Значение по умолчанию QS RW Пример
startTime Целое число Обязательно Отметка времени начала запроса. Отметка времени может быть относительной или абсолютной, как указано в Даты и время. start_time RO 1369141261
endTime Целое число Необязательно Необязательная конечная отметка времени события, если оно завершено или разрешено. Отметка времени может быть относительной или абсолютной, как указано в Даты и время. end_time RO 1369141262
tsuids Массив Необязательно Список TSUIDs с аннотациями, которые должны быть удалены. Может быть пустым или нулевым (для JSON), в этом случае должен быть установлен флаг global. При использовании параметра запроса разделять TSUIDs запятыми. tsuids RO 000001000001000001, 000001000001000002
global Булево Необязательно Удалить ли глобальные аннотации для указанного диапазона false global RO true

Предупреждение

Если ваш запрос использует PUT, любые поля, которые вы не предоставили в запросе, будут перезаписаны своими значениями по умолчанию. Например, поле description будет установлено в пустую строку, а поле custom будет сброшено до null.

Пример запроса POST/PUT

[
  {
  "startTime":"1369141261",
  "tsuid":"000001000001000001",
  "description": "Testing Annotations",
  "notes": "These would be details about the event, the description is just a summary",
  "custom": {
    "owner": "jdoe",
    "dept": "ops"
  }
  },
  {
  "startTime":"1369141261",
  "tsuid":"000001000001000002",
  "description": "Second annotation on different TSUID",
  "notes": "Additional details"
  }
]

Пример запроса DELETE QS

/api/annotation/bulk?start_time=1d-ago&end_time=1h-ago&method_override=delete&tsuids=000001000001000001,000001000001000002

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

{
  "tsuids": [
    "000001000001000001",
    "000001000001000002"
  ],
  "global": false,
  "startTime": 1389740544690,
  "endTime": 1389823344698,
  "totalDeleted": 0
}

Ответ

Успешный ответ на запрос POST или PUT вернет список аннотаций после синхронизации (т. е. если вы выполняете вызов POST, существующие объекты будут объединены с новыми объектами). Запросы удаления вернут объект с запросом удаления и полем totalDeleted, содержащим целое число, отражающее общее количество удаленных аннотаций. Если были предоставлены некорректные данные, будет возвращена ошибка 400, а также конкретная аннотация, вызвавшая ошибку, в поле details объекта ошибки.

Пример ответа POST/PUT

[
  {
    "tsuid": "000001000001000001",
    "description": "Testing Annotations",
    "notes": "These would be details about the event, the description is just a summary",
    "custom": {
      "owner": "jdoe",
      "dept": "ops"
    },
    "endTime": 0,
    "startTime": 1369141261
  },
  {
    "tsuid": "000001000001000002",
    "description": "Second annotation on different TSUID",
    "notes": "Additional details",
    "custom": null,
    "endTime": 0,
    "startTime": 1369141261
  }
]

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

{
  "tsuids": [
    "000001000001000001",
    "000001000001000002"
  ],
  "global": false,
  "startTime": 1389740544690,
  "endTime": 1389823344698,
  "totalDeleted": 42
}

© 2010–2016 The OpenTSDB Authors
Licensed under the GNU LGPLv2.1+ and GPLv3+ licenses.
http://opentsdb.net/docs/build/html/api_http/annotation/bulk.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API