Wavefront

v1.1.0 published on Wednesday, Nov 24, 2021 by Pulumi

CloudIntegrationCloudWatch

Provides a Wavefront Cloud Integration for CloudTrail. This allows CloudTrail cloud integrations to be created, updated, and delete

Example Usage

using Pulumi;
using Wavefront = Pulumi.Wavefront;

class MyStack : Stack
{
    public MyStack()
    {
        var extId = new Wavefront.CloudIntegrationAwsExternalId("extId", new Wavefront.CloudIntegrationAwsExternalIdArgs
        {
        });
        var cloudwatch = new Wavefront.CloudIntegrationCloudWatch("cloudwatch", new Wavefront.CloudIntegrationCloudWatchArgs
        {
            ForceSave = true,
            RoleArn = "arn:aws::1234567:role/example-arn",
            ExternalId = extId.Id,
        });
    }

}
package main

import (
	"github.com/pulumi/pulumi-wavefront/sdk/go/wavefront"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		extId, err := wavefront.NewCloudIntegrationAwsExternalId(ctx, "extId", nil)
		if err != nil {
			return err
		}
		_, err = wavefront.NewCloudIntegrationCloudWatch(ctx, "cloudwatch", &wavefront.CloudIntegrationCloudWatchArgs{
			ForceSave:  pulumi.Bool(true),
			RoleArn:    pulumi.String("arn:aws::1234567:role/example-arn"),
			ExternalId: extId.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
import pulumi
import pulumi_wavefront as wavefront

ext_id = wavefront.CloudIntegrationAwsExternalId("extId")
cloudwatch = wavefront.CloudIntegrationCloudWatch("cloudwatch",
    force_save=True,
    role_arn="arn:aws::1234567:role/example-arn",
    external_id=ext_id.id)
import * as pulumi from "@pulumi/pulumi";
import * as wavefront from "@pulumi/wavefront";

const extId = new wavefront.CloudIntegrationAwsExternalId("extId", {});
const cloudwatch = new wavefront.CloudIntegrationCloudWatch("cloudwatch", {
    forceSave: true,
    roleArn: "arn:aws::1234567:role/example-arn",
    externalId: extId.id,
});

Create a CloudIntegrationCloudWatch Resource

new CloudIntegrationCloudWatch(name: string, args: CloudIntegrationCloudWatchArgs, opts?: CustomResourceOptions);
@overload
def CloudIntegrationCloudWatch(resource_name: str,
                               opts: Optional[ResourceOptions] = None,
                               additional_tags: Optional[Mapping[str, str]] = None,
                               external_id: Optional[str] = None,
                               force_save: Optional[bool] = None,
                               instance_selection_tags: Optional[Mapping[str, str]] = None,
                               metric_filter_regex: Optional[str] = None,
                               name: Optional[str] = None,
                               namespaces: Optional[Sequence[str]] = None,
                               point_tag_filter_regex: Optional[str] = None,
                               role_arn: Optional[str] = None,
                               service: Optional[str] = None,
                               service_refresh_rate_in_minutes: Optional[int] = None,
                               volume_selection_tags: Optional[Mapping[str, str]] = None)
@overload
def CloudIntegrationCloudWatch(resource_name: str,
                               args: CloudIntegrationCloudWatchArgs,
                               opts: Optional[ResourceOptions] = None)
func NewCloudIntegrationCloudWatch(ctx *Context, name string, args CloudIntegrationCloudWatchArgs, opts ...ResourceOption) (*CloudIntegrationCloudWatch, error)
public CloudIntegrationCloudWatch(string name, CloudIntegrationCloudWatchArgs args, CustomResourceOptions? opts = null)
name string
The unique name of the resource.
args CloudIntegrationCloudWatchArgs
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 CloudIntegrationCloudWatchArgs
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 CloudIntegrationCloudWatchArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args CloudIntegrationCloudWatchArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.

CloudIntegrationCloudWatch 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 CloudIntegrationCloudWatch resource accepts the following input properties:

ExternalId string
The Role ARN that the customer has created in AWS IAM to allow access to Wavefront
RoleArn string
The external id corresponding to the Role ARN
Service string
A value denoting which cloud service this service integrates with
AdditionalTags Dictionary<string, string>
A list of point tag key-values to add to every point ingested using this integration
ForceSave bool
Forces this resource to save, even if errors are present
InstanceSelectionTags Dictionary<string, string>
A string->string map whitelist of instance tag-value pairs (in AWS). If the instance’s AWS tags match this whitelist, CloudWatch data about this instance is ingested. Multiple entries are OR’ed
MetricFilterRegex string
A regular expression that a CloudWatch metric name must match (case-insensitively) in order to be ingested
Name string
The human-readable name of this integration
Namespaces List<string>
A list of namespaces that limit what we query from CloudWatch
PointTagFilterRegex string
A regular expression that AWS tag key name must match (case-insensitively) in order to be ingested
ServiceRefreshRateInMinutes int
How often, in minutes, to refresh the service
VolumeSelectionTags Dictionary<string, string>
A string->string map of whitelist of volume tag-value pairs (in AWS). If the volume’s AWS tags match this whitelist, CloudWatch data about this volume is ingested. Multiple entries are OR’ed
ExternalId string
The Role ARN that the customer has created in AWS IAM to allow access to Wavefront
RoleArn string
The external id corresponding to the Role ARN
Service string
A value denoting which cloud service this service integrates with
AdditionalTags map[string]string
A list of point tag key-values to add to every point ingested using this integration
ForceSave bool
Forces this resource to save, even if errors are present
InstanceSelectionTags map[string]string
A string->string map whitelist of instance tag-value pairs (in AWS). If the instance’s AWS tags match this whitelist, CloudWatch data about this instance is ingested. Multiple entries are OR’ed
MetricFilterRegex string
A regular expression that a CloudWatch metric name must match (case-insensitively) in order to be ingested
Name string
The human-readable name of this integration
Namespaces []string
A list of namespaces that limit what we query from CloudWatch
PointTagFilterRegex string
A regular expression that AWS tag key name must match (case-insensitively) in order to be ingested
ServiceRefreshRateInMinutes int
How often, in minutes, to refresh the service
VolumeSelectionTags map[string]string
A string->string map of whitelist of volume tag-value pairs (in AWS). If the volume’s AWS tags match this whitelist, CloudWatch data about this volume is ingested. Multiple entries are OR’ed
externalId string
The Role ARN that the customer has created in AWS IAM to allow access to Wavefront
roleArn string
The external id corresponding to the Role ARN
service string
A value denoting which cloud service this service integrates with
additionalTags {[key: string]: string}
A list of point tag key-values to add to every point ingested using this integration
forceSave boolean
Forces this resource to save, even if errors are present
instanceSelectionTags {[key: string]: string}
A string->string map whitelist of instance tag-value pairs (in AWS). If the instance’s AWS tags match this whitelist, CloudWatch data about this instance is ingested. Multiple entries are OR’ed
metricFilterRegex string
A regular expression that a CloudWatch metric name must match (case-insensitively) in order to be ingested
name string
The human-readable name of this integration
namespaces string[]
A list of namespaces that limit what we query from CloudWatch
pointTagFilterRegex string
A regular expression that AWS tag key name must match (case-insensitively) in order to be ingested
serviceRefreshRateInMinutes number
How often, in minutes, to refresh the service
volumeSelectionTags {[key: string]: string}
A string->string map of whitelist of volume tag-value pairs (in AWS). If the volume’s AWS tags match this whitelist, CloudWatch data about this volume is ingested. Multiple entries are OR’ed
external_id str
The Role ARN that the customer has created in AWS IAM to allow access to Wavefront
role_arn str
The external id corresponding to the Role ARN
service str
A value denoting which cloud service this service integrates with
additional_tags Mapping[str, str]
A list of point tag key-values to add to every point ingested using this integration
force_save bool
Forces this resource to save, even if errors are present
instance_selection_tags Mapping[str, str]
A string->string map whitelist of instance tag-value pairs (in AWS). If the instance’s AWS tags match this whitelist, CloudWatch data about this instance is ingested. Multiple entries are OR’ed
metric_filter_regex str
A regular expression that a CloudWatch metric name must match (case-insensitively) in order to be ingested
name str
The human-readable name of this integration
namespaces Sequence[str]
A list of namespaces that limit what we query from CloudWatch
point_tag_filter_regex str
A regular expression that AWS tag key name must match (case-insensitively) in order to be ingested
service_refresh_rate_in_minutes int
How often, in minutes, to refresh the service
volume_selection_tags Mapping[str, str]
A string->string map of whitelist of volume tag-value pairs (in AWS). If the volume’s AWS tags match this whitelist, CloudWatch data about this volume is ingested. Multiple entries are OR’ed

Outputs

All input properties are implicitly available as output properties. Additionally, the CloudIntegrationCloudWatch resource produces the following output properties:

Id string
The provider-assigned unique ID for this managed resource.
Id string
The provider-assigned unique ID for this managed resource.
id string
The provider-assigned unique ID for this managed resource.
id str
The provider-assigned unique ID for this managed resource.

Look up an Existing CloudIntegrationCloudWatch Resource

Get an existing CloudIntegrationCloudWatch 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?: CloudIntegrationCloudWatchState, opts?: CustomResourceOptions): CloudIntegrationCloudWatch
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        additional_tags: Optional[Mapping[str, str]] = None,
        external_id: Optional[str] = None,
        force_save: Optional[bool] = None,
        instance_selection_tags: Optional[Mapping[str, str]] = None,
        metric_filter_regex: Optional[str] = None,
        name: Optional[str] = None,
        namespaces: Optional[Sequence[str]] = None,
        point_tag_filter_regex: Optional[str] = None,
        role_arn: Optional[str] = None,
        service: Optional[str] = None,
        service_refresh_rate_in_minutes: Optional[int] = None,
        volume_selection_tags: Optional[Mapping[str, str]] = None) -> CloudIntegrationCloudWatch
func GetCloudIntegrationCloudWatch(ctx *Context, name string, id IDInput, state *CloudIntegrationCloudWatchState, opts ...ResourceOption) (*CloudIntegrationCloudWatch, error)
public static CloudIntegrationCloudWatch Get(string name, Input<string> id, CloudIntegrationCloudWatchState? state, CustomResourceOptions? opts = null)
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.

The following state arguments are supported:

AdditionalTags Dictionary<string, string>
A list of point tag key-values to add to every point ingested using this integration
ExternalId string
The Role ARN that the customer has created in AWS IAM to allow access to Wavefront
ForceSave bool
Forces this resource to save, even if errors are present
InstanceSelectionTags Dictionary<string, string>
A string->string map whitelist of instance tag-value pairs (in AWS). If the instance’s AWS tags match this whitelist, CloudWatch data about this instance is ingested. Multiple entries are OR’ed
MetricFilterRegex string
A regular expression that a CloudWatch metric name must match (case-insensitively) in order to be ingested
Name string
The human-readable name of this integration
Namespaces List<string>
A list of namespaces that limit what we query from CloudWatch
PointTagFilterRegex string
A regular expression that AWS tag key name must match (case-insensitively) in order to be ingested
RoleArn string
The external id corresponding to the Role ARN
Service string
A value denoting which cloud service this service integrates with
ServiceRefreshRateInMinutes int
How often, in minutes, to refresh the service
VolumeSelectionTags Dictionary<string, string>
A string->string map of whitelist of volume tag-value pairs (in AWS). If the volume’s AWS tags match this whitelist, CloudWatch data about this volume is ingested. Multiple entries are OR’ed
AdditionalTags map[string]string
A list of point tag key-values to add to every point ingested using this integration
ExternalId string
The Role ARN that the customer has created in AWS IAM to allow access to Wavefront
ForceSave bool
Forces this resource to save, even if errors are present
InstanceSelectionTags map[string]string
A string->string map whitelist of instance tag-value pairs (in AWS). If the instance’s AWS tags match this whitelist, CloudWatch data about this instance is ingested. Multiple entries are OR’ed
MetricFilterRegex string
A regular expression that a CloudWatch metric name must match (case-insensitively) in order to be ingested
Name string
The human-readable name of this integration
Namespaces []string
A list of namespaces that limit what we query from CloudWatch
PointTagFilterRegex string
A regular expression that AWS tag key name must match (case-insensitively) in order to be ingested
RoleArn string
The external id corresponding to the Role ARN
Service string
A value denoting which cloud service this service integrates with
ServiceRefreshRateInMinutes int
How often, in minutes, to refresh the service
VolumeSelectionTags map[string]string
A string->string map of whitelist of volume tag-value pairs (in AWS). If the volume’s AWS tags match this whitelist, CloudWatch data about this volume is ingested. Multiple entries are OR’ed
additionalTags {[key: string]: string}
A list of point tag key-values to add to every point ingested using this integration
externalId string
The Role ARN that the customer has created in AWS IAM to allow access to Wavefront
forceSave boolean
Forces this resource to save, even if errors are present
instanceSelectionTags {[key: string]: string}
A string->string map whitelist of instance tag-value pairs (in AWS). If the instance’s AWS tags match this whitelist, CloudWatch data about this instance is ingested. Multiple entries are OR’ed
metricFilterRegex string
A regular expression that a CloudWatch metric name must match (case-insensitively) in order to be ingested
name string
The human-readable name of this integration
namespaces string[]
A list of namespaces that limit what we query from CloudWatch
pointTagFilterRegex string
A regular expression that AWS tag key name must match (case-insensitively) in order to be ingested
roleArn string
The external id corresponding to the Role ARN
service string
A value denoting which cloud service this service integrates with
serviceRefreshRateInMinutes number
How often, in minutes, to refresh the service
volumeSelectionTags {[key: string]: string}
A string->string map of whitelist of volume tag-value pairs (in AWS). If the volume’s AWS tags match this whitelist, CloudWatch data about this volume is ingested. Multiple entries are OR’ed
additional_tags Mapping[str, str]
A list of point tag key-values to add to every point ingested using this integration
external_id str
The Role ARN that the customer has created in AWS IAM to allow access to Wavefront
force_save bool
Forces this resource to save, even if errors are present
instance_selection_tags Mapping[str, str]
A string->string map whitelist of instance tag-value pairs (in AWS). If the instance’s AWS tags match this whitelist, CloudWatch data about this instance is ingested. Multiple entries are OR’ed
metric_filter_regex str
A regular expression that a CloudWatch metric name must match (case-insensitively) in order to be ingested
name str
The human-readable name of this integration
namespaces Sequence[str]
A list of namespaces that limit what we query from CloudWatch
point_tag_filter_regex str
A regular expression that AWS tag key name must match (case-insensitively) in order to be ingested
role_arn str
The external id corresponding to the Role ARN
service str
A value denoting which cloud service this service integrates with
service_refresh_rate_in_minutes int
How often, in minutes, to refresh the service
volume_selection_tags Mapping[str, str]
A string->string map of whitelist of volume tag-value pairs (in AWS). If the volume’s AWS tags match this whitelist, CloudWatch data about this volume is ingested. Multiple entries are OR’ed

Import

CloudWatch Cloud Integrations can be imported using the id, e.g.

 $ pulumi import wavefront:index/cloudIntegrationCloudWatch:CloudIntegrationCloudWatch cloudwatch a411c16b-3cf7-4f03-bf11-8ca05aab898d

Package Details

Repository
https://github.com/pulumi/pulumi-wavefront
License
Apache-2.0
Notes
This Pulumi package is based on the wavefront Terraform Provider.