API проблем v2 - GET-запрос с подробной информацией о проблемах

Материал из Документация Ключ-АСТРОМ

API проблем v2 - GET-запрос с подробной информацией о проблемах

Содержит все подробности указанной проблемы.

Запрос формирует полезную нагрузку application/json.

SaaS: https://{your-environment-id}.live.astromkey.com/api/v2/problems/{problemId}

Среда ActiveGate / Кластер ActiveGate: https://{your-activegate-domain}:9999/e/{your-environment-id}/api/v2/problems/{problemId}

Аутентификация

Для выполнения этого запроса вам потребуется токен доступа с областью действия problems.read.

Чтобы узнать, как получить и использовать его, см. раздел «Токены и аутентификация».

Параметры

Параметр Тип Описание В Необходимый
problemId string Идентификатор требуемой задачи. path Необходимый
fields string Список дополнительных проблемных свойств, которые можно добавить к ответу.

Доступны следующие свойства (все остальные свойства всегда включаются, и вы не можете удалить их из ответа):

  • evidenceDetails — Подробности о первопричине.
  • impactAnalysis — Анализ влияния проблемы на другие организации/пользователей.
  • recentComments — Список последних комментариев к проблеме.

Для добавления свойств укажите их в виде списка, разделенного запятыми (например, evidenceDetails,impactAnalysis). || query || Необязательный

Ответ

Некоторые модели JSON различаются в зависимости от типа модели. Чтобы найти все возможные варианты, обратитесь к разделу «Модели JSON».

Коды ответов

Код Тип Описание
200 Проблема Успех
4XX Оболочка ошибки Ошибка на стороне клиента.
5XX Оболочка ошибки Ошибка на стороне сервера.

Объекты тела ответа

Объект Problem

Свойства проблемы.

Элемент Тип Описание
affectedEntities EntityStub [] Список всех объектов, затронутых проблемой.
displayId string Идентификатор проблемы на экране.
endTime integer Отметка времени окончания проблемы в миллисекундах UTC.

Имеет значение -1, если проблема всё ещё не решена.

entityTags METag [] Список всех тегов сущностей, относящихся к проблеме.
evidenceDetails EvidenceDetails Подробное описание проблемы, представленное в качестве доказательства.
impactAnalysis ImpactAnalysis Список всех последствий данной проблемы.
impactLevel string Уровень воздействия проблемы. Он показывает, на что влияет проблема.

Этот элемент может содержать следующие значения:

  • APPLICATION
  • SERVICE
  • INFRASTRUCTURE
impactedEntities EntityStub [] Список всех организаций, затронутых данной проблемой.
k8s.cluster.name string [] Соответствующие имена кластеров Kubernetes.
k8s.cluster.uid string [] Соответствующие UID кластера Kubernetes.
k8s.namespace.name string [] Соответствующие имена пространств имен Kubernetes.
linkedProblemInfo LinkedProblem Свойства рассматриваемой проблемы.
managementZones ManagementZone [] Список всех зон управления, к которым относится проблема.
problemFilters AlertingProfileStub [] Список профилей оповещений, соответствующих проблеме.
problemId string Идентификатор проблемы.
recentComments CommentsList Список комментариев.
rootCauseEntity EntityStub Краткое описание контролируемого объекта.
severityLevel string Серьезность проблемы.

Этот элемент может содержать следующие значения:

  • AVAILABILITY
  • CUSTOM_ALERT
  • ERROR
  • INFO
  • MONITORING_UNAVAILABLE
  • PERFORMANCE
  • RESOURCE_CONTENTION
startTime integer Начальная метка времени возникновения проблемы в миллисекундах UTC.
status string Состояние проблемы.

Этот элемент может содержать следующие значения:

  • CLOSED
  • OPEN
title string Название проблемы, отображаемое в пользовательском интерфейсе.

Объект EntityStub

Краткое описание контролируемого объекта.

Элемент Тип Описание
entityId EntityId Краткое описание контролируемого объекта.
name string Название объекта.

В случае, если не был найден объект с соответствующим идентификатором, ответ не включается.

Объект EntityId

Краткое описание контролируемого объекта.

Элемент Тип Описание
id string Идентификатор сущности.
type string Тип сущности.

Объект METag

Метка отслеживаемого объекта.

Элемент Тип Описание
context string Источник тега, например, AWS или Cloud Foundry.

Пользовательские теги используют значение CONTEXTLESS.

key string Ключ к тегу.
stringRepresentation string Строковое представление тега.
value string Значение тега.

Объект EvidenceDetails

Подробное описание проблемы, представленное в качестве доказательства.

Элемент Тип Описание
details Evidence [] Список всех доказательств.
totalCount integer Общее количество доказательств наличия проблемы.

Объект Evidence

Свидетельство первопричины.

Фактический набор полей зависит от типа доказательств. Список фактических объектов можно найти в описании поля evidenceType или в разделе Problems API v2 - JSON models.

Элемент Тип Описание
displayName string Название доказательства, отображаемое на экране.
entity EntityStub Краткое описание контролируемого объекта.
evidenceType string Определяет фактический набор полей в зависимости от значения. См. один из следующих объектов:
  • EVENT -> Доказательства событий
  • METRIC -> MetricEvidence
  • TRANSACTIONAL -> Доказательства транзакций
  • MAINTENANCE_WINDOW -> MaintenanceWindowEvidence
  • AVAILABILITY_EVIDENCE -> Доказательства доступности

