signalfx.MetricRuleset
Explore with Pulumi AI
Provides an Observability Cloud resource for managing metric rulesets.
NOTE When managing metric rulesets to drop data use a session token for an administrator to authenticate the Splunk Observability Cloud provider. See Operations that require a session token for an administrator. Otherwise you’ll receive a 4xx error.
Example
resource "signalfx_metric_ruleset" "cpu_utilization_metric_ruleset" {
    metric_name = "cpu.utilization"
    aggregation_rules {
        name = "cpu.utilization by service rule"
        enabled = true
        matcher {
            type = "dimension"
            filters {
                property = "realm"
                property_value = [ "us-east-1" ]
                not = false
            }
        }
        aggregator {
            type = "rollup"
            dimensions = [ "service" ]
            drop_dimensions = false
            output_name = "cpu.utilization.by.service.agg"
        }
    }
    routing_rule {
        destination = "RealTime"
    }
}
Create MetricRuleset Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new MetricRuleset(name: string, args: MetricRulesetArgs, opts?: CustomResourceOptions);@overload
def MetricRuleset(resource_name: str,
                  args: MetricRulesetArgs,
                  opts: Optional[ResourceOptions] = None)
@overload
def MetricRuleset(resource_name: str,
                  opts: Optional[ResourceOptions] = None,
                  metric_name: Optional[str] = None,
                  routing_rules: Optional[Sequence[MetricRulesetRoutingRuleArgs]] = None,
                  aggregation_rules: Optional[Sequence[MetricRulesetAggregationRuleArgs]] = None)func NewMetricRuleset(ctx *Context, name string, args MetricRulesetArgs, opts ...ResourceOption) (*MetricRuleset, error)public MetricRuleset(string name, MetricRulesetArgs args, CustomResourceOptions? opts = null)
public MetricRuleset(String name, MetricRulesetArgs args)
public MetricRuleset(String name, MetricRulesetArgs args, CustomResourceOptions options)
type: signalfx:MetricRuleset
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args MetricRulesetArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args MetricRulesetArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args MetricRulesetArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args MetricRulesetArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args MetricRulesetArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var metricRulesetResource = new SignalFx.MetricRuleset("metricRulesetResource", new()
{
    MetricName = "string",
    RoutingRules = new[]
    {
        new SignalFx.Inputs.MetricRulesetRoutingRuleArgs
        {
            Destination = "string",
        },
    },
    AggregationRules = new[]
    {
        new SignalFx.Inputs.MetricRulesetAggregationRuleArgs
        {
            Aggregators = new[]
            {
                new SignalFx.Inputs.MetricRulesetAggregationRuleAggregatorArgs
                {
                    Dimensions = new[]
                    {
                        "string",
                    },
                    DropDimensions = false,
                    OutputName = "string",
                    Type = "string",
                },
            },
            Enabled = false,
            Matchers = new[]
            {
                new SignalFx.Inputs.MetricRulesetAggregationRuleMatcherArgs
                {
                    Type = "string",
                    Filters = new[]
                    {
                        new SignalFx.Inputs.MetricRulesetAggregationRuleMatcherFilterArgs
                        {
                            Not = false,
                            Property = "string",
                            PropertyValues = new[]
                            {
                                "string",
                            },
                        },
                    },
                },
            },
            Name = "string",
        },
    },
});
example, err := signalfx.NewMetricRuleset(ctx, "metricRulesetResource", &signalfx.MetricRulesetArgs{
	MetricName: pulumi.String("string"),
	RoutingRules: signalfx.MetricRulesetRoutingRuleArray{
		&signalfx.MetricRulesetRoutingRuleArgs{
			Destination: pulumi.String("string"),
		},
	},
	AggregationRules: signalfx.MetricRulesetAggregationRuleArray{
		&signalfx.MetricRulesetAggregationRuleArgs{
			Aggregators: signalfx.MetricRulesetAggregationRuleAggregatorArray{
				&signalfx.MetricRulesetAggregationRuleAggregatorArgs{
					Dimensions: pulumi.StringArray{
						pulumi.String("string"),
					},
					DropDimensions: pulumi.Bool(false),
					OutputName:     pulumi.String("string"),
					Type:           pulumi.String("string"),
				},
			},
			Enabled: pulumi.Bool(false),
			Matchers: signalfx.MetricRulesetAggregationRuleMatcherArray{
				&signalfx.MetricRulesetAggregationRuleMatcherArgs{
					Type: pulumi.String("string"),
					Filters: signalfx.MetricRulesetAggregationRuleMatcherFilterArray{
						&signalfx.MetricRulesetAggregationRuleMatcherFilterArgs{
							Not:      pulumi.Bool(false),
							Property: pulumi.String("string"),
							PropertyValues: pulumi.StringArray{
								pulumi.String("string"),
							},
						},
					},
				},
			},
			Name: pulumi.String("string"),
		},
	},
})
var metricRulesetResource = new MetricRuleset("metricRulesetResource", MetricRulesetArgs.builder()
    .metricName("string")
    .routingRules(MetricRulesetRoutingRuleArgs.builder()
        .destination("string")
        .build())
    .aggregationRules(MetricRulesetAggregationRuleArgs.builder()
        .aggregators(MetricRulesetAggregationRuleAggregatorArgs.builder()
            .dimensions("string")
            .dropDimensions(false)
            .outputName("string")
            .type("string")
            .build())
        .enabled(false)
        .matchers(MetricRulesetAggregationRuleMatcherArgs.builder()
            .type("string")
            .filters(MetricRulesetAggregationRuleMatcherFilterArgs.builder()
                .not(false)
                .property("string")
                .propertyValues("string")
                .build())
            .build())
        .name("string")
        .build())
    .build());
