Oracle Enterprise Manager · Arazzo Workflow

Oracle Enterprise Manager Read Metric Snapshot

Version 1.0.0

Resolve a target's metric group and pull its latest collected data point.

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

Provider

oracle-enterprise-manager

Workflows

read-metric-snapshot
From a target, resolve a metric group and read its latest collected data.
Verifies the target, lists its metric groups, picks the supplied metric group (or the first available), reads the group definition, and retrieves the latest collected metric data for that group.
4 steps inputs: metricGroupName, targetId outputs: collectionFrequency, latestData, metricGroupName, targetId
1
confirmTarget
getTarget
Confirm the target exists and is monitored before reading metrics.
2
listGroups
listMetricGroups
List the metric groups available for the confirmed target.
3
getGroupDefinition
getMetricGroup
Read the definition of the selected metric group, falling back to the first available group when no group name was supplied.
4
getLatestData
getLatestMetricData
Fetch the most recently collected metric data for the resolved metric group on the target.

Source API Descriptions

Arazzo Workflow Specification

oracle-enterprise-manager-read-metric-snapshot-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Oracle Enterprise Manager Read Metric Snapshot
  summary: Resolve a target's metric group and pull its latest collected data point.
  description: >-
    Walks from a known target down to a single live performance reading. It
    confirms the target, lists its metric groups, selects (or accepts) a metric
    group, reads that group's definition, and then fetches the latest collected
    data snapshot for the group. This is the everyday "show me the current
    numbers for this target" flow, chaining four read operations with a branch
    that ensures a metric group exists before requesting data.
  version: 1.0.0
sourceDescriptions:
- name: emCloudControl
  url: ../openapi/oracle-enterprise-manager-cloud-control-openapi.yml
  type: openapi
workflows:
- workflowId: read-metric-snapshot
  summary: From a target, resolve a metric group and read its latest collected data.
  description: >-
    Verifies the target, lists its metric groups, picks the supplied metric
    group (or the first available), reads the group definition, and retrieves
    the latest collected metric data for that group.
  inputs:
    type: object
    required:
    - targetId
    properties:
      targetId:
        type: string
        description: Unique identifier of the target to read metrics from.
      metricGroupName:
        type: string
        description: >-
          Optional metric group name to read. If omitted, the first metric
          group returned for the target is used.
  steps:
  - stepId: confirmTarget
    description: Confirm the target exists and is monitored before reading metrics.
    operationId: getTarget
    parameters:
    - name: targetId
      in: path
      value: $inputs.targetId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      targetId: $response.body#/targetId
      lifecycleStatus: $response.body#/lifecycleStatus
  - stepId: listGroups
    description: List the metric groups available for the confirmed target.
    operationId: listMetricGroups
    parameters:
    - name: targetId
      in: path
      value: $steps.confirmTarget.outputs.targetId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      firstGroupName: $response.body#/items/0/metricGroupName
    onSuccess:
    - name: groupsExist
      type: goto
      stepId: getGroupDefinition
      criteria:
      - context: $response.body
        condition: $.items.length > 0
        type: jsonpath
  - stepId: getGroupDefinition
    description: >-
      Read the definition of the selected metric group, falling back to the
      first available group when no group name was supplied.
    operationId: getMetricGroup
    parameters:
    - name: targetId
      in: path
      value: $steps.confirmTarget.outputs.targetId
    - name: metricGroupName
      in: path
      value: $steps.listGroups.outputs.firstGroupName
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      metricGroupName: $response.body#/metricGroupName
      collectionFrequency: $response.body#/collectionFrequency
      metricColumns: $response.body#/metricColumns
  - stepId: getLatestData
    description: >-
      Fetch the most recently collected metric data for the resolved metric
      group on the target.
    operationId: getLatestMetricData
    parameters:
    - name: targetId
      in: path
      value: $steps.confirmTarget.outputs.targetId
    - name: metricGroupName
      in: path
      value: $steps.getGroupDefinition.outputs.metricGroupName
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      latestData: $response.body#/items
  outputs:
    targetId: $steps.confirmTarget.outputs.targetId
    metricGroupName: $steps.getGroupDefinition.outputs.metricGroupName
    collectionFrequency: $steps.getGroupDefinition.outputs.collectionFrequency
    latestData: $steps.getLatestData.outputs.latestData