Этот элемент может содержать следующие значения:

  • AVAILABILITY_EVIDENCE
  • EVENT
  • MAINTENANCE_WINDOW
  • METRIC
  • TRANSACTIONAL
groupingEntity EntityStub Краткое описание контролируемого объекта.
rootCauseRelevant boolean Доказательства являются (true) или не являются (false) частью первопричины.
startTime integer Время начала сбора доказательств, в миллисекундах UTC.

Объект ImpactAnalysis

Список всех последствий данной проблемы.

Элемент Тип Описание
impacts Impact [] Список всех последствий данной проблемы.

Объект Impact

Анализ влияния проблемы на другие организации/пользователей.

Фактический набор полей зависит от типа воздействия. Список фактических объектов можно найти в описании поля impactType или в разделе Problems API v2 - JSON models.

Элемент Тип Описание
estimatedAffectedUsers integer Примерное количество пострадавших пользователей.
impactType string Определяет фактический набор полей в зависимости от значения. См. один из следующих объектов:
  • SERVICE -> Влияние на сервис
  • APPLICATION -> Влияние на приложение
  • MOBILE -> Мобильное влияние
  • CUSTOM_APPLICATION -> Влияние пользовательского приложения

Этот элемент может содержать следующие значения:

  • APPLICATION
  • CUSTOM_APPLICATION
  • MOBILE
  • SERVICE
impactedEntity EntityStub Краткое описание контролируемого объекта.

Объект LinkedProblem

Свойства рассматриваемой проблемы.

Элемент Тип Описание
displayId string Идентификатор проблемы на экране.
problemId string Идентификатор проблемы.

Объект ManagementZone

Краткое изображение зоны управления.

Элемент Тип Описание
id string Идентификатор зоны управления.
name string Название зоны управления.

Объект AlertingProfileStub

Краткое описание профиля оповещения.

Элемент Тип Описание
id string Идентификатор профиля оповещения.
name string Название профиля оповещения.

Объект CommentsList

Список комментариев.

Элемент Тип Описание
comments Comment [] Результаты поиска.
nextPageKey string Курсор для перехода на следующую страницу результатов. Имеет значение, соответствующее значению null на последней странице.

Используйте его в параметре запроса nextPageKey, чтобы получить последующие страницы результата.

pageSize integer Количество записей на странице.
totalCount integer Общее количество записей в результате.

Объект Comment

Комментарий к проблеме.

Элемент Тип Описание
authorName string Пользователь, написавший комментарий.
content string Текст комментария.
context string Контекст комментария.
createdAtTimestamp integer Отметка времени создания комментария в миллисекундах UTC.
id string Идентификатор комментария.

Объект ErrorEnvelope

Элемент Тип Описание
error Error -

Объект Error

Элемент Тип Описание
code integer Код состояния HTTP
constraintViolations ConstraintViolation [] Список нарушений ограничений
message string Сообщение об ошибке

Объект ConstraintViolation

Список нарушений ограничений

Элемент Тип Описание
location string -
message string -
parameterLocation string -

Этот элемент может содержать следующие значения:

  • HEADER
  • PATH
  • PAYLOAD_BODY
  • QUERY
path string -

Модели JSON тела ответа

Успешный ответ (200)

{
  "affectedEntities": [
    {
      "entityId": {
        "id": "string",
        "type": "string"
      },
      "name": "string"
    }
  ],
  "displayId": "string",
  "endTime": 1,
  "entityTags": [
    {
      "context": "string",
      "key": "string",
      "stringRepresentation": "string",
      "value": "string"
    }
  ],
  "evidenceDetails": {
    "details": [
      {
        "displayName": "string",
        "entity": { },
        "evidenceType": "AVAILABILITY_EVIDENCE",
        "groupingEntity": { },
        "rootCauseRelevant": true,
        "startTime": 1
      }
    ],
    "totalCount": 1
  },
  "impactAnalysis": {
    "impacts": [
      {
        "estimatedAffectedUsers": 1,
        "impactType": "APPLICATION",
        "impactedEntity": { }
      }
    ]
  },
  "impactLevel": "APPLICATION",
  "impactedEntities": [ { } ],
  "k8s.cluster.name": [ "string" ],
  "k8s.cluster.uid": [ "string" ],
  "k8s.namespace.name": [ "string" ],
  "linkedProblemInfo": {
    "displayId": "string",
    "problemId": "string"
  },
  "managementZones": [
    {
      "id": "string",
      "name": "string"
    }
  ],
  "problemFilters": [
    {
      "id": "string",
      "name": "string"
    }
  ],
  "problemId": "string",
  "recentComments": {
    "comments": [
      {
        "authorName": "string",
        "content": "string",
        "context": "string",
        "createdAtTimestamp": 1,
        "id": "string"
      }
    ],
    "nextPageKey": "AQAAABQBAAAABQ==",
    "pageSize": 1,
    "totalCount": 1
  },
  "rootCauseEntity": { },
  "severityLevel": "AVAILABILITY",
  "startTime": 1,
  "status": "CLOSED",
  "title": "string"
}

Ответ с ошибкой

{
  "error": {
    "code": 1,
    "constraintViolations": [
      {
        "location": "string",
        "message": "string",
        "parameterLocation": "HEADER",
        "path": "string"
      }
    ],
    "message": "string"
  }
}