Размещение события

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

Эта функция отправляет пользовательские события из сторонних интеграций в один или несколько отслеживаемых объектов.

Этот эндпойнт позволяет сторонним системам, таким как платформы непрерывной интеграции (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. Чтобы узнать, как его получить и использовать, см. раздел Токены и аутентификация .

Параметры

Набор параметров зависит от типа события. Подробнее см . в разделе Сопоставление параметров ниже.

Параметр Тип Описание В Необходимый
тело Создание события Тело запроса в формате JSON, содержащее параметры события. тело необязательный

Объекты тела запроса

Объект EventCreation

Конфигурация пользовательского события.

Элемент Тип Описание
тип события нить Тип события.

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

  • AVAILABILITY_EVENT
  • CUSTOM_ALERT
  • CUSTOM_ANNOTATION
  • CUSTOM_CONFIGURATION
  • CUSTOM_DEPLOYMENT
  • CUSTOM_INFO
  • ERROR_EVENT
  • MARKED_FOR_TERMINATION
  • PERFORMANCE_EVENT
  • RESOURCE_CONTENTION
Начало целое число Отметка времени начала события в миллисекундах UTC.

Если не установлено, используется текущая метка времени.

Вы можете сообщать о событиях только для информации за последние 30 дней .

Вы можете сообщать о событиях, открывающих проблемы, до 60 минут назад.

Может быть null.

конец целое число Отметка времени окончания события в миллисекундах UTC.

Если не задано, текущее время используется только для информационных событий.

Не применимо к событиям открытия проблемы. Такое событие остается открытым до истечения времени ожидания в зависимости от параметра timeoutMinutes .

Может быть null.

timeoutMinutes целое число Время ожидания для событий открытия проблемы в минутах. Не применимо к информационным событиям.

Если не установлено, используется 15 минут. Максимально допустимое значение составляет 120 минут.

Вы можете обновить событие, повторно отправив ту же полезную нагрузку.

Может быть null.

прикрепить правила Правила прикрепления push- событий Набор правил, определяющих объекты Ключ-Астром, которые будут связаны с событием.

Вы можете указать теги для динамического сопоставления сущностей Ключ-Астром или идентификаторов определенных сущностей.

Требуется хотя бы один идентификатор объекта или тег.

пользовательские свойства объект Набор любых свойств, связанных с событием, в формате «ключ»: «значение» .

Может быть null.

источник нить Имя или идентификатор внешнего источника события.
тип аннотации нить Тип пользовательской аннотации, например DNS route has been changed.

Может быть null.

аннотацияОписание нить Подробное описание пользовательской аннотации, например DNS route has been changed to x.mydomain.com.

Может быть null.

описание нить Текстовое описание изменения конфигурации.

Может быть null.

имя развертывания нить Идентификатор запущенного развертывания.

Может быть null.

развертываниеВерсия нить Версия запущенного развертывания.

Может быть null.

идентификаторы таймсерий строка [] Список идентификаторов таймсерий, связанных с событием.

Может быть null.

развертываниеПроект нить Имя проекта развернутого пакета.

Может быть null.

ciBackLink нить Ссылка на развернутый артефакт в сторонней системе.

Может быть null.

исправлениеДействие нить Ссылка на действие по исправлению, связанное с развертыванием, во внешнем инструменте.

Может быть null.

оригинальный нить Предыдущее значение конфигурации.

Может быть null.

измененный нить Новое значение конфигурации, установленное событием.

Может быть null.

конфигурация нить Идентификатор или имя конфигурации, которая была изменена событием.

Может быть null.

заглавие нить Название конфигурации, заданной событием.

Может быть null.

разрешитьDavisMerge логический Разрешить ИИ Дэвиса объединить это событие с существующими проблемами (верно) или принудительно создать новую проблему (ложь).

Это относится только к типам событий, открывающих проблемы.

Может быть null.

Объект _ PushEventAttachRules

Набор правил, определяющих объекты Ключ-Астром, которые будут связаны с событием.

Вы можете указать теги для динамического сопоставления сущностей Ключ-Астром или идентификаторов определенных сущностей.

Требуется хотя бы один идентификатор объекта или тег.

Элемент Тип Описание
идентификаторы объектов строка [] Список идентификаторов сущностей, к которым должно быть прикреплено событие.

Может быть null.

tagRule Правило соответствия тегов [] Набор правил сопоставления для динамического выбора сущностей на основе тегов.

В правилах сопоставления на основе тегов учитываются только объекты, просмотренные в течение последних 24 часов .

Может быть null.

Объект _ TagMatchRule

Список тегов, которые будут использоваться для сопоставления сущностей Ключ-Астром.

Элемент Тип Описание
мнеТипы строка [] Список типов сущностей Ключ-Астром (например, хосты или службы), которые вы хотите подобрать путем сопоставления.

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

  • APM_SECURITY_GATEWAY
  • APPLICATION
  • APPLICATION_METHOD
  • APPLICATION_METHOD_GROUP
  • APPMON_SERVER
  • APPMON_SYSTEM_PROFILE
  • AUTO_SCALING_GROUP
  • AUXILIARY_SYNTHETIC_TEST
  • AWS_APPLICATION_LOAD_BALANCER
  • AWS_AVAILABILITY_ZONE
  • AWS_CREDENTIALS
  • AWS_LAMBDA_FUNCTION
  • AWS_NETWORK_LOAD_BALANCER
  • AZURE_API_MANAGEMENT_SERVICE
  • AZURE_APPLICATION_GATEWAY
  • AZURE_COSMOS_DB
  • AZURE_CREDENTIALS
  • AZURE_EVENT_HUB
  • AZURE_EVENT_HUB_NAMESPACE
  • AZURE_FUNCTION_APP
  • AZURE_IOT_HUB
  • AZURE_LOAD_BALANCER
  • AZURE_MGMT_GROUP
  • AZURE_REDIS_CACHE
  • AZURE_REGION
  • AZURE_SERVICE_BUS_NAMESPACE
  • AZURE_SERVICE_BUS_QUEUE
  • AZURE_SERVICE_BUS_TOPIC
  • AZURE_SQL_DATABASE
  • AZURE_SQL_ELASTIC_POOL
  • AZURE_SQL_SERVER
  • AZURE_STORAGE_ACCOUNT
  • AZURE_SUBSCRIPTION
  • AZURE_TENANT
  • AZURE_VM
  • AZURE_VM_SCALE_SET
  • AZURE_WEB_APP
  • CF_APPLICATION
  • CF_FOUNDATION
  • CINDER_VOLUME
  • CLOUD_APPLICATION
  • CLOUD_APPLICATION_INSTANCE
  • CLOUD_APPLICATION_NAMESPACE
  • CLOUD_NETWORK_INGRESS
  • CLOUD_NETWORK_POLICY
  • CONTAINER_GROUP
  • CONTAINER_GROUP_INSTANCE
  • CUSTOM_APPLICATION
  • CUSTOM_DEVICE
  • CUSTOM_DEVICE_GROUP
  • DCRUM_APPLICATION
  • DCRUM_SERVICE
  • DCRUM_SERVICE_INSTANCE
  • DEVICE_APPLICATION_METHOD
  • DISK
  • DOCKER_CONTAINER_GROUP
  • DOCKER_CONTAINER_GROUP_INSTANCE
  • DYNAMO_DB_TABLE
  • EBS_VOLUME
  • EC2_INSTANCE
  • ELASTIC_LOAD_BALANCER
  • ENVIRONMENT
  • EXTERNAL_SYNTHETIC_TEST_STEP
  • GCP_ZONE
  • GEOLOCATION
  • GEOLOC_SITE
  • GOOGLE_COMPUTE_ENGINE
  • HOST
  • HOST_GROUP
  • HTTP_CHECK
  • HTTP_CHECK_STEP
  • HYPERVISOR
  • KUBERNETES_CLUSTER
  • KUBERNETES_NODE
  • KUBERNETES_SERVICE
  • MOBILE_APPLICATION
  • NETWORK_INTERFACE
  • NEUTRON_SUBNET
  • OPENSTACK_PROJECT
  • OPENSTACK_REGION
  • OPENSTACK_VM
  • OS
  • PROCESS_GROUP
  • PROCESS_GROUP_INSTANCE
  • QUEUE
  • RELATIONAL_DATABASE_SERVICE
  • SERVICE
  • SERVICE_INSTANCE
  • SERVICE_METHOD
  • SERVICE_METHOD_GROUP
  • SWIFT_CONTAINER
  • SYNTHETIC_LOCATION
  • SYNTHETIC_TEST
  • SYNTHETIC_TEST_STEP
  • VIRTUALMACHINE
  • VMWARE_DATACENTER
теги Информация о теге [] Список тегов, которые вы хотите использовать для сопоставления. Требуется хотя бы один тег.

Вы можете использовать пользовательские теги из пользовательского интерфейса, импортированные теги и теги на основе переменных среды.

Объект _ TagInfo

Тег сущности Ключ-Астром.

Элемент Тип Описание
контекст нить Происхождение тега, например AWS или Cloud Foundry.

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

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

  • AWS
  • AWS_GENERIC
  • AZURE
  • CLOUD_FOUNDRY
  • CONTEXTLESS
  • ENVIRONMENT
  • GOOGLE_CLOUD
  • KUBERNETES
ключ нить Ключ тега.

Пользовательские теги имеют значение тега здесь.

стоимость нить Значение тега.

Не применимо к пользовательским тегам.

Может быть null.

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 .

Может быть null.

сохраненные идентификаторы строка [] Список закодированных идентификаторов событий для информационных событий.

Может быть null.

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

Может быть null.

JSON-модель тела ответа

{
  "storedEventIds": [
    1
  ],
  "storedIds": [
    "string"
  ],
  "storedCorrelationIds": [
    "string"
  ]
}

Пример

В этом примере запрос отправляет событие CUSTOM_ANNOTATION , которое применяется ко всем пользовательским устройствам с тегом Coffee-2nd-floor . Эта аннотация является уведомлением о том, что эти кофемашины сломаны.

Маркер API передается в заголовке авторизации .

Завиток

curl -X POST \
  https://mySampleEnv.live.dynatrace.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.dynatrace.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