Размещение события
API Ключ-АСТРОМ / Эндпойнты среды / Развёртывание / События v1 / Размешение события
Эта функция отправляет пользовательские события из сторонних интеграций в один или несколько отслеживаемых объектов.
Этот эндпойнт позволяет сторонним системам, таким как платформы непрерывной интеграции (Jenkins, Bamboo, Electric Cloud и т. д.), предоставлять дополнительные сведения в Ключ-АСТРОМ для автоматического анализа первопричин.
Вы можете использовать этот эндпойнт для:
- Отправки информационных событий из сторонних систем, чтобы предоставить Ключ-АСТРОМ дополнительную информацию для автоматического анализа первопричин. Время закрытия события в этом случае уже известно, идентификаторы событий возвращаются мгновенно. Вы можете перенести эти события на срок до 30 дней в прошлое. Типы информационных событий:
CUSTOM_ANNOTATION
CUSTOM_CONFIGURATION
CUSTOM_DEPLOYMENT
CUSTOM_INFO
MARKED_FOR_TERMINATION
- Отправляйте события, открывающие проблему (например, увеличение количества ошибок), чтобы активировать механизм автоматического анализа первопричин Ключ-Астром. Идентификаторы корреляции возвращаются вместо идентификаторов событий. Эти события остаются открытыми, пока не истечет указанный тайм-аут. Чтобы предотвратить истечение срока действия, вы можете обновить эти события, повторно отправив ту же полезную нагрузку. Эти события можно перенести в прошлое на срок до 60 минут . Типы событий, открывающих проблему (отсортированные по серьезности):
AVAILABILITY_EVENT
ERROR_EVENT
PERFORMANCE_EVENT
RESOURCE_CONTENTION
Запрос потребляет и создает application/json
полезную нагрузку.
СООБЩЕНИЕ | Managed | https://{your-domain}/e/{your-environment-id}/api/v1/events
|
Среда АктивногоШлюза | https://{your-activegate-domain}/e/{your-environment-id}/api/v1/events
|
Аутентификация
Чтобы выполнить этот запрос, вам необходимо разрешение на проблему с доступом и канал событий, метрики и топологию ( DataExport
) , назначенное вашему токену API. Чтобы узнать, как его получить и использовать, см. раздел Токены и аутентификация .
Параметры
Набор параметров зависит от типа события. Подробнее см . в разделе Сопоставление параметров ниже.
Параметр | Тип | Описание | In | Необходимость |
---|---|---|---|---|
body | Создание события | Тело запроса в формате JSON, содержащее параметры события. | body | необязательный |
Объекты тела запроса
Объект EventCreation
Конфигурация пользовательского события.
Элемент | Тип | Описание |
---|---|---|
тип события | string | Тип события.
Элемент может содержать эти значения
|
Начало | integer | Отметка времени начала события в миллисекундах UTC.
Если не установлено, используется текущая метка времени. Вы можете сообщать о событиях только для информации за последние 30 дней . Вы можете сообщать о событиях, открывающих проблемы, до 60 минут назад. Может быть |
конец | integer | Отметка времени окончания события в миллисекундах UTC.
Если не задано, текущее время используется только для информационных событий. Не применимо к событиям открытия проблемы. Такое событие остается открытым до истечения времени ожидания в зависимости от параметра timeoutMinutes . Может быть |
timeoutMinutes | integer | Время ожидания для событий открытия проблемы в минутах. Не применимо к информационным событиям.
Если не установлено, используется 15 минут. Максимально допустимое значение составляет 120 минут. Вы можете обновить событие, повторно отправив ту же полезную нагрузку. Может быть |
прикрепить правила | Правила прикрепления push- событий | Набор правил, определяющих объекты Ключ-Астром, которые будут связаны с событием.
Вы можете указать теги для динамического сопоставления сущностей Ключ-Астром или идентификаторов определенных сущностей. Требуется хотя бы один идентификатор объекта или тег. |
пользовательские свойства | объект | Набор любых свойств, связанных с событием, в формате «ключ»: «значение» .
Может быть |
источник | string | Имя или идентификатор внешнего источника события. |
тип аннотации | string | Тип пользовательской аннотации, например DNS route has been changed .
Может быть |
аннотацияОписание | string | Подробное описание пользовательской аннотации, например DNS route has been changed to x.mydomain.com .
Может быть |
описание | string | Текстовое описание изменения конфигурации.
Может быть |
имя развертывания | string | Идентификатор запущенного развертывания.
Может быть |
развертываниеВерсия | string | Версия запущенного развертывания.
Может быть |
идентификаторы таймсерий | string [] | Список идентификаторов таймсерий, связанных с событием.
Может быть |
развертываниеПроект | string | Имя проекта развернутого пакета.
Может быть |
ciBackLink | string | Ссылка на развернутый артефакт в сторонней системе.
Может быть |
исправлениеДействие | string | Ссылка на действие по исправлению, связанное с развертыванием, во внешнем инструменте.
Может быть |
оригинальный | string | Предыдущее значение конфигурации.
Может быть |
измененный | string | Новое значение конфигурации, установленное событием.
Может быть |
конфигурация | string | Идентификатор или имя конфигурации, которая была изменена событием.
Может быть |
заглавие | string | Название конфигурации, заданной событием.
Может быть |
разрешитьDavisMerge | логический | Разрешить ИИ объединить это событие с существующими проблемами (верно) или принудительно создать новую проблему (ложь).
Это относится только к типам событий, открывающих проблемы. Может быть |
Объект PushEventAttachRules
Набор правил, определяющих объекты Ключ-Астром, которые будут связаны с событием.
Вы можете указать теги для динамического сопоставления сущностей Ключ-Астром или идентификаторов определенных сущностей.
Требуется хотя бы один идентификатор объекта или тег.
Элемент | Тип | Описание |
---|---|---|
идентификаторы объектов | string [] | Список идентификаторов сущностей, к которым должно быть прикреплено событие.
Может быть |
tagRule | Правило соответствия тегов [] | Набор правил сопоставления для динамического выбора сущностей на основе тегов.
В правилах сопоставления на основе тегов учитываются только объекты, просмотренные в течение последних 24 часов . Может быть |
Объект TagMatchRule
Список тегов, которые будут использоваться для сопоставления сущностей Ключ-Астром.
Элемент | Тип | Описание |
---|---|---|
мнеТипы | string [] | Список типов сущностей Ключ-Астром (например, хосты или службы), которые вы хотите подобрать путем сопоставления.
Элемент может содержать эти значения
|
теги | Информация о теге [] | Список тегов, которые вы хотите использовать для сопоставления. Требуется хотя бы один тег.
Вы можете использовать пользовательские теги из пользовательского интерфейса, импортированные теги и теги на основе переменных среды. |
Объект TagInfo
Тег сущности Ключ-Астром.
Элемент | Тип | Описание |
---|---|---|
контекст | string | Происхождение тега, например AWS или Cloud Foundry.
Пользовательские теги используют это Элемент может содержать эти значения
|
ключ | string | Ключ тега.
Пользовательские теги имеют значение тега здесь. |
стоимость | string | Значение тега.
Не применимо к пользовательским тегам. Может быть |
JSON-модель тела запроса
Это модель тела запроса, показывающая возможные элементы. Его необходимо настроить для использования в реальном запросе.
{
"eventType": "CUSTOM_ANNOTATION",
"start": 1521042929000,
"end": 1521542929000,
"attachRules": {
"entityIds": [
"CUSTOM_DEVICE-0000000000000007"
],
"tagRule": [
{
"meTypes": [
"HOST"
],
"tags": [
{
"context": "CONTEXTLESS",
"key": "customTag"
}
]
}
]
},
"source": "OpsControl",
"annotationType": "defect",
"annotationDescription": "The coffee machine is broken"
}
Отображение параметров
Событие доступности | Пользовательская аннотация | Пользовательская конфигурация | Пользовательское развертывание | Пользовательская информация | Событие ошибки | Перформанс | Конфликт ресурсов | Помечено для прекращения | |
---|---|---|---|---|---|---|---|---|---|
описание | запрос | выбрать | запрос | н/д | запрос | запрос | запрос | запрос | запрос |
заглавие | запрос | н/д | н/д | н/д | выбрать | запрос | запрос | запрос | выбрать |
источник | запрос | запрос | запрос | запрос | запрос | запрос | запрос | запрос | запрос |
тип аннотации | н/д | запрос | н/д | н/д | н/д | н/д | н/д | н/д | н/д |
аннотацияОписание | н/д | запрос | н/д | н/д | н/д | н/д | н/д | н/д | н/д |
имя развертывания | н/д | н/д | н/д | запрос | н/д | н/д | н/д | н/д | н/д |
развертываниеВерсия | н/д | н/д | н/д | запрос | н/д | н/д | н/д | н/д | н/д |
развертываниеПроект | н/д | н/д | н/д | выбрать | н/д | н/д | н/д | н/д | н/д |
ciBackLink | н/д | н/д | н/д | выбрать | н/д | н/д | н/д | н/д | выбрать |
исправлениеДействие | н/д | н/д | н/д | выбрать | н/д | н/д | н/д | н/д | н/д |
оригинальный | н/д | н/д | выбрать | н/д | н/д | н/д | н/д | н/д | н/д |
конфигурация | н/д | н/д | запрос | н/д | н/д | н/д | н/д | н/д | н/д |
пользовательские свойства | выбрать | выбрать | выбрать | выбрать | выбрать | выбрать | выбрать | выбрать | выбрать |
Ответ
Коды ответов
Код | Тип | Описание |
---|---|---|
200 | Результат хранилища событий | Успех |
Объекты тела ответа
Объект EventStoreResult
Содержит идентификаторы всех настраиваемых событий, созданных с помощью push-вызова события.
Элемент | Тип | Описание |
---|---|---|
сохраненные идентификаторы событий | целое [] | Список идентификаторов событий для информационных событий.
Это поле предусмотрено для совместимости. Вместо этого следует использовать значения из поля storeIds . Может быть |
сохраненные идентификаторы | string [] | Список закодированных идентификаторов событий для информационных событий.
Может быть |
сохраненные корреляционные идентификаторы | string [] | Список идентификаторов корреляции для событий открытия проблемы.
Может быть |
JSON-модель тела ответа
{
"storedEventIds": [
1
],
"storedIds": [
"string"
],
"storedCorrelationIds": [
"string"
]
}
Пример
В этом примере запрос отправляет событие CUSTOM_ANNOTATION , которое применяется ко всем пользовательским устройствам с тегом Coffee-2nd-floor . Эта аннотация является уведомлением о том, что эти кофемашины сломаны.
Маркер API передается в заголовке авторизации .
Curl
curl -X POST \
https://mySampleEnv.live.astromkey.com/api/v1/events \
-H 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890' \
-H 'Content-Type: application/json' \
-d '{
"eventType": "CUSTOM_ANNOTATION",
"timeoutMinutes": 0,
"attachRules": {
"tagRule": [
{
"meTypes": [
"CUSTOM_DEVICE"
],
"tags": [
{
"context": "CONTEXTLESS",
"key": "IG-test"
}
]
}
]
},
"source": "OpsControl",
"annotationType": "defect",
"annotationDescription": "coffee machine is defective"
}'
URL-адрес запроса
https://mySampleEnv.live.astromkey.com/api/v1/events
Тело запроса
{
"eventType": "CUSTOM_ANNOTATION",
"timeoutMinutes": 0,
"attachRules": {
"tagRule": [
{
"meTypes": [
"CUSTOM_DEVICE"
],
"tags": [
{
"context": "CONTEXTLESS",
"key": "IG-test"
}
]
}
]
},
"source": "OpsControl",
"annotationType": "defect",
"annotationDescription": "coffee machine is defective"
}
Тело ответа
{
"storedEventIds": [
-6153476110846051426
],
"storedIds": [
"-6153476110846051426_1533300519291"
],
"storedCorrelationIds": []
}
Код ответа
200