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"
}
}
Arguments
The following arguments are supported in the resource block:
metric_name
- (Required) Name of the input metricaggregation_rules
- (Optional) List of aggregation rules for the metricenabled
- (Required) When false, this rule will not generate aggregated MTSsname
- (Optional) name of the aggregation rulematcher
- (Required) Matcher objecttype
- (Required) Type of matcher. Must always be “dimension”filters
- (Optional) List of filters to filter the set of input MTSsproperty
- (Required) - Name of the dimensionproperty_value
- (Required) - Value of the dimensionnot
- When true, this filter will match all values not matching the property_values
aggregator
- (Required) - Aggregator objecttype
- (Required) Type of aggregator. Must always be “rollup”dimensions
- (Required) List of dimensions to either be kept or dropped in the new aggregated MTSsdrop_dimensions
- (Required) when true, the specified dimensions will be dropped from the aggregated MTSsoutput_name
- (Required) name of the new aggregated metric
routing_rule
- (Required) Routing Rule objectdestination
- (Required) - end destination of the input metric. Must beRealTime
orDrop
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.
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:
- Metric
Name string - Name of the metric
- Routing
Rules List<Pulumi.Signal Fx. Inputs. Metric Ruleset Routing Rule> - Location to send the input metric
- Aggregation
Rules List<Pulumi.Signal Fx. Inputs. Metric Ruleset Aggregation Rule> - Aggregation rules in the ruleset
- Metric
Name string - Name of the metric
- Routing
Rules []MetricRuleset Routing Rule Args - Location to send the input metric
- Aggregation
Rules []MetricRuleset Aggregation Rule Args - Aggregation rules in the ruleset
- metric
Name String - Name of the metric
- routing
Rules List<MetricRuleset Routing Rule> - Location to send the input metric
- aggregation
Rules List<MetricRuleset Aggregation Rule> - Aggregation rules in the ruleset
- metric
Name string - Name of the metric
- routing
Rules MetricRuleset Routing Rule[] - Location to send the input metric
- aggregation
Rules MetricRuleset Aggregation Rule[] - Aggregation rules in the ruleset
- metric_
name str - Name of the metric
- routing_
rules Sequence[MetricRuleset Routing Rule Args] - Location to send the input metric
- aggregation_
rules Sequence[MetricRuleset Aggregation Rule Args] - Aggregation rules in the ruleset
- metric
Name String - Name of the metric
- routing
Rules List<Property Map> - Location to send the input metric
- aggregation
Rules List<Property Map> - Aggregation rules in the ruleset
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.
- Last
Updated string - Timestamp of when the metric ruleset was last updated
- Last
Updated stringBy - ID of user who last updated the metric ruleset
- Last
Updated 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.
- Last
Updated string - Timestamp of when the metric ruleset was last updated
- Last
Updated stringBy - ID of user who last updated the metric ruleset
- Last
Updated 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.
- last
Updated String - Timestamp of when the metric ruleset was last updated
- last
Updated StringBy - ID of user who last updated the metric ruleset
- last
Updated 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.
- last
Updated string - Timestamp of when the metric ruleset was last updated
- last
Updated stringBy - ID of user who last updated the metric ruleset
- last
Updated 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.
- last
Updated String - Timestamp of when the metric ruleset was last updated
- last
Updated StringBy - ID of user who last updated the metric ruleset
- last
Updated 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) -> MetricRuleset
func 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.
- Aggregation
Rules List<Pulumi.Signal Fx. Inputs. Metric Ruleset Aggregation Rule> - Aggregation rules in the ruleset
- Created string
- Timestamp of when the metric ruleset was created
- Creator string
- ID of the creator of the metric ruleset
- Last
Updated string - Timestamp of when the metric ruleset was last updated
- Last
Updated stringBy - ID of user who last updated the metric ruleset
- Last
Updated stringBy Name - Name of user who last updated this metric ruleset
- Metric
Name string - Name of the metric
- Routing
Rules List<Pulumi.Signal Fx. Inputs. Metric Ruleset Routing Rule> - Location to send the input metric
- Version string
- Version of the ruleset
- Aggregation
Rules []MetricRuleset Aggregation Rule Args - Aggregation rules in the ruleset
- Created string
- Timestamp of when the metric ruleset was created
- Creator string
- ID of the creator of the metric ruleset
- Last
Updated string - Timestamp of when the metric ruleset was last updated
- Last
Updated stringBy - ID of user who last updated the metric ruleset
- Last
Updated stringBy Name - Name of user who last updated this metric ruleset
- Metric
Name string - Name of the metric
- Routing
Rules []MetricRuleset Routing Rule Args - Location to send the input metric
- Version string
- Version of the ruleset
- aggregation
Rules List<MetricRuleset Aggregation Rule> - Aggregation rules in the ruleset
- created String
- Timestamp of when the metric ruleset was created
- creator String
- ID of the creator of the metric ruleset
- last
Updated String - Timestamp of when the metric ruleset was last updated
- last
Updated StringBy - ID of user who last updated the metric ruleset
- last
Updated StringBy Name - Name of user who last updated this metric ruleset
- metric
Name String - Name of the metric
- routing
Rules List<MetricRuleset Routing Rule> - Location to send the input metric
- version String
- Version of the ruleset
- aggregation
Rules MetricRuleset Aggregation Rule[] - Aggregation rules in the ruleset
- created string
- Timestamp of when the metric ruleset was created
- creator string
- ID of the creator of the metric ruleset
- last
Updated string - Timestamp of when the metric ruleset was last updated
- last
Updated stringBy - ID of user who last updated the metric ruleset
- last
Updated stringBy Name - Name of user who last updated this metric ruleset
- metric
Name string - Name of the metric
- routing
Rules MetricRuleset Routing Rule[] - Location to send the input metric
- version string
- Version of the ruleset
- aggregation_
rules Sequence[MetricRuleset Aggregation Rule Args] - Aggregation rules in the ruleset
- 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 metric
- routing_
rules Sequence[MetricRuleset Routing Rule Args] - Location to send the input metric
- version str
- Version of the ruleset
- aggregation
Rules List<Property Map> - Aggregation rules in the ruleset
- created String
- Timestamp of when the metric ruleset was created
- creator String
- ID of the creator of the metric ruleset
- last
Updated String - Timestamp of when the metric ruleset was last updated
- last
Updated StringBy - ID of user who last updated the metric ruleset
- last
Updated StringBy Name - Name of user who last updated this metric ruleset
- metric
Name String - Name of the metric
- routing
Rules List<Property Map> - Location to send the input metric
- version String
- Version of the ruleset
Supporting Types
MetricRulesetAggregationRule, MetricRulesetAggregationRuleArgs
- Aggregators
List<Pulumi.
Signal Fx. Inputs. Metric Ruleset Aggregation Rule Aggregator> - The aggregator for this rule
- Enabled bool
- Status of this aggregation rule
- Matchers
List<Pulumi.
Signal Fx. Inputs. Metric Ruleset Aggregation Rule Matcher> - The matcher for this rule
- Name string
- Name of this aggregation rule
- Aggregators
[]Metric
Ruleset Aggregation Rule Aggregator - The aggregator for this rule
- Enabled bool
- Status of this aggregation rule
- Matchers
[]Metric
Ruleset Aggregation Rule Matcher - The matcher for this rule
- Name string
- Name of this aggregation rule
- aggregators
List<Metric
Ruleset Aggregation Rule Aggregator> - The aggregator for this rule
- enabled Boolean
- Status of this aggregation rule
- matchers
List<Metric
Ruleset Aggregation Rule Matcher> - The matcher for this rule
- name String
- Name of this aggregation rule
- aggregators
Metric
Ruleset Aggregation Rule Aggregator[] - The aggregator for this rule
- enabled boolean
- Status of this aggregation rule
- matchers
Metric
Ruleset Aggregation Rule Matcher[] - The matcher for this rule
- name string
- Name of this aggregation rule
- aggregators
Sequence[Metric
Ruleset Aggregation Rule Aggregator] - The aggregator for this rule
- enabled bool
- Status of this aggregation rule
- matchers
Sequence[Metric
Ruleset Aggregation Rule Matcher] - The matcher for this rule
- name str
- Name of this aggregation rule
- aggregators List<Property Map>
- The aggregator for this rule
- enabled Boolean
- Status of this aggregation rule
- matchers List<Property Map>
- The matcher for this rule
- name String
- Name of this aggregation rule
MetricRulesetAggregationRuleAggregator, MetricRulesetAggregationRuleAggregatorArgs
- Dimensions List<string>
- List of dimensions to keep or drop in aggregated metric
- Drop
Dimensions bool - Flag specifying to keep or drop given dimensions
- Output
Name string - The aggregated metric name
- Type string
- The type of the aggregator
- Dimensions []string
- List of dimensions to keep or drop in aggregated metric
- Drop
Dimensions bool - Flag specifying to keep or drop given dimensions
- Output
Name string - The aggregated metric name
- Type string
- The type of the aggregator
- dimensions List<String>
- List of dimensions to keep or drop in aggregated metric
- drop
Dimensions Boolean - Flag specifying to keep or drop given dimensions
- output
Name String - The aggregated metric name
- type String
- The type of the aggregator
- dimensions string[]
- List of dimensions to keep or drop in aggregated metric
- drop
Dimensions boolean - Flag specifying to keep or drop given dimensions
- output
Name string - The aggregated metric name
- type string
- The type of the aggregator
- dimensions Sequence[str]
- List of dimensions to keep or drop in aggregated metric
- drop_
dimensions bool - Flag specifying to keep or drop given dimensions
- output_
name str - The aggregated metric name
- type str
- The type of the aggregator
- dimensions List<String>
- List of dimensions to keep or drop in aggregated metric
- drop
Dimensions Boolean - Flag specifying to keep or drop given dimensions
- output
Name String - The aggregated metric name
- type String
- The type of the aggregator
MetricRulesetAggregationRuleMatcher, MetricRulesetAggregationRuleMatcherArgs
- Type string
- The type of the matcher
- Filters
List<Pulumi.
Signal Fx. Inputs. Metric Ruleset Aggregation Rule Matcher Filter> - List of filters to match on
- Type string
- The type of the matcher
- Filters
[]Metric
Ruleset Aggregation Rule Matcher Filter - List of filters to match on
- type String
- The type of the matcher
- filters
List<Metric
Ruleset Aggregation Rule Matcher Filter> - List of filters to match on
- type string
- The type of the matcher
- filters
Metric
Ruleset Aggregation Rule Matcher Filter[] - List of filters to match on
- type str
- The type of the matcher
- filters
Sequence[Metric
Ruleset Aggregation Rule Matcher Filter] - List of filters to match on
- type String
- The type of the matcher
- filters List<Property Map>
- List of filters to match on
MetricRulesetAggregationRuleMatcherFilter, MetricRulesetAggregationRuleMatcherFilterArgs
- Not bool
- Flag specifying equals or not equals
- Property string
- Name of dimension to match
- Property
Values List<string> - List of property values to match
- Not bool
- Flag specifying equals or not equals
- Property string
- Name of dimension to match
- Property
Values []string - List of property values to match
- not Boolean
- Flag specifying equals or not equals
- property String
- Name of dimension to match
- property
Values List<String> - List of property values to match
- not boolean
- Flag specifying equals or not equals
- property string
- Name of dimension to match
- property
Values string[] - List of property values to match
- not_ bool
- Flag specifying equals or not equals
- property str
- Name of dimension to match
- property_
values Sequence[str] - List of property values to match
- not Boolean
- Flag specifying equals or not equals
- property String
- Name of dimension to match
- property
Values List<String> - List of property values to match
MetricRulesetRoutingRule, MetricRulesetRoutingRuleArgs
- Destination string
- Destination to send the input metric
- Destination string
- Destination to send the input metric
- destination String
- Destination to send the input metric
- destination string
- Destination to send the input metric
- destination str
- Destination to send the input metric
- destination String
- Destination to send the input metric
Package Details
- Repository
- SignalFx pulumi/pulumi-signalfx
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
signalfx
Terraform Provider.