metric_ruleset_resource = signalfx.MetricRuleset("metricRulesetResource",
    metric_name="string",
    routing_rules=[signalfx.MetricRulesetRoutingRuleArgs(
        destination="string",
    )],
    aggregation_rules=[signalfx.MetricRulesetAggregationRuleArgs(
        aggregators=[signalfx.MetricRulesetAggregationRuleAggregatorArgs(
            dimensions=["string"],
            drop_dimensions=False,
            output_name="string",
            type="string",
        )],
        enabled=False,
        matchers=[signalfx.MetricRulesetAggregationRuleMatcherArgs(
            type="string",
            filters=[signalfx.MetricRulesetAggregationRuleMatcherFilterArgs(
                not_=False,
                property="string",
                property_values=["string"],
            )],
        )],
        name="string",
    )])
const metricRulesetResource = new signalfx.MetricRuleset("metricRulesetResource", {
    metricName: "string",
    routingRules: [{
        destination: "string",
    }],
    aggregationRules: [{
        aggregators: [{
            dimensions: ["string"],
            dropDimensions: false,
            outputName: "string",
            type: "string",
        }],
        enabled: false,
        matchers: [{
            type: "string",
            filters: [{
                not: false,
                property: "string",
                propertyValues: ["string"],
            }],
        }],
        name: "string",
    }],
});
type: signalfx:MetricRuleset
properties:
    aggregationRules:
        - aggregators:
            - dimensions:
                - string
              dropDimensions: false
              outputName: string
              type: string
          enabled: false
          matchers:
            - filters:
                - not: false
                  property: string
                  propertyValues:
                    - string
              type: string
          name: string
    metricName: string
    routingRules:
        - destination: string
