1. Packages
  2. Alibaba Cloud
  3. API Docs
  4. cms
  5. getMetricRuleTemplates
Alibaba Cloud v3.54.0 published on Wednesday, Apr 24, 2024 by Pulumi

alicloud.cms.getMetricRuleTemplates

Explore with Pulumi AI

alicloud logo
Alibaba Cloud v3.54.0 published on Wednesday, Apr 24, 2024 by Pulumi

    This data source provides the Cms Metric Rule Templates of the current Alibaba Cloud user.

    NOTE: Available in v1.134.0+.

    Example Usage

    Basic Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as alicloud from "@pulumi/alicloud";
    
    const ids = alicloud.cms.getMetricRuleTemplates({
        ids: ["example_value"],
    });
    export const cmsMetricRuleTemplateId1 = ids.then(ids => ids.templates?.[0]?.id);
    const nameRegex = alicloud.cms.getMetricRuleTemplates({
        nameRegex: "^my-MetricRuleTemplate",
    });
    export const cmsMetricRuleTemplateId2 = nameRegex.then(nameRegex => nameRegex.templates?.[0]?.id);
    const keyword = alicloud.cms.getMetricRuleTemplates({
        keyword: "^my-MetricRuleTemplate",
    });
    export const cmsMetricRuleTemplateId3 = nameRegex.then(nameRegex => nameRegex.templates?.[0]?.id);
    const templateId = alicloud.cms.getMetricRuleTemplates({
        templateId: "example_value",
    });
    export const cmsMetricRuleTemplateId4 = nameRegex.then(nameRegex => nameRegex.templates?.[0]?.id);
    
    import pulumi
    import pulumi_alicloud as alicloud
    
    ids = alicloud.cms.get_metric_rule_templates(ids=["example_value"])
    pulumi.export("cmsMetricRuleTemplateId1", ids.templates[0].id)
    name_regex = alicloud.cms.get_metric_rule_templates(name_regex="^my-MetricRuleTemplate")
    pulumi.export("cmsMetricRuleTemplateId2", name_regex.templates[0].id)
    keyword = alicloud.cms.get_metric_rule_templates(keyword="^my-MetricRuleTemplate")
    pulumi.export("cmsMetricRuleTemplateId3", name_regex.templates[0].id)
    template_id = alicloud.cms.get_metric_rule_templates(template_id="example_value")
    pulumi.export("cmsMetricRuleTemplateId4", name_regex.templates[0].id)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cms"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		ids, err := cms.GetMetricRuleTemplates(ctx, &cms.GetMetricRuleTemplatesArgs{
    			Ids: []string{
    				"example_value",
    			},
    		}, nil)
    		if err != nil {
    			return err
    		}
    		ctx.Export("cmsMetricRuleTemplateId1", ids.Templates[0].Id)
    		nameRegex, err := cms.GetMetricRuleTemplates(ctx, &cms.GetMetricRuleTemplatesArgs{
    			NameRegex: pulumi.StringRef("^my-MetricRuleTemplate"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		ctx.Export("cmsMetricRuleTemplateId2", nameRegex.Templates[0].Id)
    		_, err = cms.GetMetricRuleTemplates(ctx, &cms.GetMetricRuleTemplatesArgs{
    			Keyword: pulumi.StringRef("^my-MetricRuleTemplate"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		ctx.Export("cmsMetricRuleTemplateId3", nameRegex.Templates[0].Id)
    		_, err = cms.GetMetricRuleTemplates(ctx, &cms.GetMetricRuleTemplatesArgs{
    			TemplateId: pulumi.StringRef("example_value"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		ctx.Export("cmsMetricRuleTemplateId4", nameRegex.Templates[0].Id)
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AliCloud = Pulumi.AliCloud;
    
    return await Deployment.RunAsync(() => 
    {
        var ids = AliCloud.Cms.GetMetricRuleTemplates.Invoke(new()
        {
            Ids = new[]
            {
                "example_value",
            },
        });
    
        var nameRegex = AliCloud.Cms.GetMetricRuleTemplates.Invoke(new()
        {
            NameRegex = "^my-MetricRuleTemplate",
        });
    
        var keyword = AliCloud.Cms.GetMetricRuleTemplates.Invoke(new()
        {
            Keyword = "^my-MetricRuleTemplate",
        });
    
        var templateId = AliCloud.Cms.GetMetricRuleTemplates.Invoke(new()
        {
            TemplateId = "example_value",
        });
    
        return new Dictionary<string, object?>
        {
            ["cmsMetricRuleTemplateId1"] = ids.Apply(getMetricRuleTemplatesResult => getMetricRuleTemplatesResult.Templates[0]?.Id),
            ["cmsMetricRuleTemplateId2"] = nameRegex.Apply(getMetricRuleTemplatesResult => getMetricRuleTemplatesResult.Templates[0]?.Id),
            ["cmsMetricRuleTemplateId3"] = nameRegex.Apply(getMetricRuleTemplatesResult => getMetricRuleTemplatesResult.Templates[0]?.Id),
            ["cmsMetricRuleTemplateId4"] = nameRegex.Apply(getMetricRuleTemplatesResult => getMetricRuleTemplatesResult.Templates[0]?.Id),
        };
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.alicloud.cms.CmsFunctions;
    import com.pulumi.alicloud.cms.inputs.GetMetricRuleTemplatesArgs;
    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 ids = CmsFunctions.getMetricRuleTemplates(GetMetricRuleTemplatesArgs.builder()
                .ids("example_value")
                .build());
    
            ctx.export("cmsMetricRuleTemplateId1", ids.applyValue(getMetricRuleTemplatesResult -> getMetricRuleTemplatesResult.templates()[0].id()));
            final var nameRegex = CmsFunctions.getMetricRuleTemplates(GetMetricRuleTemplatesArgs.builder()
                .nameRegex("^my-MetricRuleTemplate")
                .build());
    
            ctx.export("cmsMetricRuleTemplateId2", nameRegex.applyValue(getMetricRuleTemplatesResult -> getMetricRuleTemplatesResult.templates()[0].id()));
            final var keyword = CmsFunctions.getMetricRuleTemplates(GetMetricRuleTemplatesArgs.builder()
                .keyword("^my-MetricRuleTemplate")
                .build());
    
            ctx.export("cmsMetricRuleTemplateId3", nameRegex.applyValue(getMetricRuleTemplatesResult -> getMetricRuleTemplatesResult.templates()[0].id()));
            final var templateId = CmsFunctions.getMetricRuleTemplates(GetMetricRuleTemplatesArgs.builder()
                .templateId("example_value")
                .build());
    
            ctx.export("cmsMetricRuleTemplateId4", nameRegex.applyValue(getMetricRuleTemplatesResult -> getMetricRuleTemplatesResult.templates()[0].id()));
        }
    }
    
    variables:
      ids:
        fn::invoke:
          Function: alicloud:cms:getMetricRuleTemplates
          Arguments:
            ids:
              - example_value
      nameRegex:
        fn::invoke:
          Function: alicloud:cms:getMetricRuleTemplates
          Arguments:
            nameRegex: ^my-MetricRuleTemplate
      keyword:
        fn::invoke:
          Function: alicloud:cms:getMetricRuleTemplates
          Arguments:
            keyword: ^my-MetricRuleTemplate
      templateId:
        fn::invoke:
          Function: alicloud:cms:getMetricRuleTemplates
          Arguments:
            templateId: example_value
    outputs:
      cmsMetricRuleTemplateId1: ${ids.templates[0].id}
      cmsMetricRuleTemplateId2: ${nameRegex.templates[0].id}
      cmsMetricRuleTemplateId3: ${nameRegex.templates[0].id}
      cmsMetricRuleTemplateId4: ${nameRegex.templates[0].id}
    

    Using getMetricRuleTemplates

    Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

    function getMetricRuleTemplates(args: GetMetricRuleTemplatesArgs, opts?: InvokeOptions): Promise<GetMetricRuleTemplatesResult>
    function getMetricRuleTemplatesOutput(args: GetMetricRuleTemplatesOutputArgs, opts?: InvokeOptions): Output<GetMetricRuleTemplatesResult>
    def get_metric_rule_templates(enable_details: Optional[bool] = None,
                                  ids: Optional[Sequence[str]] = None,
                                  keyword: Optional[str] = None,
                                  metric_rule_template_name: Optional[str] = None,
                                  name_regex: Optional[str] = None,
                                  output_file: Optional[str] = None,
                                  template_id: Optional[str] = None,
                                  opts: Optional[InvokeOptions] = None) -> GetMetricRuleTemplatesResult
    def get_metric_rule_templates_output(enable_details: Optional[pulumi.Input[bool]] = None,
                                  ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                                  keyword: Optional[pulumi.Input[str]] = None,
                                  metric_rule_template_name: Optional[pulumi.Input[str]] = None,
                                  name_regex: Optional[pulumi.Input[str]] = None,
                                  output_file: Optional[pulumi.Input[str]] = None,
                                  template_id: Optional[pulumi.Input[str]] = None,
                                  opts: Optional[InvokeOptions] = None) -> Output[GetMetricRuleTemplatesResult]
    func GetMetricRuleTemplates(ctx *Context, args *GetMetricRuleTemplatesArgs, opts ...InvokeOption) (*GetMetricRuleTemplatesResult, error)
    func GetMetricRuleTemplatesOutput(ctx *Context, args *GetMetricRuleTemplatesOutputArgs, opts ...InvokeOption) GetMetricRuleTemplatesResultOutput

    > Note: This function is named GetMetricRuleTemplates in the Go SDK.

    public static class GetMetricRuleTemplates 
    {
        public static Task<GetMetricRuleTemplatesResult> InvokeAsync(GetMetricRuleTemplatesArgs args, InvokeOptions? opts = null)
        public static Output<GetMetricRuleTemplatesResult> Invoke(GetMetricRuleTemplatesInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetMetricRuleTemplatesResult> getMetricRuleTemplates(GetMetricRuleTemplatesArgs args, InvokeOptions options)
    // Output-based functions aren't available in Java yet
    
    fn::invoke:
      function: alicloud:cms/getMetricRuleTemplates:getMetricRuleTemplates
      arguments:
        # arguments dictionary

    The following arguments are supported:

    EnableDetails bool
    Valid values: true or false. Default to false. Set it to true can output more details about resource attributes.
    Ids List<string>
    A list of Metric Rule Template IDs.
    Keyword string
    The name of the alert template. You can perform fuzzy search based on the template name.
    MetricRuleTemplateName string
    The name of the alert template.
    NameRegex string
    A regex string to filter results by Metric Rule Template name.
    OutputFile string
    File name where to save data source results (after running pulumi preview).
    TemplateId string
    The ID of the alert template.
    EnableDetails bool
    Valid values: true or false. Default to false. Set it to true can output more details about resource attributes.
    Ids []string
    A list of Metric Rule Template IDs.
    Keyword string
    The name of the alert template. You can perform fuzzy search based on the template name.
    MetricRuleTemplateName string
    The name of the alert template.
    NameRegex string
    A regex string to filter results by Metric Rule Template name.
    OutputFile string
    File name where to save data source results (after running pulumi preview).
    TemplateId string
    The ID of the alert template.
    enableDetails Boolean
    Valid values: true or false. Default to false. Set it to true can output more details about resource attributes.
    ids List<String>
    A list of Metric Rule Template IDs.
    keyword String
    The name of the alert template. You can perform fuzzy search based on the template name.
    metricRuleTemplateName String
    The name of the alert template.
    nameRegex String
    A regex string to filter results by Metric Rule Template name.
    outputFile String
    File name where to save data source results (after running pulumi preview).
    templateId String
    The ID of the alert template.
    enableDetails boolean
    Valid values: true or false. Default to false. Set it to true can output more details about resource attributes.
    ids string[]
    A list of Metric Rule Template IDs.
    keyword string
    The name of the alert template. You can perform fuzzy search based on the template name.
    metricRuleTemplateName string
    The name of the alert template.
    nameRegex string
    A regex string to filter results by Metric Rule Template name.
    outputFile string
    File name where to save data source results (after running pulumi preview).
    templateId string
    The ID of the alert template.
    enable_details bool
    Valid values: true or false. Default to false. Set it to true can output more details about resource attributes.
    ids Sequence[str]
    A list of Metric Rule Template IDs.
    keyword str
    The name of the alert template. You can perform fuzzy search based on the template name.
    metric_rule_template_name str
    The name of the alert template.
    name_regex str
    A regex string to filter results by Metric Rule Template name.
    output_file str
    File name where to save data source results (after running pulumi preview).
    template_id str
    The ID of the alert template.
    enableDetails Boolean
    Valid values: true or false. Default to false. Set it to true can output more details about resource attributes.
    ids List<String>
    A list of Metric Rule Template IDs.
    keyword String
    The name of the alert template. You can perform fuzzy search based on the template name.
    metricRuleTemplateName String
    The name of the alert template.
    nameRegex String
    A regex string to filter results by Metric Rule Template name.
    outputFile String
    File name where to save data source results (after running pulumi preview).
    templateId String
    The ID of the alert template.

    getMetricRuleTemplates Result

    The following output properties are available:

    Id string
    The provider-assigned unique ID for this managed resource.
    Ids List<string>
    Names List<string>
    Templates List<Pulumi.AliCloud.Cms.Outputs.GetMetricRuleTemplatesTemplate>
    EnableDetails bool
    Keyword string
    MetricRuleTemplateName string
    NameRegex string
    OutputFile string
    TemplateId string
    Id string
    The provider-assigned unique ID for this managed resource.
    Ids []string
    Names []string
    Templates []GetMetricRuleTemplatesTemplate
    EnableDetails bool
    Keyword string
    MetricRuleTemplateName string
    NameRegex string
    OutputFile string
    TemplateId string
    id String
    The provider-assigned unique ID for this managed resource.
    ids List<String>
    names List<String>
    templates List<GetMetricRuleTemplatesTemplate>
    enableDetails Boolean
    keyword String
    metricRuleTemplateName String
    nameRegex String
    outputFile String
    templateId String
    id string
    The provider-assigned unique ID for this managed resource.
    ids string[]
    names string[]
    templates GetMetricRuleTemplatesTemplate[]
    enableDetails boolean
    keyword string
    metricRuleTemplateName string
    nameRegex string
    outputFile string
    templateId string
    id str
    The provider-assigned unique ID for this managed resource.
    ids Sequence[str]
    names Sequence[str]
    templates Sequence[GetMetricRuleTemplatesTemplate]
    enable_details bool
    keyword str
    metric_rule_template_name str
    name_regex str
    output_file str
    template_id str
    id String
    The provider-assigned unique ID for this managed resource.
    ids List<String>
    names List<String>
    templates List<Property Map>
    enableDetails Boolean
    keyword String
    metricRuleTemplateName String
    nameRegex String
    outputFile String
    templateId String

    Supporting Types

    GetMetricRuleTemplatesTemplate

    AlertTemplates List<Pulumi.AliCloud.Cms.Inputs.GetMetricRuleTemplatesTemplateAlertTemplate>
    The details of alert rules that are generated based on the alert template.
    Description string
    The description of the alert template.
    GroupId string
    GroupId.
    Id string
    The ID of the Metric Rule Template.
    MetricRuleTemplateName string
    The name of the alert template.
    RestVersion string

    The version of the alert template.

    NOTE: The version changes with the number of times that the alert template is modified.

    TemplateId string
    The ID of the alert template.
    AlertTemplates []GetMetricRuleTemplatesTemplateAlertTemplate
    The details of alert rules that are generated based on the alert template.
    Description string
    The description of the alert template.
    GroupId string
    GroupId.
    Id string
    The ID of the Metric Rule Template.
    MetricRuleTemplateName string
    The name of the alert template.
    RestVersion string

    The version of the alert template.

    NOTE: The version changes with the number of times that the alert template is modified.

    TemplateId string
    The ID of the alert template.
    alertTemplates List<GetMetricRuleTemplatesTemplateAlertTemplate>
    The details of alert rules that are generated based on the alert template.
    description String
    The description of the alert template.
    groupId String
    GroupId.
    id String
    The ID of the Metric Rule Template.
    metricRuleTemplateName String
    The name of the alert template.
    restVersion String

    The version of the alert template.

    NOTE: The version changes with the number of times that the alert template is modified.

    templateId String
    The ID of the alert template.
    alertTemplates GetMetricRuleTemplatesTemplateAlertTemplate[]
    The details of alert rules that are generated based on the alert template.
    description string
    The description of the alert template.
    groupId string
    GroupId.
    id string
    The ID of the Metric Rule Template.
    metricRuleTemplateName string
    The name of the alert template.
    restVersion string

    The version of the alert template.

    NOTE: The version changes with the number of times that the alert template is modified.

    templateId string
    The ID of the alert template.
    alert_templates Sequence[GetMetricRuleTemplatesTemplateAlertTemplate]
    The details of alert rules that are generated based on the alert template.
    description str
    The description of the alert template.
    group_id str
    GroupId.
    id str
    The ID of the Metric Rule Template.
    metric_rule_template_name str
    The name of the alert template.
    rest_version str

    The version of the alert template.

    NOTE: The version changes with the number of times that the alert template is modified.

    template_id str
    The ID of the alert template.
    alertTemplates List<Property Map>
    The details of alert rules that are generated based on the alert template.
    description String
    The description of the alert template.
    groupId String
    GroupId.
    id String
    The ID of the Metric Rule Template.
    metricRuleTemplateName String
    The name of the alert template.
    restVersion String

    The version of the alert template.

    NOTE: The version changes with the number of times that the alert template is modified.

    templateId String
    The ID of the alert template.

    GetMetricRuleTemplatesTemplateAlertTemplate

    GetMetricRuleTemplatesTemplateAlertTemplateEscalation

    GetMetricRuleTemplatesTemplateAlertTemplateEscalationCritical

    ComparisonOperator string
    Statistics string
    Threshold string
    Times string
    ComparisonOperator string
    Statistics string
    Threshold string
    Times string
    comparisonOperator String
    statistics String
    threshold String
    times String
    comparisonOperator string
    statistics string
    threshold string
    times string
    comparisonOperator String
    statistics String
    threshold String
    times String

    GetMetricRuleTemplatesTemplateAlertTemplateEscalationInfo

    ComparisonOperator string
    Statistics string
    Threshold string
    Times string
    ComparisonOperator string
    Statistics string
    Threshold string
    Times string
    comparisonOperator String
    statistics String
    threshold String
    times String
    comparisonOperator string
    statistics string
    threshold string
    times string
    comparisonOperator String
    statistics String
    threshold String
    times String

    GetMetricRuleTemplatesTemplateAlertTemplateEscalationWarn

    ComparisonOperator string
    Statistics string
    Threshold string
    Times string
    ComparisonOperator string
    Statistics string
    Threshold string
    Times string
    comparisonOperator String
    statistics String
    threshold String
    times String
    comparisonOperator string
    statistics string
    threshold string
    times string
    comparisonOperator String
    statistics String
    threshold String
    times String

    Package Details

    Repository
    Alibaba Cloud pulumi/pulumi-alicloud
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the alicloud Terraform Provider.
    alicloud logo
    Alibaba Cloud v3.54.0 published on Wednesday, Apr 24, 2024 by Pulumi