Group Metric Rule Args
data class GroupMetricRuleArgs(val category: Output<String>? = null, val contactGroups: Output<String>? = null, val dimensions: Output<String>? = null, val effectiveInterval: Output<String>? = null, val emailSubject: Output<String>? = null, val escalations: Output<GroupMetricRuleEscalationsArgs>? = null, val groupId: Output<String>? = null, val groupMetricRuleName: Output<String>? = null, val interval: Output<String>? = null, val metricName: Output<String>? = null, val namespace: Output<String>? = null, val noEffectiveInterval: Output<String>? = null, val period: Output<Int>? = null, val ruleId: Output<String>? = null, val silenceTime: Output<Int>? = null, val targets: Output<List<GroupMetricRuleTargetArgs>>? = null, val webhook: Output<String>? = null) : ConvertibleToJava<GroupMetricRuleArgs>
Provides a Cloud Monitor Service Group Metric Rule resource. For information about Cloud Monitor Service Group Metric Rule and how to use it, see What is Group Metric Rule.
NOTE: Available since v1.104.0.
Example Usage
Basic Usage
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.cms.AlarmContactGroup;
import com.pulumi.alicloud.cms.AlarmContactGroupArgs;
import com.pulumi.alicloud.cms.MonitorGroup;
import com.pulumi.alicloud.cms.MonitorGroupArgs;
import com.pulumi.alicloud.cms.GroupMetricRule;
import com.pulumi.alicloud.cms.GroupMetricRuleArgs;
import com.pulumi.alicloud.cms.inputs.GroupMetricRuleEscalationsArgs;
import com.pulumi.alicloud.cms.inputs.GroupMetricRuleEscalationsWarnArgs;
import com.pulumi.alicloud.cms.inputs.GroupMetricRuleEscalationsInfoArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var config = ctx.config();
final var name = config.get("name").orElse("tf-example");
var defaultAlarmContactGroup = new AlarmContactGroup("defaultAlarmContactGroup", AlarmContactGroupArgs.builder()
.alarmContactGroupName(name)
.describe(name)
.build());
var defaultMonitorGroup = new MonitorGroup("defaultMonitorGroup", MonitorGroupArgs.builder()
.monitorGroupName(name)
.contactGroups(defaultAlarmContactGroup.id())
.build());
var this_ = new GroupMetricRule("this", GroupMetricRuleArgs.builder()
.groupId(defaultMonitorGroup.id())
.groupMetricRuleName(name)
.category("ecs")
.metricName("cpu_total")
.namespace("acs_ecs_dashboard")
.ruleId(name)
.period("60")
.interval("3600")
.silenceTime(85800)
.noEffectiveInterval("00:00-05:30")
.webhook("http://www.aliyun.com")
.escalations(GroupMetricRuleEscalationsArgs.builder()
.warn(GroupMetricRuleEscalationsWarnArgs.builder()
.comparisonOperator("GreaterThanOrEqualToThreshold")
.statistics("Average")
.threshold("90")
.times(3)
.build())
.info(GroupMetricRuleEscalationsInfoArgs.builder()
.comparisonOperator("LessThanLastWeek")
.statistics("Average")
.threshold("90")
.times(5)
.build())
.build())
.build());
}
}
Content copied to clipboard
Import
Cloud Monitor Service Group Metric Rule can be imported using the id, e.g.
$ pulumi import alicloud:cms/groupMetricRule:GroupMetricRule example <rule_id>
Content copied to clipboard
Constructors
Link copied to clipboard
fun GroupMetricRuleArgs(category: Output<String>? = null, contactGroups: Output<String>? = null, dimensions: Output<String>? = null, effectiveInterval: Output<String>? = null, emailSubject: Output<String>? = null, escalations: Output<GroupMetricRuleEscalationsArgs>? = null, groupId: Output<String>? = null, groupMetricRuleName: Output<String>? = null, interval: Output<String>? = null, metricName: Output<String>? = null, namespace: Output<String>? = null, noEffectiveInterval: Output<String>? = null, period: Output<Int>? = null, ruleId: Output<String>? = null, silenceTime: Output<Int>? = null, targets: Output<List<GroupMetricRuleTargetArgs>>? = null, webhook: Output<String>? = null)