MetricRuleset Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The MetricRuleset resource accepts the following input properties:
- MetricName string
- Name of the input metric
- RoutingRules List<Pulumi.Signal Fx. Inputs. Metric Ruleset Routing Rule> 
- Routing Rule object
- AggregationRules List<Pulumi.Signal Fx. Inputs. Metric Ruleset Aggregation Rule> 
- List of aggregation rules for the metric
- MetricName string
- Name of the input metric
- RoutingRules []MetricRuleset Routing Rule Args 
- Routing Rule object
- AggregationRules []MetricRuleset Aggregation Rule Args 
- List of aggregation rules for the metric
- metricName String
- Name of the input metric
- routingRules List<MetricRuleset Routing Rule> 
- Routing Rule object
- aggregationRules List<MetricRuleset Aggregation Rule> 
- List of aggregation rules for the metric
- metricName string
- Name of the input metric
- routingRules MetricRuleset Routing Rule[] 
- Routing Rule object
- aggregationRules MetricRuleset Aggregation Rule[] 
- List of aggregation rules for the metric
- metric_name str
- Name of the input metric
- routing_rules Sequence[MetricRuleset Routing Rule Args] 
- Routing Rule object
- aggregation_rules Sequence[MetricRuleset Aggregation Rule Args] 
- List of aggregation rules for the metric
- metricName String
- Name of the input metric
- routingRules List<Property Map>
- Routing Rule object
- aggregationRules List<Property Map>
- List of aggregation rules for the metric
Outputs
All input properties are implicitly available as output properties. Additionally, the MetricRuleset resource produces the following output properties:
- Created string
- Timestamp of when the metric ruleset was created
- Creator string
- ID of the creator of the metric ruleset
- Id string
- The provider-assigned unique ID for this managed resource.
- LastUpdated string
- Timestamp of when the metric ruleset was last updated
- LastUpdated stringBy 
- ID of user who last updated the metric ruleset
- LastUpdated stringBy Name 
- Name of user who last updated this metric ruleset
- Version string
- Version of the ruleset
- Created string
- Timestamp of when the metric ruleset was created
- Creator string
- ID of the creator of the metric ruleset
- Id string
- The provider-assigned unique ID for this managed resource.
- LastUpdated string
- Timestamp of when the metric ruleset was last updated
- LastUpdated stringBy 
- ID of user who last updated the metric ruleset
- LastUpdated stringBy Name 
- Name of user who last updated this metric ruleset
- Version string
- Version of the ruleset
- created String
- Timestamp of when the metric ruleset was created
- creator String
- ID of the creator of the metric ruleset
- id String
- The provider-assigned unique ID for this managed resource.
- lastUpdated String
- Timestamp of when the metric ruleset was last updated
- lastUpdated StringBy 
- ID of user who last updated the metric ruleset
- lastUpdated StringBy Name 
- Name of user who last updated this metric ruleset
- version String
- Version of the ruleset
- created string
- Timestamp of when the metric ruleset was created
- creator string
- ID of the creator of the metric ruleset
- id string
- The provider-assigned unique ID for this managed resource.
- lastUpdated string
- Timestamp of when the metric ruleset was last updated
- lastUpdated stringBy 
- ID of user who last updated the metric ruleset
- lastUpdated stringBy Name 
- Name of user who last updated this metric ruleset
- version string
- Version of the ruleset
- created str
- Timestamp of when the metric ruleset was created
- creator str
- ID of the creator of the metric ruleset
- id str
- The provider-assigned unique ID for this managed resource.
- last_updated str
- Timestamp of when the metric ruleset was last updated
- last_updated_ strby 
- ID of user who last updated the metric ruleset
- last_updated_ strby_ name 
- Name of user who last updated this metric ruleset
- version str
- Version of the ruleset
- created String
- Timestamp of when the metric ruleset was created
- creator String
- ID of the creator of the metric ruleset
- id String
- The provider-assigned unique ID for this managed resource.
- lastUpdated String
- Timestamp of when the metric ruleset was last updated
- lastUpdated StringBy 
- ID of user who last updated the metric ruleset
- lastUpdated StringBy Name 
- Name of user who last updated this metric ruleset
- version String
- Version of the ruleset
Look up Existing MetricRuleset Resource
Get an existing MetricRuleset resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: MetricRulesetState, opts?: CustomResourceOptions): MetricRuleset@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        aggregation_rules: Optional[Sequence[MetricRulesetAggregationRuleArgs]] = None,
        created: Optional[str] = None,
        creator: Optional[str] = None,
        last_updated: Optional[str] = None,
        last_updated_by: Optional[str] = None,
        last_updated_by_name: Optional[str] = None,
        metric_name: Optional[str] = None,
        routing_rules: Optional[Sequence[MetricRulesetRoutingRuleArgs]] = None,
        version: Optional[str] = None) -> MetricRulesetfunc GetMetricRuleset(ctx *Context, name string, id IDInput, state *MetricRulesetState, opts ...ResourceOption) (*MetricRuleset, error)public static MetricRuleset Get(string name, Input<string> id, MetricRulesetState? state, CustomResourceOptions? opts = null)public static MetricRuleset get(String name, Output<String> id, MetricRulesetState state, CustomResourceOptions options)Resource lookup is not supported in YAML- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- AggregationRules List<Pulumi.Signal Fx. Inputs. Metric Ruleset Aggregation Rule> 
