CloudIntegrationCloudTrail

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

Example Usage

using Pulumi;
using Wavefront = Pulumi.Wavefront;

class MyStack : Stack
{
    public MyStack()
    {
        var extId = new Wavefront.CloudIntegrationAwsExternalId("extId", new Wavefront.CloudIntegrationAwsExternalIdArgs
        {
        });
        var cloudtrail = new Wavefront.CloudIntegrationCloudTrail("cloudtrail", new Wavefront.CloudIntegrationCloudTrailArgs
        {
            RoleArn = "arn:aws::1234567:role/example-arn",
            ExternalId = extId.Id,
            Region = "us-west-2",
            BucketName = "example-s3-bucket",
        });
    }

}
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.NewCloudIntegrationCloudTrail(ctx, "cloudtrail", &wavefront.CloudIntegrationCloudTrailArgs{
			RoleArn:    pulumi.String("arn:aws::1234567:role/example-arn"),
			ExternalId: extId.ID(),
			Region:     pulumi.String("us-west-2"),
			BucketName: pulumi.String("example-s3-bucket"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
import pulumi
import pulumi_wavefront as wavefront

ext_id = wavefront.CloudIntegrationAwsExternalId("extId")
cloudtrail = wavefront.CloudIntegrationCloudTrail("cloudtrail",
    role_arn="arn:aws::1234567:role/example-arn",
    external_id=ext_id.id,
    region="us-west-2",
    bucket_name="example-s3-bucket")
import * as pulumi from "@pulumi/pulumi";
import * as wavefront from "@pulumi/wavefront";

const extId = new wavefront.CloudIntegrationAwsExternalId("extId", {});
const cloudtrail = new wavefront.CloudIntegrationCloudTrail("cloudtrail", {
    roleArn: "arn:aws::1234567:role/example-arn",
    externalId: extId.id,
    region: "us-west-2",
    bucketName: "example-s3-bucket",
});

Create a CloudIntegrationCloudTrail Resource

new CloudIntegrationCloudTrail(name: string, args: CloudIntegrationCloudTrailArgs, opts?: CustomResourceOptions);
@overload
def CloudIntegrationCloudTrail(resource_name: str,
                               opts: Optional[ResourceOptions] = None,
                               additional_tags: Optional[Mapping[str, str]] = None,
                               bucket_name: Optional[str] = None,
                               external_id: Optional[str] = None,
                               filter_rule: Optional[str] = None,
                               force_save: Optional[bool] = None,
                               name: Optional[str] = None,
                               prefix: Optional[str] = None,
                               region: Optional[str] = None,
                               role_arn: Optional[str] = None,
                               service: Optional[str] = None,
                               service_refresh_rate_in_minutes: Optional[int] = None)
@overload
def CloudIntegrationCloudTrail(resource_name: str,
                               args: CloudIntegrationCloudTrailArgs,
                               opts: Optional[ResourceOptions] = None)
func NewCloudIntegrationCloudTrail(ctx *Context, name string, args CloudIntegrationCloudTrailArgs, opts ...ResourceOption) (*CloudIntegrationCloudTrail, error)
public CloudIntegrationCloudTrail(string name, CloudIntegrationCloudTrailArgs args, CustomResourceOptions? opts = null)
name string
The unique name of the resource.
args CloudIntegrationCloudTrailArgs
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 CloudIntegrationCloudTrailArgs
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 CloudIntegrationCloudTrailArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args CloudIntegrationCloudTrailArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.

CloudIntegrationCloudTrail Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Programming Model docs.

Inputs

The CloudIntegrationCloudTrail resource accepts the following input properties:

BucketName string
Name of the S3 bucket where CloudTrail logs are stored
ExternalId string
The Role ARN that the customer has created in AWS IAM to allow access to Wavefront
Region string
The AWS region of the S3 bucket where CloudTrail logs are stored
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
FilterRule string
Rule to filter CloudTrail log event
ForceSave bool
Forces this resource to save, even if errors are present
Name string
The human-readable name of this integration
Prefix string
The common prefix, if any, appended to all CloudTrail log files.
ServiceRefreshRateInMinutes int
How often, in minutes, to refresh the service
BucketName string
Name of the S3 bucket where CloudTrail logs are stored
ExternalId string
The Role ARN that the customer has created in AWS IAM to allow access to Wavefront
Region string
The AWS region of the S3 bucket where CloudTrail logs are stored
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
FilterRule string
Rule to filter CloudTrail log event
ForceSave bool
Forces this resource to save, even if errors are present
Name string
The human-readable name of this integration
Prefix string
The common prefix, if any, appended to all CloudTrail log files.
ServiceRefreshRateInMinutes int
How often, in minutes, to refresh the service
bucketName string
Name of the S3 bucket where CloudTrail logs are stored
externalId string
The Role ARN that the customer has created in AWS IAM to allow access to Wavefront
region string
The AWS region of the S3 bucket where CloudTrail logs are stored
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
filterRule string
Rule to filter CloudTrail log event
forceSave boolean
Forces this resource to save, even if errors are present
name string
The human-readable name of this integration
prefix string
The common prefix, if any, appended to all CloudTrail log files.
serviceRefreshRateInMinutes number
How often, in minutes, to refresh the service
bucket_name str
Name of the S3 bucket where CloudTrail logs are stored
external_id str
The Role ARN that the customer has created in AWS IAM to allow access to Wavefront
region str
The AWS region of the S3 bucket where CloudTrail logs are stored
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
filter_rule str
Rule to filter CloudTrail log event
force_save bool
Forces this resource to save, even if errors are present
name str
The human-readable name of this integration
prefix str
The common prefix, if any, appended to all CloudTrail log files.
service_refresh_rate_in_minutes int
How often, in minutes, to refresh the service

Outputs

All input properties are implicitly available as output properties. Additionally, the CloudIntegrationCloudTrail 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 CloudIntegrationCloudTrail Resource

Get an existing CloudIntegrationCloudTrail 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?: CloudIntegrationCloudTrailState, opts?: CustomResourceOptions): CloudIntegrationCloudTrail
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        additional_tags: Optional[Mapping[str, str]] = None,
        bucket_name: Optional[str] = None,
        external_id: Optional[str] = None,
        filter_rule: Optional[str] = None,
        force_save: Optional[bool] = None,
        name: Optional[str] = None,
        prefix: Optional[str] = None,
        region: Optional[str] = None,
        role_arn: Optional[str] = None,
        service: Optional[str] = None,
        service_refresh_rate_in_minutes: Optional[int] = None) -> CloudIntegrationCloudTrail
func GetCloudIntegrationCloudTrail(ctx *Context, name string, id IDInput, state *CloudIntegrationCloudTrailState, opts ...ResourceOption) (*CloudIntegrationCloudTrail, error)
public static CloudIntegrationCloudTrail Get(string name, Input<string> id, CloudIntegrationCloudTrailState? 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
BucketName string
Name of the S3 bucket where CloudTrail logs are stored
ExternalId string
The Role ARN that the customer has created in AWS IAM to allow access to Wavefront
FilterRule string
Rule to filter CloudTrail log event
ForceSave bool
Forces this resource to save, even if errors are present
Name string
The human-readable name of this integration
Prefix string
The common prefix, if any, appended to all CloudTrail log files.
Region string
The AWS region of the S3 bucket where CloudTrail logs are stored
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
AdditionalTags map[string]string
A list of point tag key-values to add to every point ingested using this integration
BucketName string
Name of the S3 bucket where CloudTrail logs are stored
ExternalId string
The Role ARN that the customer has created in AWS IAM to allow access to Wavefront
FilterRule string
Rule to filter CloudTrail log event
ForceSave bool
Forces this resource to save, even if errors are present
Name string
The human-readable name of this integration
Prefix string
The common prefix, if any, appended to all CloudTrail log files.
Region string
The AWS region of the S3 bucket where CloudTrail logs are stored
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
additionalTags {[key: string]: string}
A list of point tag key-values to add to every point ingested using this integration
bucketName string
Name of the S3 bucket where CloudTrail logs are stored
externalId string
The Role ARN that the customer has created in AWS IAM to allow access to Wavefront
filterRule string
Rule to filter CloudTrail log event
forceSave boolean
Forces this resource to save, even if errors are present
name string
The human-readable name of this integration
prefix string
The common prefix, if any, appended to all CloudTrail log files.
region string
The AWS region of the S3 bucket where CloudTrail logs are stored
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
additional_tags Mapping[str, str]
A list of point tag key-values to add to every point ingested using this integration
bucket_name str
Name of the S3 bucket where CloudTrail logs are stored
external_id str
The Role ARN that the customer has created in AWS IAM to allow access to Wavefront
filter_rule str
Rule to filter CloudTrail log event
force_save bool
Forces this resource to save, even if errors are present
name str
The human-readable name of this integration
prefix str
The common prefix, if any, appended to all CloudTrail log files.
region str
The AWS region of the S3 bucket where CloudTrail logs are stored
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

Import

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

 $ pulumi import wavefront:index/cloudIntegrationCloudTrail:CloudIntegrationCloudTrail cloudtrail 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.