Spec-Zone.ru › OpenTSDB

/api/uid/assign

Этот конечный пункт позволяет назначать UIDs новым метрикам, именам тегов и значениям тегов. Несколько типов и имен могут быть предоставлены в одном вызове, и API обработает каждое имя индивидуально, сообщив, какие имена были успешно назначены UIDs вместе с назначенным UID, а какие не удалось из-за недопустимых символов или они уже были назначены. Назначение может быть выполнено через строку запроса или данные содержимого.

Глаголы

  • GET
  • POST

Запросы

Каждый запрос должен содержать одно или несколько из следующих полей:

Имя Тип данных Обязательное Описание По умолчанию QS RW Пример
metric Строка Необязательно Список имен метрик для назначения metric RW sys.cpu.0
tagk Строка Необязательно Список имён тегов для назначения tagk RW host
tagv Строка Необязательно Список значений тегов для назначения tagv RW web01

При выполнении запроса со строкой запроса, несколько имён для данного типа можно предоставить, разделив их запятыми. Например: metric=sys.cpu.0,sys.cpu.1,sys.cpu.2,sys.cpu.3. Применяются соглашения об именовании: см. _______.

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

Строка запроса

http://localhost:4242/api/uid/assign?metric=sys.cpu.0,sys.cpu.1&tagk=host&tagv=web01,web02,web03

JSON-содержимое

{
  "metric": [
    "sys.cpu.0",
    "sys.cpu.1",
    "illegal!character"
  ],
  "tagk": [
    "host"
  ],
  "tagv": [
    "web01",
    "web02",
    "web03"
  ]
}

Ответ

Ответ будет содержать карту успешных назначений вместе с шестнадцатеричным кодированным значением UID. Если одно или несколько значений не были назначены, отдельный массив будет содержать список значений и причину, по которой они не были назначены. Карты с именем типа и <type>_errors будут сгенерированы только в том случае, если для данного типа были предоставлены одно или несколько значений.

Если все значения назначены, конечная точка возвращает код состояния 200, но если любое значение не было назначено, она вернёт 400.

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

{
  "metric": {},
  "metric_errors": {
    "sys.cpu.0": "Name already exists with UID: 000042",
    "sys.cpu.1": "Name already exists with UID: 000043",
    "illegal!character": "Invalid metric (illegal!character): illegal character: !",
  },
  "tagv": {},
  "tagk_errors": {
    "host": "Name already exists with UID: 0007E5"
  },
  "tagk": {
    "web01": "000012",
    "web02": "000013",
    "web03": "000014"
  }
}

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

Spec-Zone.ru

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