Oracle Enterprise Manager · Arazzo Workflow

Oracle Enterprise Manager Trace Incident Event

Version 1.0.0

Drill from an incident into its events and one event's full detail.

1 workflow 1 source API 1 provider
View Spec View on GitHub Cloud ManagementDatabase ManagementEnterprise ManagementInfrastructure ManagementMonitoringOracleArazzoWorkflows

Provider

oracle-enterprise-manager

Workflows

trace-incident-event
Read an incident, list its events, and fetch the first event's detail.
Resolves an incident, retrieves its correlated events, and pulls the full detail record for the first event to expose the originating metric.
3 steps inputs: incidentId outputs: eventId, incidentId, metricColumnName, metricGroupName, metricValue
1
getIncidentDetails
getIncident
Retrieve the incident to confirm it exists before tracing events.
2
listIncidentEvents
getIncidentEvents
List the monitoring events correlated into the incident.
3
getEventDetail
getEvent
Fetch the full detail for the first correlated event, exposing the metric group, column, and value that raised the alert.

Source API Descriptions

Arazzo Workflow Specification

oracle-enterprise-manager-trace-incident-event-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Oracle Enterprise Manager Trace Incident Event
  summary: Drill from an incident into its events and one event's full detail.
  description: >-
    Performs root-cause drill-down for an incident. Starting from an incident
    identifier, the workflow reads the incident, lists the underlying monitoring
    events that were correlated to form it, and then fetches the full detail of
    the first event — exposing the metric group, metric column, and value that
    raised the alert. A branch guards the event lookup so it only runs when the
    incident actually carries events, chaining three real read operations.
  version: 1.0.0
sourceDescriptions:
- name: emCloudControl
  url: ../openapi/oracle-enterprise-manager-cloud-control-openapi.yml
  type: openapi
workflows:
- workflowId: trace-incident-event
  summary: Read an incident, list its events, and fetch the first event's detail.
  description: >-
    Resolves an incident, retrieves its correlated events, and pulls the full
    detail record for the first event to expose the originating metric.
  inputs:
    type: object
    required:
    - incidentId
    properties:
      incidentId:
        type: string
        description: Unique identifier of the incident to trace.
  steps:
  - stepId: getIncidentDetails
    description: Retrieve the incident to confirm it exists before tracing events.
    operationId: getIncident
    parameters:
    - name: incidentId
      in: path
      value: $inputs.incidentId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      incidentId: $response.body#/incidentId
      eventCount: $response.body#/eventCount
  - stepId: listIncidentEvents
    description: List the monitoring events correlated into the incident.
    operationId: getIncidentEvents
    parameters:
    - name: incidentId
      in: path
      value: $steps.getIncidentDetails.outputs.incidentId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      firstEventId: $response.body#/items/0/eventId
      events: $response.body#/items
    onSuccess:
    - name: eventsExist
      type: goto
      stepId: getEventDetail
      criteria:
      - context: $response.body
        condition: $.items.length > 0
        type: jsonpath
  - stepId: getEventDetail
    description: >-
      Fetch the full detail for the first correlated event, exposing the metric
      group, column, and value that raised the alert.
    operationId: getEvent
    parameters:
    - name: eventId
      in: path
      value: $steps.listIncidentEvents.outputs.firstEventId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      eventId: $response.body#/eventId
      eventType: $response.body#/eventType
      metricGroupName: $response.body#/metricGroupName
      metricColumnName: $response.body#/metricColumnName
      metricValue: $response.body#/metricValue
  outputs:
    incidentId: $steps.getIncidentDetails.outputs.incidentId
    eventId: $steps.getEventDetail.outputs.eventId
    metricGroupName: $steps.getEventDetail.outputs.metricGroupName
    metricColumnName: $steps.getEventDetail.outputs.metricColumnName
    metricValue: $steps.getEventDetail.outputs.metricValue