All Products
Search
Document Center

CloudOps Orchestration Service:ACS-OOS-ExecuteTemplateByAlarm

Last Updated:Nov 25, 2024

Template name

ACS-OOS-ExecuteTemplateByAlarm

Execute Now

Template description

Executes the specified template when an alert is triggered. The alert trigger continues to run until you cancel it.

Template type

Automated

Owner

Alibaba Cloud

Input parameters

Parameter

Description

Data type

Required

Default value

Limit

alarmTriggerProperties

The properties of the alert-triggered task.

Json

Yes

alarmOutputTransformer

The transformer for converting the alert message body into the template parameters.

Json

Yes

templateName

The name of the executed template.

String

Yes

tags

The instance tag.

Json

No

[]

OOSAssumeRole

The RAM role that is assumed by CloudOps Orchestration Service (OOS).

String

No

OOSServiceRole

Output parameters

N/A.

Permission policy that is required to execute the template

{
    "Version": "1",
    "Statement": []
}

References

ACS-OOS-ExecuteTemplateByAlarm

Template content

FormatVersion: OOS-2019-06-01
Description:
  en: Execute specified template when alarm is raised according to alarm rule. AlarmTrigger will always run until being canceled
  name-en: ACS-OOS-ExecuteTemplateByAlarm
  categories:
    - alarm-trigger
Parameters:
  alarmTriggerProperties:
    Label:
      en: AlarmTriggerProperties
    Type: Json
    AssociationProperty: ALIYUN::OOS::Alarm::AlarmTrigger
  alarmOutputTransformer:
    Label:
      en: AlarmOutputTransformer
    Type: Json
  templateName:
    Label:
      en: TemplateName
    Type: String
    AssociationProperty: TemplateName
  tags:
    Type: Json
    Label:
      en: InstanceTags
    AssociationProperty: Tags
    Default: []
  OOSAssumeRole:
    Label:
      en: OOSAssumeRole
    Type: String
    Default: OOSServiceRole
RamRole: '{{ OOSAssumeRole }}'
Tasks:
  - Name: alarmTrigger
    Action: 'ACS::AlarmTrigger'
    Properties:
      Tags: '{{ tags }}'
      Namespace:
        'Fn::Select':
          - namespace
          - '{{ alarmTriggerProperties }}'
      MetricName:
        'Fn::Select':
          - metricName
          - '{{ alarmTriggerProperties }}'
      Statistics:
        'Fn::Select':
          - statistics
          - '{{ alarmTriggerProperties }}'
      ComparisonOperator:
        'Fn::Select':
          - comparisonOperator
          - '{{ alarmTriggerProperties }}'
      Threshold:
        'Fn::Select':
          - threshold
          - '{{ alarmTriggerProperties }}'
      Resources:
        'Fn::Select':
          - resources
          - '{{ alarmTriggerProperties }}'
      Times:
        'Fn::Select':
          - times
          - '{{ alarmTriggerProperties }}'
      Period:
        'Fn::Select':
          - period
          - '{{ alarmTriggerProperties }}'
      Interval:
        'Fn::Select':
          - interval
          - '{{ alarmTriggerProperties }}'
      SilenceTime:
        'Fn::Select':
          - silenceTime
          - '{{ alarmTriggerProperties }}'
      EffectiveInterval:
        'Fn::Select':
          - effectiveInterval
          - '{{ alarmTriggerProperties }}'
      OutputTransformer: '{{ alarmOutputTransformer }}'
    Outputs:
      templateParameters:
        Type: Json
        ValueSelector: .
  - Name: executeTemplate
    Action: 'ACS::Template'
    Description:
      en: Execute template
    Properties:
      TemplateName: '{{ templateName }}'
      Parameters: '{{ alarmTrigger.templateParameters }}'