- List of aggregation rules for the metric
- Created string
- Timestamp of when the metric ruleset was created
- Creator string
- ID of the creator of the metric ruleset
- LastUpdated string
- Timestamp of when the metric ruleset was last updated
- LastUpdated stringBy 
- ID of user who last updated the metric ruleset
- LastUpdated stringBy Name 
- Name of user who last updated this metric ruleset
- MetricName string
- Name of the input metric
- RoutingRules List<Pulumi.Signal Fx. Inputs. Metric Ruleset Routing Rule> 
- Routing Rule object
- Version string
- Version of the ruleset
- AggregationRules []MetricRuleset Aggregation Rule Args 
- List of aggregation rules for the metric
- Created string
- Timestamp of when the metric ruleset was created
- Creator string
- ID of the creator of the metric ruleset
- LastUpdated string
- Timestamp of when the metric ruleset was last updated
- LastUpdated stringBy 
- ID of user who last updated the metric ruleset
- LastUpdated stringBy Name 
- Name of user who last updated this metric ruleset
- MetricName string
- Name of the input metric
- RoutingRules []MetricRuleset Routing Rule Args 
- Routing Rule object
- Version string
- Version of the ruleset
- aggregationRules List<MetricRuleset Aggregation Rule> 
- List of aggregation rules for the metric
- created String
- Timestamp of when the metric ruleset was created
- creator String
- ID of the creator of the metric ruleset
- lastUpdated String
- Timestamp of when the metric ruleset was last updated
- lastUpdated StringBy 
- ID of user who last updated the metric ruleset
- lastUpdated StringBy Name 
- Name of user who last updated this metric ruleset
- metricName String
- Name of the input metric
- routingRules List<MetricRuleset Routing Rule> 
- Routing Rule object
- version String
- Version of the ruleset
- aggregationRules MetricRuleset Aggregation Rule[] 
- List of aggregation rules for the metric
- created string
- Timestamp of when the metric ruleset was created
- creator string
- ID of the creator of the metric ruleset
- lastUpdated string
- Timestamp of when the metric ruleset was last updated
- lastUpdated stringBy 
- ID of user who last updated the metric ruleset
- lastUpdated stringBy Name 
- Name of user who last updated this metric ruleset
- metricName string
- Name of the input metric
- routingRules MetricRuleset Routing Rule[] 
- Routing Rule object
- version string
- Version of the ruleset
- aggregation_rules Sequence[MetricRuleset Aggregation Rule Args] 
- List of aggregation rules for the metric
- created str
- Timestamp of when the metric ruleset was created
- creator str
- ID of the creator of the metric ruleset
- last_updated str
- Timestamp of when the metric ruleset was last updated
- last_updated_ strby 
- ID of user who last updated the metric ruleset
- last_updated_ strby_ name 
- Name of user who last updated this metric ruleset
- metric_name str
- Name of the input metric
- routing_rules Sequence[MetricRuleset Routing Rule Args] 
- Routing Rule object
- version str
- Version of the ruleset
- aggregationRules List<Property Map>
- List of aggregation rules for the metric
- created String
- Timestamp of when the metric ruleset was created
- creator String
- ID of the creator of the metric ruleset
- lastUpdated String
- Timestamp of when the metric ruleset was last updated
- lastUpdated StringBy 
- ID of user who last updated the metric ruleset
- lastUpdated StringBy Name 
- Name of user who last updated this metric ruleset
- metricName String
- Name of the input metric
- routingRules List<Property Map>
- Routing Rule object
- version String
- Version of the ruleset
Supporting Types
MetricRulesetAggregationRule, MetricRulesetAggregationRuleArgs        
- Aggregators
List<Pulumi.Signal Fx. Inputs. Metric Ruleset Aggregation Rule Aggregator> 
- Aggregator object
- Enabled bool
- When false, this rule will not generate aggregated MTSs
- Matchers
List<Pulumi.Signal Fx. Inputs. Metric Ruleset Aggregation Rule Matcher> 
- Matcher object
- Name string
- name of the aggregation rule
- Aggregators
[]MetricRuleset Aggregation Rule Aggregator 
- Aggregator object
- Enabled bool
- When false, this rule will not generate aggregated MTSs
- Matchers
[]MetricRuleset Aggregation Rule Matcher 
- Matcher object
- Name string
- name of the aggregation rule
- aggregators
List<MetricRuleset Aggregation Rule Aggregator> 
- Aggregator object
- enabled Boolean
- When false, this rule will not generate aggregated MTSs
- matchers
List<MetricRuleset Aggregation Rule Matcher> 
- Matcher object
- name String
- name of the aggregation rule
- aggregators
MetricRuleset Aggregation Rule Aggregator[] 
- Aggregator object
- enabled boolean
- When false, this rule will not generate aggregated MTSs
- matchers
MetricRuleset Aggregation Rule Matcher[] 
- Matcher object
- name string
- name of the aggregation rule
- aggregators
Sequence[MetricRuleset Aggregation Rule Aggregator] 
- Aggregator object
- enabled bool
- When false, this rule will not generate aggregated MTSs
- matchers
Sequence[MetricRuleset Aggregation Rule Matcher] 
- Matcher object
- name str
- name of the aggregation rule
- aggregators List<Property Map>
- Aggregator object
- enabled Boolean
- When false, this rule will not generate aggregated MTSs
- matchers List<Property Map>
- Matcher object
- name String
- name of the aggregation rule
MetricRulesetAggregationRuleAggregator, MetricRulesetAggregationRuleAggregatorArgs          
- Dimensions List<string>
- List of dimensions to either be kept or dropped in the new aggregated MTSs
- DropDimensions bool
- when true, the specified dimensions will be dropped from the aggregated MTSs
- OutputName string
- name of the new aggregated metric
- Type string
- Type of aggregator. Must always be "rollup"
- Dimensions []string
- List of dimensions to either be kept or dropped in the new aggregated MTSs
- DropDimensions bool
- when true, the specified dimensions will be dropped from the aggregated MTSs
- OutputName string
- name of the new aggregated metric
- Type string
- Type of aggregator. Must always be "rollup"
- dimensions List<String>
- List of dimensions to either be kept or dropped in the new aggregated MTSs
- dropDimensions Boolean
- when true, the specified dimensions will be dropped from the aggregated MTSs
- outputName String
- name of the new aggregated metric
- type String
- Type of aggregator. Must always be "rollup"
- dimensions string[]
- List of dimensions to either be kept or dropped in the new aggregated MTSs
- dropDimensions boolean
- when true, the specified dimensions will be dropped from the aggregated MTSs
- outputName string
- name of the new aggregated metric
- type string
- Type of aggregator. Must always be "rollup"
- dimensions Sequence[str]
- List of dimensions to either be kept or dropped in the new aggregated MTSs
- drop_dimensions bool
- when true, the specified dimensions will be dropped from the aggregated MTSs
- output_name str
- name of the new aggregated metric
- type str
- Type of aggregator. Must always be "rollup"
- dimensions List<String>
- List of dimensions to either be kept or dropped in the new aggregated MTSs
- dropDimensions Boolean
- when true, the specified dimensions will be dropped from the aggregated MTSs
- outputName String
- name of the new aggregated metric
- type String
- Type of aggregator. Must always be "rollup"
MetricRulesetAggregationRuleMatcher, MetricRulesetAggregationRuleMatcherArgs          
- Type string
- Type of matcher. Must always be "dimension"
- Filters
List<Pulumi.Signal Fx. Inputs. Metric Ruleset Aggregation Rule Matcher Filter> 
- List of filters to filter the set of input MTSs
- Type string
- Type of matcher. Must always be "dimension"
- Filters
[]MetricRuleset Aggregation Rule Matcher Filter 
- List of filters to filter the set of input MTSs
- type String
- Type of matcher. Must always be "dimension"
- filters
List<MetricRuleset Aggregation Rule Matcher Filter> 
- List of filters to filter the set of input MTSs
- type string
- Type of matcher. Must always be "dimension"
- filters
MetricRuleset Aggregation Rule Matcher Filter[] 
- List of filters to filter the set of input MTSs
- type str
- Type of matcher. Must always be "dimension"
- filters
Sequence[MetricRuleset Aggregation Rule Matcher Filter] 
- List of filters to filter the set of input MTSs
- type String
- Type of matcher. Must always be "dimension"
- filters List<Property Map>
- List of filters to filter the set of input MTSs
MetricRulesetAggregationRuleMatcherFilter, MetricRulesetAggregationRuleMatcherFilterArgs            
- Not bool
- When true, this filter will match all values not matching the property_values
- Property string
- Name of the dimension
- PropertyValues List<string>
- Value of the dimension
- Not bool
- When true, this filter will match all values not matching the property_values
- Property string
- Name of the dimension
- PropertyValues []string
- Value of the dimension
- not Boolean
- When true, this filter will match all values not matching the property_values
- property String
- Name of the dimension
- propertyValues List<String>
- Value of the dimension
- not boolean
- When true, this filter will match all values not matching the property_values
- property string
- Name of the dimension
- propertyValues string[]
- Value of the dimension
- not_ bool
- When true, this filter will match all values not matching the property_values
- property str
- Name of the dimension
- property_values Sequence[str]
- Value of the dimension
- not Boolean
- When true, this filter will match all values not matching the property_values
- property String
- Name of the dimension
- propertyValues List<String>
- Value of the dimension
MetricRulesetRoutingRule, MetricRulesetRoutingRuleArgs        
- Destination string
- end destination of the input metric. Must be RealTimeorDrop
- Destination string
- end destination of the input metric. Must be RealTimeorDrop
- destination String
- end destination of the input metric. Must be RealTimeorDrop
- destination string
- end destination of the input metric. Must be RealTimeorDrop
- destination str
- end destination of the input metric. Must be RealTimeorDrop
- destination String
- end destination of the input metric. Must be RealTimeorDrop
Package Details
- Repository
- SignalFx pulumi/pulumi-signalfx
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the signalfxTerraform Provider.