RuleGroupNamespace

class RuleGroupNamespace : KotlinCustomResource

Manages an Amazon Managed Service for Prometheus (AMP) Rule Group Namespace

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const demo = new aws.amp.Workspace("demo", {});
const demoRuleGroupNamespace = new aws.amp.RuleGroupNamespace("demo", {
name: "rules",
workspaceId: demo.id,
data: `groups:
- name: test
rules:
- record: metric:recording_rule
expr: avg(rate(container_cpu_usage_seconds_total[5m]))
`,
});
import pulumi
import pulumi_aws as aws
demo = aws.amp.Workspace("demo")
demo_rule_group_namespace = aws.amp.RuleGroupNamespace("demo",
name="rules",
workspace_id=demo.id,
data="""groups:
- name: test
rules:
- record: metric:recording_rule
expr: avg(rate(container_cpu_usage_seconds_total[5m]))
""")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var demo = new Aws.Amp.Workspace("demo");
var demoRuleGroupNamespace = new Aws.Amp.RuleGroupNamespace("demo", new()
{
Name = "rules",
WorkspaceId = demo.Id,
Data = @"groups:
- name: test
rules:
- record: metric:recording_rule
expr: avg(rate(container_cpu_usage_seconds_total[5m]))
",
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/amp"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
demo, err := amp.NewWorkspace(ctx, "demo", nil)
if err != nil {
return err
}
_, err = amp.NewRuleGroupNamespace(ctx, "demo", &amp.RuleGroupNamespaceArgs{
Name: pulumi.String("rules"),
WorkspaceId: demo.ID(),
Data: pulumi.String(`groups:
- name: test
rules:
- record: metric:recording_rule
expr: avg(rate(container_cpu_usage_seconds_total[5m]))
`),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.amp.Workspace;
import com.pulumi.aws.amp.RuleGroupNamespace;
import com.pulumi.aws.amp.RuleGroupNamespaceArgs;
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) {
var demo = new Workspace("demo");
var demoRuleGroupNamespace = new RuleGroupNamespace("demoRuleGroupNamespace", RuleGroupNamespaceArgs.builder()
.name("rules")
.workspaceId(demo.id())
.data("""
groups:
- name: test
rules:
- record: metric:recording_rule
expr: avg(rate(container_cpu_usage_seconds_total[5m]))
""")
.build());
}
}
resources:
demo:
type: aws:amp:Workspace
demoRuleGroupNamespace:
type: aws:amp:RuleGroupNamespace
name: demo
properties:
name: rules
workspaceId: ${demo.id}
data: |
groups:
- name: test
rules:
- record: metric:recording_rule
expr: avg(rate(container_cpu_usage_seconds_total[5m]))

Import

Using pulumi import, import the prometheus rule group namespace using the arn. For example:

$ pulumi import aws:amp/ruleGroupNamespace:RuleGroupNamespace demo arn:aws:aps:us-west-2:123456789012:rulegroupsnamespace/IDstring/namespace_name

Properties

Link copied to clipboard
val arn: Output<String>

The ARN of the rule group namespace.

Link copied to clipboard
val data: Output<String>

the rule group namespace data that you want to be applied. See more in AWS Docs.

Link copied to clipboard
val id: Output<String>
Link copied to clipboard
val name: Output<String>

The name of the rule group namespace.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val tags: Output<Map<String, String>>?

Map of tags assigned to the resource. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

Link copied to clipboard
val tagsAll: Output<Map<String, String>>

Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Link copied to clipboard
val urn: Output<String>
Link copied to clipboard
val workspaceId: Output<String>

ID of the prometheus workspace the rule group namespace should be linked to.