logging

package
v4.21.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 13, 2021 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BillingAccountBucketConfig

type BillingAccountBucketConfig struct {
	pulumi.CustomResourceState

	// The parent resource that contains the logging bucket.
	BillingAccount pulumi.StringOutput `pulumi:"billingAccount"`
	// The name of the logging bucket. Logging automatically creates two log buckets: `_Required` and `_Default`.
	BucketId pulumi.StringOutput `pulumi:"bucketId"`
	// Describes this bucket.
	Description pulumi.StringOutput `pulumi:"description"`
	// The bucket's lifecycle such as active or deleted. See [LifecycleState](https://cloud.google.com/logging/docs/reference/v2/rest/v2/billingAccounts.buckets#LogBucket.LifecycleState).
	LifecycleState pulumi.StringOutput `pulumi:"lifecycleState"`
	// The location of the bucket.
	Location pulumi.StringOutput `pulumi:"location"`
	// The resource name of the bucket. For example: "projects/my-project-id/locations/my-location/buckets/my-bucket-id"
	Name pulumi.StringOutput `pulumi:"name"`
	// Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used. Bucket retention can not be increased on buckets outside of projects.
	RetentionDays pulumi.IntPtrOutput `pulumi:"retentionDays"`
}

Manages a billing account level logging bucket config. For more information see [the official logging documentation](https://cloud.google.com/logging/docs/) and [Storing Logs](https://cloud.google.com/logging/docs/storage).

> **Note:** Logging buckets are automatically created for a given folder, project, organization, billingAccount and cannot be deleted. Creating a resource of this type will acquire and update the resource that already exists at the desired location. These buckets cannot be removed so deleting this resource will remove the bucket config from your state but will leave the logging bucket unchanged. The buckets that are currently automatically created are "_Default" and "_Required".

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/logging"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "00AA00-000AAA-00AA0A"
		_default, err := organizations.GetBillingAccount(ctx, &organizations.GetBillingAccountArgs{
			BillingAccount: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		_, err = logging.NewBillingAccountBucketConfig(ctx, "basic", &logging.BillingAccountBucketConfigArgs{
			BillingAccount: pulumi.String(_default.BillingAccount),
			Location:       pulumi.String("global"),
			RetentionDays:  pulumi.Int(30),
			BucketId:       pulumi.String("_Default"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

This resource can be imported using the following format

```sh

$ pulumi import gcp:logging/billingAccountBucketConfig:BillingAccountBucketConfig default billingAccounts/{{billingAccount}}/locations/{{location}}/buckets/{{bucket_id}}

```

func GetBillingAccountBucketConfig

func GetBillingAccountBucketConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BillingAccountBucketConfigState, opts ...pulumi.ResourceOption) (*BillingAccountBucketConfig, error)

GetBillingAccountBucketConfig gets an existing BillingAccountBucketConfig resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewBillingAccountBucketConfig

func NewBillingAccountBucketConfig(ctx *pulumi.Context,
	name string, args *BillingAccountBucketConfigArgs, opts ...pulumi.ResourceOption) (*BillingAccountBucketConfig, error)

NewBillingAccountBucketConfig registers a new resource with the given unique name, arguments, and options.

func (*BillingAccountBucketConfig) ElementType added in v4.4.0

func (*BillingAccountBucketConfig) ElementType() reflect.Type

func (*BillingAccountBucketConfig) ToBillingAccountBucketConfigOutput added in v4.4.0

func (i *BillingAccountBucketConfig) ToBillingAccountBucketConfigOutput() BillingAccountBucketConfigOutput

func (*BillingAccountBucketConfig) ToBillingAccountBucketConfigOutputWithContext added in v4.4.0

func (i *BillingAccountBucketConfig) ToBillingAccountBucketConfigOutputWithContext(ctx context.Context) BillingAccountBucketConfigOutput

func (*BillingAccountBucketConfig) ToBillingAccountBucketConfigPtrOutput added in v4.11.1

func (i *BillingAccountBucketConfig) ToBillingAccountBucketConfigPtrOutput() BillingAccountBucketConfigPtrOutput

func (*BillingAccountBucketConfig) ToBillingAccountBucketConfigPtrOutputWithContext added in v4.11.1

func (i *BillingAccountBucketConfig) ToBillingAccountBucketConfigPtrOutputWithContext(ctx context.Context) BillingAccountBucketConfigPtrOutput

type BillingAccountBucketConfigArgs

type BillingAccountBucketConfigArgs struct {
	// The parent resource that contains the logging bucket.
	BillingAccount pulumi.StringInput
	// The name of the logging bucket. Logging automatically creates two log buckets: `_Required` and `_Default`.
	BucketId pulumi.StringInput
	// Describes this bucket.
	Description pulumi.StringPtrInput
	// The location of the bucket.
	Location pulumi.StringInput
	// Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used. Bucket retention can not be increased on buckets outside of projects.
	RetentionDays pulumi.IntPtrInput
}

The set of arguments for constructing a BillingAccountBucketConfig resource.

func (BillingAccountBucketConfigArgs) ElementType

type BillingAccountBucketConfigArray added in v4.11.1

type BillingAccountBucketConfigArray []BillingAccountBucketConfigInput

func (BillingAccountBucketConfigArray) ElementType added in v4.11.1

func (BillingAccountBucketConfigArray) ToBillingAccountBucketConfigArrayOutput added in v4.11.1

func (i BillingAccountBucketConfigArray) ToBillingAccountBucketConfigArrayOutput() BillingAccountBucketConfigArrayOutput

func (BillingAccountBucketConfigArray) ToBillingAccountBucketConfigArrayOutputWithContext added in v4.11.1

func (i BillingAccountBucketConfigArray) ToBillingAccountBucketConfigArrayOutputWithContext(ctx context.Context) BillingAccountBucketConfigArrayOutput

type BillingAccountBucketConfigArrayInput added in v4.11.1

type BillingAccountBucketConfigArrayInput interface {
	pulumi.Input

	ToBillingAccountBucketConfigArrayOutput() BillingAccountBucketConfigArrayOutput
	ToBillingAccountBucketConfigArrayOutputWithContext(context.Context) BillingAccountBucketConfigArrayOutput
}

BillingAccountBucketConfigArrayInput is an input type that accepts BillingAccountBucketConfigArray and BillingAccountBucketConfigArrayOutput values. You can construct a concrete instance of `BillingAccountBucketConfigArrayInput` via:

BillingAccountBucketConfigArray{ BillingAccountBucketConfigArgs{...} }

type BillingAccountBucketConfigArrayOutput added in v4.11.1

type BillingAccountBucketConfigArrayOutput struct{ *pulumi.OutputState }

func (BillingAccountBucketConfigArrayOutput) ElementType added in v4.11.1

func (BillingAccountBucketConfigArrayOutput) Index added in v4.11.1

func (BillingAccountBucketConfigArrayOutput) ToBillingAccountBucketConfigArrayOutput added in v4.11.1

func (o BillingAccountBucketConfigArrayOutput) ToBillingAccountBucketConfigArrayOutput() BillingAccountBucketConfigArrayOutput

func (BillingAccountBucketConfigArrayOutput) ToBillingAccountBucketConfigArrayOutputWithContext added in v4.11.1

func (o BillingAccountBucketConfigArrayOutput) ToBillingAccountBucketConfigArrayOutputWithContext(ctx context.Context) BillingAccountBucketConfigArrayOutput

type BillingAccountBucketConfigInput added in v4.4.0

type BillingAccountBucketConfigInput interface {
	pulumi.Input

	ToBillingAccountBucketConfigOutput() BillingAccountBucketConfigOutput
	ToBillingAccountBucketConfigOutputWithContext(ctx context.Context) BillingAccountBucketConfigOutput
}

type BillingAccountBucketConfigMap added in v4.11.1

type BillingAccountBucketConfigMap map[string]BillingAccountBucketConfigInput

func (BillingAccountBucketConfigMap) ElementType added in v4.11.1

func (BillingAccountBucketConfigMap) ToBillingAccountBucketConfigMapOutput added in v4.11.1

func (i BillingAccountBucketConfigMap) ToBillingAccountBucketConfigMapOutput() BillingAccountBucketConfigMapOutput

func (BillingAccountBucketConfigMap) ToBillingAccountBucketConfigMapOutputWithContext added in v4.11.1

func (i BillingAccountBucketConfigMap) ToBillingAccountBucketConfigMapOutputWithContext(ctx context.Context) BillingAccountBucketConfigMapOutput

type BillingAccountBucketConfigMapInput added in v4.11.1

type BillingAccountBucketConfigMapInput interface {
	pulumi.Input

	ToBillingAccountBucketConfigMapOutput() BillingAccountBucketConfigMapOutput
	ToBillingAccountBucketConfigMapOutputWithContext(context.Context) BillingAccountBucketConfigMapOutput
}

BillingAccountBucketConfigMapInput is an input type that accepts BillingAccountBucketConfigMap and BillingAccountBucketConfigMapOutput values. You can construct a concrete instance of `BillingAccountBucketConfigMapInput` via:

BillingAccountBucketConfigMap{ "key": BillingAccountBucketConfigArgs{...} }

type BillingAccountBucketConfigMapOutput added in v4.11.1

type BillingAccountBucketConfigMapOutput struct{ *pulumi.OutputState }

func (BillingAccountBucketConfigMapOutput) ElementType added in v4.11.1

func (BillingAccountBucketConfigMapOutput) MapIndex added in v4.11.1

func (BillingAccountBucketConfigMapOutput) ToBillingAccountBucketConfigMapOutput added in v4.11.1

func (o BillingAccountBucketConfigMapOutput) ToBillingAccountBucketConfigMapOutput() BillingAccountBucketConfigMapOutput

func (BillingAccountBucketConfigMapOutput) ToBillingAccountBucketConfigMapOutputWithContext added in v4.11.1

func (o BillingAccountBucketConfigMapOutput) ToBillingAccountBucketConfigMapOutputWithContext(ctx context.Context) BillingAccountBucketConfigMapOutput

type BillingAccountBucketConfigOutput added in v4.4.0

type BillingAccountBucketConfigOutput struct {
	*pulumi.OutputState
}

func (BillingAccountBucketConfigOutput) ElementType added in v4.4.0

func (BillingAccountBucketConfigOutput) ToBillingAccountBucketConfigOutput added in v4.4.0

func (o BillingAccountBucketConfigOutput) ToBillingAccountBucketConfigOutput() BillingAccountBucketConfigOutput

func (BillingAccountBucketConfigOutput) ToBillingAccountBucketConfigOutputWithContext added in v4.4.0

func (o BillingAccountBucketConfigOutput) ToBillingAccountBucketConfigOutputWithContext(ctx context.Context) BillingAccountBucketConfigOutput

func (BillingAccountBucketConfigOutput) ToBillingAccountBucketConfigPtrOutput added in v4.11.1

func (o BillingAccountBucketConfigOutput) ToBillingAccountBucketConfigPtrOutput() BillingAccountBucketConfigPtrOutput

func (BillingAccountBucketConfigOutput) ToBillingAccountBucketConfigPtrOutputWithContext added in v4.11.1

func (o BillingAccountBucketConfigOutput) ToBillingAccountBucketConfigPtrOutputWithContext(ctx context.Context) BillingAccountBucketConfigPtrOutput

type BillingAccountBucketConfigPtrInput added in v4.11.1

type BillingAccountBucketConfigPtrInput interface {
	pulumi.Input

	ToBillingAccountBucketConfigPtrOutput() BillingAccountBucketConfigPtrOutput
	ToBillingAccountBucketConfigPtrOutputWithContext(ctx context.Context) BillingAccountBucketConfigPtrOutput
}

type BillingAccountBucketConfigPtrOutput added in v4.11.1

type BillingAccountBucketConfigPtrOutput struct {
	*pulumi.OutputState
}

func (BillingAccountBucketConfigPtrOutput) ElementType added in v4.11.1

func (BillingAccountBucketConfigPtrOutput) ToBillingAccountBucketConfigPtrOutput added in v4.11.1

func (o BillingAccountBucketConfigPtrOutput) ToBillingAccountBucketConfigPtrOutput() BillingAccountBucketConfigPtrOutput

func (BillingAccountBucketConfigPtrOutput) ToBillingAccountBucketConfigPtrOutputWithContext added in v4.11.1

func (o BillingAccountBucketConfigPtrOutput) ToBillingAccountBucketConfigPtrOutputWithContext(ctx context.Context) BillingAccountBucketConfigPtrOutput

type BillingAccountBucketConfigState

type BillingAccountBucketConfigState struct {
	// The parent resource that contains the logging bucket.
	BillingAccount pulumi.StringPtrInput
	// The name of the logging bucket. Logging automatically creates two log buckets: `_Required` and `_Default`.
	BucketId pulumi.StringPtrInput
	// Describes this bucket.
	Description pulumi.StringPtrInput
	// The bucket's lifecycle such as active or deleted. See [LifecycleState](https://cloud.google.com/logging/docs/reference/v2/rest/v2/billingAccounts.buckets#LogBucket.LifecycleState).
	LifecycleState pulumi.StringPtrInput
	// The location of the bucket.
	Location pulumi.StringPtrInput
	// The resource name of the bucket. For example: "projects/my-project-id/locations/my-location/buckets/my-bucket-id"
	Name pulumi.StringPtrInput
	// Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used. Bucket retention can not be increased on buckets outside of projects.
	RetentionDays pulumi.IntPtrInput
}

func (BillingAccountBucketConfigState) ElementType

type BillingAccountExclusion

type BillingAccountExclusion struct {
	pulumi.CustomResourceState

	// The billing account to create the exclusion for.
	BillingAccount pulumi.StringOutput `pulumi:"billingAccount"`
	// A human-readable description.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Whether this exclusion rule should be disabled or not. This defaults to
	// false.
	Disabled pulumi.BoolPtrOutput `pulumi:"disabled"`
	// The filter to apply when excluding logs. Only log entries that match the filter are excluded.
	// See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced-filters) for information on how to
	// write a filter.
	Filter pulumi.StringOutput `pulumi:"filter"`
	// The name of the logging exclusion.
	Name pulumi.StringOutput `pulumi:"name"`
}

## Import

Billing account logging exclusions can be imported using their URI, e.g.

```sh

$ pulumi import gcp:logging/billingAccountExclusion:BillingAccountExclusion my_exclusion billingAccounts/my-billing_account/exclusions/my-exclusion

```

func GetBillingAccountExclusion

func GetBillingAccountExclusion(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BillingAccountExclusionState, opts ...pulumi.ResourceOption) (*BillingAccountExclusion, error)

GetBillingAccountExclusion gets an existing BillingAccountExclusion resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewBillingAccountExclusion

func NewBillingAccountExclusion(ctx *pulumi.Context,
	name string, args *BillingAccountExclusionArgs, opts ...pulumi.ResourceOption) (*BillingAccountExclusion, error)

NewBillingAccountExclusion registers a new resource with the given unique name, arguments, and options.

func (*BillingAccountExclusion) ElementType added in v4.4.0

func (*BillingAccountExclusion) ElementType() reflect.Type

func (*BillingAccountExclusion) ToBillingAccountExclusionOutput added in v4.4.0

func (i *BillingAccountExclusion) ToBillingAccountExclusionOutput() BillingAccountExclusionOutput

func (*BillingAccountExclusion) ToBillingAccountExclusionOutputWithContext added in v4.4.0

func (i *BillingAccountExclusion) ToBillingAccountExclusionOutputWithContext(ctx context.Context) BillingAccountExclusionOutput

func (*BillingAccountExclusion) ToBillingAccountExclusionPtrOutput added in v4.11.1

func (i *BillingAccountExclusion) ToBillingAccountExclusionPtrOutput() BillingAccountExclusionPtrOutput

func (*BillingAccountExclusion) ToBillingAccountExclusionPtrOutputWithContext added in v4.11.1

func (i *BillingAccountExclusion) ToBillingAccountExclusionPtrOutputWithContext(ctx context.Context) BillingAccountExclusionPtrOutput

type BillingAccountExclusionArgs

type BillingAccountExclusionArgs struct {
	// The billing account to create the exclusion for.
	BillingAccount pulumi.StringInput
	// A human-readable description.
	Description pulumi.StringPtrInput
	// Whether this exclusion rule should be disabled or not. This defaults to
	// false.
	Disabled pulumi.BoolPtrInput
	// The filter to apply when excluding logs. Only log entries that match the filter are excluded.
	// See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced-filters) for information on how to
	// write a filter.
	Filter pulumi.StringInput
	// The name of the logging exclusion.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a BillingAccountExclusion resource.

func (BillingAccountExclusionArgs) ElementType

type BillingAccountExclusionArray added in v4.11.1

type BillingAccountExclusionArray []BillingAccountExclusionInput

func (BillingAccountExclusionArray) ElementType added in v4.11.1

func (BillingAccountExclusionArray) ToBillingAccountExclusionArrayOutput added in v4.11.1

func (i BillingAccountExclusionArray) ToBillingAccountExclusionArrayOutput() BillingAccountExclusionArrayOutput

func (BillingAccountExclusionArray) ToBillingAccountExclusionArrayOutputWithContext added in v4.11.1

func (i BillingAccountExclusionArray) ToBillingAccountExclusionArrayOutputWithContext(ctx context.Context) BillingAccountExclusionArrayOutput

type BillingAccountExclusionArrayInput added in v4.11.1

type BillingAccountExclusionArrayInput interface {
	pulumi.Input

	ToBillingAccountExclusionArrayOutput() BillingAccountExclusionArrayOutput
	ToBillingAccountExclusionArrayOutputWithContext(context.Context) BillingAccountExclusionArrayOutput
}

BillingAccountExclusionArrayInput is an input type that accepts BillingAccountExclusionArray and BillingAccountExclusionArrayOutput values. You can construct a concrete instance of `BillingAccountExclusionArrayInput` via:

BillingAccountExclusionArray{ BillingAccountExclusionArgs{...} }

type BillingAccountExclusionArrayOutput added in v4.11.1

type BillingAccountExclusionArrayOutput struct{ *pulumi.OutputState }

func (BillingAccountExclusionArrayOutput) ElementType added in v4.11.1

func (BillingAccountExclusionArrayOutput) Index added in v4.11.1

func (BillingAccountExclusionArrayOutput) ToBillingAccountExclusionArrayOutput added in v4.11.1

func (o BillingAccountExclusionArrayOutput) ToBillingAccountExclusionArrayOutput() BillingAccountExclusionArrayOutput

func (BillingAccountExclusionArrayOutput) ToBillingAccountExclusionArrayOutputWithContext added in v4.11.1

func (o BillingAccountExclusionArrayOutput) ToBillingAccountExclusionArrayOutputWithContext(ctx context.Context) BillingAccountExclusionArrayOutput

type BillingAccountExclusionInput added in v4.4.0

type BillingAccountExclusionInput interface {
	pulumi.Input

	ToBillingAccountExclusionOutput() BillingAccountExclusionOutput
	ToBillingAccountExclusionOutputWithContext(ctx context.Context) BillingAccountExclusionOutput
}

type BillingAccountExclusionMap added in v4.11.1

type BillingAccountExclusionMap map[string]BillingAccountExclusionInput

func (BillingAccountExclusionMap) ElementType added in v4.11.1

func (BillingAccountExclusionMap) ElementType() reflect.Type

func (BillingAccountExclusionMap) ToBillingAccountExclusionMapOutput added in v4.11.1

func (i BillingAccountExclusionMap) ToBillingAccountExclusionMapOutput() BillingAccountExclusionMapOutput

func (BillingAccountExclusionMap) ToBillingAccountExclusionMapOutputWithContext added in v4.11.1

func (i BillingAccountExclusionMap) ToBillingAccountExclusionMapOutputWithContext(ctx context.Context) BillingAccountExclusionMapOutput

type BillingAccountExclusionMapInput added in v4.11.1

type BillingAccountExclusionMapInput interface {
	pulumi.Input

	ToBillingAccountExclusionMapOutput() BillingAccountExclusionMapOutput
	ToBillingAccountExclusionMapOutputWithContext(context.Context) BillingAccountExclusionMapOutput
}

BillingAccountExclusionMapInput is an input type that accepts BillingAccountExclusionMap and BillingAccountExclusionMapOutput values. You can construct a concrete instance of `BillingAccountExclusionMapInput` via:

BillingAccountExclusionMap{ "key": BillingAccountExclusionArgs{...} }

type BillingAccountExclusionMapOutput added in v4.11.1

type BillingAccountExclusionMapOutput struct{ *pulumi.OutputState }

func (BillingAccountExclusionMapOutput) ElementType added in v4.11.1

func (BillingAccountExclusionMapOutput) MapIndex added in v4.11.1

func (BillingAccountExclusionMapOutput) ToBillingAccountExclusionMapOutput added in v4.11.1

func (o BillingAccountExclusionMapOutput) ToBillingAccountExclusionMapOutput() BillingAccountExclusionMapOutput

func (BillingAccountExclusionMapOutput) ToBillingAccountExclusionMapOutputWithContext added in v4.11.1

func (o BillingAccountExclusionMapOutput) ToBillingAccountExclusionMapOutputWithContext(ctx context.Context) BillingAccountExclusionMapOutput

type BillingAccountExclusionOutput added in v4.4.0

type BillingAccountExclusionOutput struct {
	*pulumi.OutputState
}

func (BillingAccountExclusionOutput) ElementType added in v4.4.0

func (BillingAccountExclusionOutput) ToBillingAccountExclusionOutput added in v4.4.0

func (o BillingAccountExclusionOutput) ToBillingAccountExclusionOutput() BillingAccountExclusionOutput

func (BillingAccountExclusionOutput) ToBillingAccountExclusionOutputWithContext added in v4.4.0

func (o BillingAccountExclusionOutput) ToBillingAccountExclusionOutputWithContext(ctx context.Context) BillingAccountExclusionOutput

func (BillingAccountExclusionOutput) ToBillingAccountExclusionPtrOutput added in v4.11.1

func (o BillingAccountExclusionOutput) ToBillingAccountExclusionPtrOutput() BillingAccountExclusionPtrOutput

func (BillingAccountExclusionOutput) ToBillingAccountExclusionPtrOutputWithContext added in v4.11.1

func (o BillingAccountExclusionOutput) ToBillingAccountExclusionPtrOutputWithContext(ctx context.Context) BillingAccountExclusionPtrOutput

type BillingAccountExclusionPtrInput added in v4.11.1

type BillingAccountExclusionPtrInput interface {
	pulumi.Input

	ToBillingAccountExclusionPtrOutput() BillingAccountExclusionPtrOutput
	ToBillingAccountExclusionPtrOutputWithContext(ctx context.Context) BillingAccountExclusionPtrOutput
}

type BillingAccountExclusionPtrOutput added in v4.11.1

type BillingAccountExclusionPtrOutput struct {
	*pulumi.OutputState
}

func (BillingAccountExclusionPtrOutput) ElementType added in v4.11.1

func (BillingAccountExclusionPtrOutput) ToBillingAccountExclusionPtrOutput added in v4.11.1

func (o BillingAccountExclusionPtrOutput) ToBillingAccountExclusionPtrOutput() BillingAccountExclusionPtrOutput

func (BillingAccountExclusionPtrOutput) ToBillingAccountExclusionPtrOutputWithContext added in v4.11.1

func (o BillingAccountExclusionPtrOutput) ToBillingAccountExclusionPtrOutputWithContext(ctx context.Context) BillingAccountExclusionPtrOutput

type BillingAccountExclusionState

type BillingAccountExclusionState struct {
	// The billing account to create the exclusion for.
	BillingAccount pulumi.StringPtrInput
	// A human-readable description.
	Description pulumi.StringPtrInput
	// Whether this exclusion rule should be disabled or not. This defaults to
	// false.
	Disabled pulumi.BoolPtrInput
	// The filter to apply when excluding logs. Only log entries that match the filter are excluded.
	// See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced-filters) for information on how to
	// write a filter.
	Filter pulumi.StringPtrInput
	// The name of the logging exclusion.
	Name pulumi.StringPtrInput
}

func (BillingAccountExclusionState) ElementType

type BillingAccountSink

type BillingAccountSink struct {
	pulumi.CustomResourceState

	// Options that affect sinks exporting data to BigQuery. Structure documented below.
	BigqueryOptions BillingAccountSinkBigqueryOptionsOutput `pulumi:"bigqueryOptions"`
	// The billing account exported to the sink.
	BillingAccount pulumi.StringOutput `pulumi:"billingAccount"`
	// A description of this exclusion.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The destination of the sink (or, in other words, where logs are written to). Can be a
	// Cloud Storage bucket, a PubSub topic, a BigQuery dataset or a Cloud Logging bucket. Examples:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		return nil
	// 	})
	// }
	// “`
	// The writer associated with the sink must have access to write to the above resource.
	Destination pulumi.StringOutput `pulumi:"destination"`
	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled pulumi.BoolPtrOutput `pulumi:"disabled"`
	// Log entries that match any of the exclusion filters will not be exported. If a log entry is matched by both filter and one of exclusionFilters it will not be exported.  Can be repeated multiple times for multiple exclusions. Structure is documented below.
	Exclusions BillingAccountSinkExclusionArrayOutput `pulumi:"exclusions"`
	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to
	// write a filter.
	Filter pulumi.StringPtrOutput `pulumi:"filter"`
	// A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name pulumi.StringOutput `pulumi:"name"`
	// The identity associated with this sink. This identity must be granted write access to the
	// configured `destination`.
	WriterIdentity pulumi.StringOutput `pulumi:"writerIdentity"`
}

* [API documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/billingAccounts.sinks) * How-to Guides

> **Note** You must have the "Logs Configuration Writer" IAM role (`roles/logging.configWriter`) [granted on the billing account](https://cloud.google.com/billing/reference/rest/v1/billingAccounts/getIamPolicy) to the credentials used with this provider. [IAM roles granted on a billing account](https://cloud.google.com/billing/docs/how-to/billing-access) are separate from the typical IAM roles granted on a project.

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/logging"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/projects"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/storage"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := storage.NewBucket(ctx, "log_bucket", nil)
		if err != nil {
			return err
		}
		_, err = logging.NewBillingAccountSink(ctx, "my_sink", &logging.BillingAccountSinkArgs{
			Description:    pulumi.String("some explaination on what this is"),
			BillingAccount: pulumi.String("ABCDEF-012345-GHIJKL"),
			Destination: log_bucket.Name.ApplyT(func(name string) (string, error) {
				return fmt.Sprintf("%v%v", "storage.googleapis.com/", name), nil
			}).(pulumi.StringOutput),
		})
		if err != nil {
			return err
		}
		_, err = projects.NewIAMBinding(ctx, "log_writer", &projects.IAMBindingArgs{
			Role: pulumi.String("roles/storage.objectCreator"),
			Members: pulumi.StringArray{
				my_sink.WriterIdentity,
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Billing account logging sinks can be imported using this format

```sh

$ pulumi import gcp:logging/billingAccountSink:BillingAccountSink my_sink billingAccounts/{{billing_account_id}}/sinks/{{sink_id}}

```

func GetBillingAccountSink

func GetBillingAccountSink(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *BillingAccountSinkState, opts ...pulumi.ResourceOption) (*BillingAccountSink, error)

GetBillingAccountSink gets an existing BillingAccountSink resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewBillingAccountSink

func NewBillingAccountSink(ctx *pulumi.Context,
	name string, args *BillingAccountSinkArgs, opts ...pulumi.ResourceOption) (*BillingAccountSink, error)

NewBillingAccountSink registers a new resource with the given unique name, arguments, and options.

func (*BillingAccountSink) ElementType added in v4.4.0

func (*BillingAccountSink) ElementType() reflect.Type

func (*BillingAccountSink) ToBillingAccountSinkOutput added in v4.4.0

func (i *BillingAccountSink) ToBillingAccountSinkOutput() BillingAccountSinkOutput

func (*BillingAccountSink) ToBillingAccountSinkOutputWithContext added in v4.4.0

func (i *BillingAccountSink) ToBillingAccountSinkOutputWithContext(ctx context.Context) BillingAccountSinkOutput

func (*BillingAccountSink) ToBillingAccountSinkPtrOutput added in v4.11.1

func (i *BillingAccountSink) ToBillingAccountSinkPtrOutput() BillingAccountSinkPtrOutput

func (*BillingAccountSink) ToBillingAccountSinkPtrOutputWithContext added in v4.11.1

func (i *BillingAccountSink) ToBillingAccountSinkPtrOutputWithContext(ctx context.Context) BillingAccountSinkPtrOutput

type BillingAccountSinkArgs

type BillingAccountSinkArgs struct {
	// Options that affect sinks exporting data to BigQuery. Structure documented below.
	BigqueryOptions BillingAccountSinkBigqueryOptionsPtrInput
	// The billing account exported to the sink.
	BillingAccount pulumi.StringInput
	// A description of this exclusion.
	Description pulumi.StringPtrInput
	// The destination of the sink (or, in other words, where logs are written to). Can be a
	// Cloud Storage bucket, a PubSub topic, a BigQuery dataset or a Cloud Logging bucket. Examples:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		return nil
	// 	})
	// }
	// “`
	// The writer associated with the sink must have access to write to the above resource.
	Destination pulumi.StringInput
	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled pulumi.BoolPtrInput
	// Log entries that match any of the exclusion filters will not be exported. If a log entry is matched by both filter and one of exclusionFilters it will not be exported.  Can be repeated multiple times for multiple exclusions. Structure is documented below.
	Exclusions BillingAccountSinkExclusionArrayInput
	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to
	// write a filter.
	Filter pulumi.StringPtrInput
	// A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a BillingAccountSink resource.

func (BillingAccountSinkArgs) ElementType

func (BillingAccountSinkArgs) ElementType() reflect.Type

type BillingAccountSinkArray added in v4.11.1

type BillingAccountSinkArray []BillingAccountSinkInput

func (BillingAccountSinkArray) ElementType added in v4.11.1

func (BillingAccountSinkArray) ElementType() reflect.Type

func (BillingAccountSinkArray) ToBillingAccountSinkArrayOutput added in v4.11.1

func (i BillingAccountSinkArray) ToBillingAccountSinkArrayOutput() BillingAccountSinkArrayOutput

func (BillingAccountSinkArray) ToBillingAccountSinkArrayOutputWithContext added in v4.11.1

func (i BillingAccountSinkArray) ToBillingAccountSinkArrayOutputWithContext(ctx context.Context) BillingAccountSinkArrayOutput

type BillingAccountSinkArrayInput added in v4.11.1

type BillingAccountSinkArrayInput interface {
	pulumi.Input

	ToBillingAccountSinkArrayOutput() BillingAccountSinkArrayOutput
	ToBillingAccountSinkArrayOutputWithContext(context.Context) BillingAccountSinkArrayOutput
}

BillingAccountSinkArrayInput is an input type that accepts BillingAccountSinkArray and BillingAccountSinkArrayOutput values. You can construct a concrete instance of `BillingAccountSinkArrayInput` via:

BillingAccountSinkArray{ BillingAccountSinkArgs{...} }

type BillingAccountSinkArrayOutput added in v4.11.1

type BillingAccountSinkArrayOutput struct{ *pulumi.OutputState }

func (BillingAccountSinkArrayOutput) ElementType added in v4.11.1

func (BillingAccountSinkArrayOutput) Index added in v4.11.1

func (BillingAccountSinkArrayOutput) ToBillingAccountSinkArrayOutput added in v4.11.1

func (o BillingAccountSinkArrayOutput) ToBillingAccountSinkArrayOutput() BillingAccountSinkArrayOutput

func (BillingAccountSinkArrayOutput) ToBillingAccountSinkArrayOutputWithContext added in v4.11.1

func (o BillingAccountSinkArrayOutput) ToBillingAccountSinkArrayOutputWithContext(ctx context.Context) BillingAccountSinkArrayOutput

type BillingAccountSinkBigqueryOptions

type BillingAccountSinkBigqueryOptions struct {
	// Whether to use [BigQuery's partition tables](https://cloud.google.com/bigquery/docs/partitioned-tables).
	// By default, Logging creates dated tables based on the log entries' timestamps, e.g. syslog_20170523. With partitioned
	// tables the date suffix is no longer present and [special query syntax](https://cloud.google.com/bigquery/docs/querying-partitioned-tables)
	// has to be used instead. In both cases, tables are sharded based on UTC timezone.
	UsePartitionedTables bool `pulumi:"usePartitionedTables"`
}

type BillingAccountSinkBigqueryOptionsArgs

type BillingAccountSinkBigqueryOptionsArgs struct {
	// Whether to use [BigQuery's partition tables](https://cloud.google.com/bigquery/docs/partitioned-tables).
	// By default, Logging creates dated tables based on the log entries' timestamps, e.g. syslog_20170523. With partitioned
	// tables the date suffix is no longer present and [special query syntax](https://cloud.google.com/bigquery/docs/querying-partitioned-tables)
	// has to be used instead. In both cases, tables are sharded based on UTC timezone.
	UsePartitionedTables pulumi.BoolInput `pulumi:"usePartitionedTables"`
}

func (BillingAccountSinkBigqueryOptionsArgs) ElementType

func (BillingAccountSinkBigqueryOptionsArgs) ToBillingAccountSinkBigqueryOptionsOutput

func (i BillingAccountSinkBigqueryOptionsArgs) ToBillingAccountSinkBigqueryOptionsOutput() BillingAccountSinkBigqueryOptionsOutput

func (BillingAccountSinkBigqueryOptionsArgs) ToBillingAccountSinkBigqueryOptionsOutputWithContext

func (i BillingAccountSinkBigqueryOptionsArgs) ToBillingAccountSinkBigqueryOptionsOutputWithContext(ctx context.Context) BillingAccountSinkBigqueryOptionsOutput

func (BillingAccountSinkBigqueryOptionsArgs) ToBillingAccountSinkBigqueryOptionsPtrOutput

func (i BillingAccountSinkBigqueryOptionsArgs) ToBillingAccountSinkBigqueryOptionsPtrOutput() BillingAccountSinkBigqueryOptionsPtrOutput

func (BillingAccountSinkBigqueryOptionsArgs) ToBillingAccountSinkBigqueryOptionsPtrOutputWithContext

func (i BillingAccountSinkBigqueryOptionsArgs) ToBillingAccountSinkBigqueryOptionsPtrOutputWithContext(ctx context.Context) BillingAccountSinkBigqueryOptionsPtrOutput

type BillingAccountSinkBigqueryOptionsInput

type BillingAccountSinkBigqueryOptionsInput interface {
	pulumi.Input

	ToBillingAccountSinkBigqueryOptionsOutput() BillingAccountSinkBigqueryOptionsOutput
	ToBillingAccountSinkBigqueryOptionsOutputWithContext(context.Context) BillingAccountSinkBigqueryOptionsOutput
}

BillingAccountSinkBigqueryOptionsInput is an input type that accepts BillingAccountSinkBigqueryOptionsArgs and BillingAccountSinkBigqueryOptionsOutput values. You can construct a concrete instance of `BillingAccountSinkBigqueryOptionsInput` via:

BillingAccountSinkBigqueryOptionsArgs{...}

type BillingAccountSinkBigqueryOptionsOutput

type BillingAccountSinkBigqueryOptionsOutput struct{ *pulumi.OutputState }

func (BillingAccountSinkBigqueryOptionsOutput) ElementType

func (BillingAccountSinkBigqueryOptionsOutput) ToBillingAccountSinkBigqueryOptionsOutput

func (o BillingAccountSinkBigqueryOptionsOutput) ToBillingAccountSinkBigqueryOptionsOutput() BillingAccountSinkBigqueryOptionsOutput

func (BillingAccountSinkBigqueryOptionsOutput) ToBillingAccountSinkBigqueryOptionsOutputWithContext

func (o BillingAccountSinkBigqueryOptionsOutput) ToBillingAccountSinkBigqueryOptionsOutputWithContext(ctx context.Context) BillingAccountSinkBigqueryOptionsOutput

func (BillingAccountSinkBigqueryOptionsOutput) ToBillingAccountSinkBigqueryOptionsPtrOutput

func (o BillingAccountSinkBigqueryOptionsOutput) ToBillingAccountSinkBigqueryOptionsPtrOutput() BillingAccountSinkBigqueryOptionsPtrOutput

func (BillingAccountSinkBigqueryOptionsOutput) ToBillingAccountSinkBigqueryOptionsPtrOutputWithContext

func (o BillingAccountSinkBigqueryOptionsOutput) ToBillingAccountSinkBigqueryOptionsPtrOutputWithContext(ctx context.Context) BillingAccountSinkBigqueryOptionsPtrOutput

func (BillingAccountSinkBigqueryOptionsOutput) UsePartitionedTables

Whether to use [BigQuery's partition tables](https://cloud.google.com/bigquery/docs/partitioned-tables). By default, Logging creates dated tables based on the log entries' timestamps, e.g. syslog_20170523. With partitioned tables the date suffix is no longer present and [special query syntax](https://cloud.google.com/bigquery/docs/querying-partitioned-tables) has to be used instead. In both cases, tables are sharded based on UTC timezone.

type BillingAccountSinkBigqueryOptionsPtrInput

type BillingAccountSinkBigqueryOptionsPtrInput interface {
	pulumi.Input

	ToBillingAccountSinkBigqueryOptionsPtrOutput() BillingAccountSinkBigqueryOptionsPtrOutput
	ToBillingAccountSinkBigqueryOptionsPtrOutputWithContext(context.Context) BillingAccountSinkBigqueryOptionsPtrOutput
}

BillingAccountSinkBigqueryOptionsPtrInput is an input type that accepts BillingAccountSinkBigqueryOptionsArgs, BillingAccountSinkBigqueryOptionsPtr and BillingAccountSinkBigqueryOptionsPtrOutput values. You can construct a concrete instance of `BillingAccountSinkBigqueryOptionsPtrInput` via:

        BillingAccountSinkBigqueryOptionsArgs{...}

or:

        nil

type BillingAccountSinkBigqueryOptionsPtrOutput

type BillingAccountSinkBigqueryOptionsPtrOutput struct{ *pulumi.OutputState }

func (BillingAccountSinkBigqueryOptionsPtrOutput) Elem

func (BillingAccountSinkBigqueryOptionsPtrOutput) ElementType

func (BillingAccountSinkBigqueryOptionsPtrOutput) ToBillingAccountSinkBigqueryOptionsPtrOutput

func (o BillingAccountSinkBigqueryOptionsPtrOutput) ToBillingAccountSinkBigqueryOptionsPtrOutput() BillingAccountSinkBigqueryOptionsPtrOutput

func (BillingAccountSinkBigqueryOptionsPtrOutput) ToBillingAccountSinkBigqueryOptionsPtrOutputWithContext

func (o BillingAccountSinkBigqueryOptionsPtrOutput) ToBillingAccountSinkBigqueryOptionsPtrOutputWithContext(ctx context.Context) BillingAccountSinkBigqueryOptionsPtrOutput

func (BillingAccountSinkBigqueryOptionsPtrOutput) UsePartitionedTables

Whether to use [BigQuery's partition tables](https://cloud.google.com/bigquery/docs/partitioned-tables). By default, Logging creates dated tables based on the log entries' timestamps, e.g. syslog_20170523. With partitioned tables the date suffix is no longer present and [special query syntax](https://cloud.google.com/bigquery/docs/querying-partitioned-tables) has to be used instead. In both cases, tables are sharded based on UTC timezone.

type BillingAccountSinkExclusion

type BillingAccountSinkExclusion struct {
	// A description of this exclusion.
	Description *string `pulumi:"description"`
	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled *bool `pulumi:"disabled"`
	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to
	// write a filter.
	Filter string `pulumi:"filter"`
	// A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name string `pulumi:"name"`
}

type BillingAccountSinkExclusionArgs

type BillingAccountSinkExclusionArgs struct {
	// A description of this exclusion.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled pulumi.BoolPtrInput `pulumi:"disabled"`
	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to
	// write a filter.
	Filter pulumi.StringInput `pulumi:"filter"`
	// A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name pulumi.StringInput `pulumi:"name"`
}

func (BillingAccountSinkExclusionArgs) ElementType

func (BillingAccountSinkExclusionArgs) ToBillingAccountSinkExclusionOutput

func (i BillingAccountSinkExclusionArgs) ToBillingAccountSinkExclusionOutput() BillingAccountSinkExclusionOutput

func (BillingAccountSinkExclusionArgs) ToBillingAccountSinkExclusionOutputWithContext

func (i BillingAccountSinkExclusionArgs) ToBillingAccountSinkExclusionOutputWithContext(ctx context.Context) BillingAccountSinkExclusionOutput

type BillingAccountSinkExclusionArray

type BillingAccountSinkExclusionArray []BillingAccountSinkExclusionInput

func (BillingAccountSinkExclusionArray) ElementType

func (BillingAccountSinkExclusionArray) ToBillingAccountSinkExclusionArrayOutput

func (i BillingAccountSinkExclusionArray) ToBillingAccountSinkExclusionArrayOutput() BillingAccountSinkExclusionArrayOutput

func (BillingAccountSinkExclusionArray) ToBillingAccountSinkExclusionArrayOutputWithContext

func (i BillingAccountSinkExclusionArray) ToBillingAccountSinkExclusionArrayOutputWithContext(ctx context.Context) BillingAccountSinkExclusionArrayOutput

type BillingAccountSinkExclusionArrayInput

type BillingAccountSinkExclusionArrayInput interface {
	pulumi.Input

	ToBillingAccountSinkExclusionArrayOutput() BillingAccountSinkExclusionArrayOutput
	ToBillingAccountSinkExclusionArrayOutputWithContext(context.Context) BillingAccountSinkExclusionArrayOutput
}

BillingAccountSinkExclusionArrayInput is an input type that accepts BillingAccountSinkExclusionArray and BillingAccountSinkExclusionArrayOutput values. You can construct a concrete instance of `BillingAccountSinkExclusionArrayInput` via:

BillingAccountSinkExclusionArray{ BillingAccountSinkExclusionArgs{...} }

type BillingAccountSinkExclusionArrayOutput

type BillingAccountSinkExclusionArrayOutput struct{ *pulumi.OutputState }

func (BillingAccountSinkExclusionArrayOutput) ElementType

func (BillingAccountSinkExclusionArrayOutput) Index

func (BillingAccountSinkExclusionArrayOutput) ToBillingAccountSinkExclusionArrayOutput

func (o BillingAccountSinkExclusionArrayOutput) ToBillingAccountSinkExclusionArrayOutput() BillingAccountSinkExclusionArrayOutput

func (BillingAccountSinkExclusionArrayOutput) ToBillingAccountSinkExclusionArrayOutputWithContext

func (o BillingAccountSinkExclusionArrayOutput) ToBillingAccountSinkExclusionArrayOutputWithContext(ctx context.Context) BillingAccountSinkExclusionArrayOutput

type BillingAccountSinkExclusionInput

type BillingAccountSinkExclusionInput interface {
	pulumi.Input

	ToBillingAccountSinkExclusionOutput() BillingAccountSinkExclusionOutput
	ToBillingAccountSinkExclusionOutputWithContext(context.Context) BillingAccountSinkExclusionOutput
}

BillingAccountSinkExclusionInput is an input type that accepts BillingAccountSinkExclusionArgs and BillingAccountSinkExclusionOutput values. You can construct a concrete instance of `BillingAccountSinkExclusionInput` via:

BillingAccountSinkExclusionArgs{...}

type BillingAccountSinkExclusionOutput

type BillingAccountSinkExclusionOutput struct{ *pulumi.OutputState }

func (BillingAccountSinkExclusionOutput) Description

A description of this exclusion.

func (BillingAccountSinkExclusionOutput) Disabled

If set to True, then this exclusion is disabled and it does not exclude any log entries.

func (BillingAccountSinkExclusionOutput) ElementType

func (BillingAccountSinkExclusionOutput) Filter

An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to write a filter.

func (BillingAccountSinkExclusionOutput) Name

A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.

func (BillingAccountSinkExclusionOutput) ToBillingAccountSinkExclusionOutput

func (o BillingAccountSinkExclusionOutput) ToBillingAccountSinkExclusionOutput() BillingAccountSinkExclusionOutput

func (BillingAccountSinkExclusionOutput) ToBillingAccountSinkExclusionOutputWithContext

func (o BillingAccountSinkExclusionOutput) ToBillingAccountSinkExclusionOutputWithContext(ctx context.Context) BillingAccountSinkExclusionOutput

type BillingAccountSinkInput added in v4.4.0

type BillingAccountSinkInput interface {
	pulumi.Input

	ToBillingAccountSinkOutput() BillingAccountSinkOutput
	ToBillingAccountSinkOutputWithContext(ctx context.Context) BillingAccountSinkOutput
}

type BillingAccountSinkMap added in v4.11.1

type BillingAccountSinkMap map[string]BillingAccountSinkInput

func (BillingAccountSinkMap) ElementType added in v4.11.1

func (BillingAccountSinkMap) ElementType() reflect.Type

func (BillingAccountSinkMap) ToBillingAccountSinkMapOutput added in v4.11.1

func (i BillingAccountSinkMap) ToBillingAccountSinkMapOutput() BillingAccountSinkMapOutput

func (BillingAccountSinkMap) ToBillingAccountSinkMapOutputWithContext added in v4.11.1

func (i BillingAccountSinkMap) ToBillingAccountSinkMapOutputWithContext(ctx context.Context) BillingAccountSinkMapOutput

type BillingAccountSinkMapInput added in v4.11.1

type BillingAccountSinkMapInput interface {
	pulumi.Input

	ToBillingAccountSinkMapOutput() BillingAccountSinkMapOutput
	ToBillingAccountSinkMapOutputWithContext(context.Context) BillingAccountSinkMapOutput
}

BillingAccountSinkMapInput is an input type that accepts BillingAccountSinkMap and BillingAccountSinkMapOutput values. You can construct a concrete instance of `BillingAccountSinkMapInput` via:

BillingAccountSinkMap{ "key": BillingAccountSinkArgs{...} }

type BillingAccountSinkMapOutput added in v4.11.1

type BillingAccountSinkMapOutput struct{ *pulumi.OutputState }

func (BillingAccountSinkMapOutput) ElementType added in v4.11.1

func (BillingAccountSinkMapOutput) MapIndex added in v4.11.1

func (BillingAccountSinkMapOutput) ToBillingAccountSinkMapOutput added in v4.11.1

func (o BillingAccountSinkMapOutput) ToBillingAccountSinkMapOutput() BillingAccountSinkMapOutput

func (BillingAccountSinkMapOutput) ToBillingAccountSinkMapOutputWithContext added in v4.11.1

func (o BillingAccountSinkMapOutput) ToBillingAccountSinkMapOutputWithContext(ctx context.Context) BillingAccountSinkMapOutput

type BillingAccountSinkOutput added in v4.4.0

type BillingAccountSinkOutput struct {
	*pulumi.OutputState
}

func (BillingAccountSinkOutput) ElementType added in v4.4.0

func (BillingAccountSinkOutput) ElementType() reflect.Type

func (BillingAccountSinkOutput) ToBillingAccountSinkOutput added in v4.4.0

func (o BillingAccountSinkOutput) ToBillingAccountSinkOutput() BillingAccountSinkOutput

func (BillingAccountSinkOutput) ToBillingAccountSinkOutputWithContext added in v4.4.0

func (o BillingAccountSinkOutput) ToBillingAccountSinkOutputWithContext(ctx context.Context) BillingAccountSinkOutput

func (BillingAccountSinkOutput) ToBillingAccountSinkPtrOutput added in v4.11.1

func (o BillingAccountSinkOutput) ToBillingAccountSinkPtrOutput() BillingAccountSinkPtrOutput

func (BillingAccountSinkOutput) ToBillingAccountSinkPtrOutputWithContext added in v4.11.1

func (o BillingAccountSinkOutput) ToBillingAccountSinkPtrOutputWithContext(ctx context.Context) BillingAccountSinkPtrOutput

type BillingAccountSinkPtrInput added in v4.11.1

type BillingAccountSinkPtrInput interface {
	pulumi.Input

	ToBillingAccountSinkPtrOutput() BillingAccountSinkPtrOutput
	ToBillingAccountSinkPtrOutputWithContext(ctx context.Context) BillingAccountSinkPtrOutput
}

type BillingAccountSinkPtrOutput added in v4.11.1

type BillingAccountSinkPtrOutput struct {
	*pulumi.OutputState
}

func (BillingAccountSinkPtrOutput) ElementType added in v4.11.1

func (BillingAccountSinkPtrOutput) ToBillingAccountSinkPtrOutput added in v4.11.1

func (o BillingAccountSinkPtrOutput) ToBillingAccountSinkPtrOutput() BillingAccountSinkPtrOutput

func (BillingAccountSinkPtrOutput) ToBillingAccountSinkPtrOutputWithContext added in v4.11.1

func (o BillingAccountSinkPtrOutput) ToBillingAccountSinkPtrOutputWithContext(ctx context.Context) BillingAccountSinkPtrOutput

type BillingAccountSinkState

type BillingAccountSinkState struct {
	// Options that affect sinks exporting data to BigQuery. Structure documented below.
	BigqueryOptions BillingAccountSinkBigqueryOptionsPtrInput
	// The billing account exported to the sink.
	BillingAccount pulumi.StringPtrInput
	// A description of this exclusion.
	Description pulumi.StringPtrInput
	// The destination of the sink (or, in other words, where logs are written to). Can be a
	// Cloud Storage bucket, a PubSub topic, a BigQuery dataset or a Cloud Logging bucket. Examples:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		return nil
	// 	})
	// }
	// “`
	// The writer associated with the sink must have access to write to the above resource.
	Destination pulumi.StringPtrInput
	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled pulumi.BoolPtrInput
	// Log entries that match any of the exclusion filters will not be exported. If a log entry is matched by both filter and one of exclusionFilters it will not be exported.  Can be repeated multiple times for multiple exclusions. Structure is documented below.
	Exclusions BillingAccountSinkExclusionArrayInput
	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to
	// write a filter.
	Filter pulumi.StringPtrInput
	// A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name pulumi.StringPtrInput
	// The identity associated with this sink. This identity must be granted write access to the
	// configured `destination`.
	WriterIdentity pulumi.StringPtrInput
}

func (BillingAccountSinkState) ElementType

func (BillingAccountSinkState) ElementType() reflect.Type

type FolderBucketConfig

type FolderBucketConfig struct {
	pulumi.CustomResourceState

	// The name of the logging bucket. Logging automatically creates two log buckets: `_Required` and `_Default`.
	BucketId pulumi.StringOutput `pulumi:"bucketId"`
	// Describes this bucket.
	Description pulumi.StringOutput `pulumi:"description"`
	// The parent resource that contains the logging bucket.
	Folder pulumi.StringOutput `pulumi:"folder"`
	// The bucket's lifecycle such as active or deleted. See [LifecycleState](https://cloud.google.com/logging/docs/reference/v2/rest/v2/billingAccounts.buckets#LogBucket.LifecycleState).
	LifecycleState pulumi.StringOutput `pulumi:"lifecycleState"`
	// The location of the bucket.
	Location pulumi.StringOutput `pulumi:"location"`
	// The resource name of the bucket. For example: "folders/my-folder-id/locations/my-location/buckets/my-bucket-id"
	Name pulumi.StringOutput `pulumi:"name"`
	// Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used. Bucket retention can not be increased on buckets outside of projects.
	RetentionDays pulumi.IntPtrOutput `pulumi:"retentionDays"`
}

Manages a folder-level logging bucket config. For more information see [the official logging documentation](https://cloud.google.com/logging/docs/) and [Storing Logs](https://cloud.google.com/logging/docs/storage).

> **Note:** Logging buckets are automatically created for a given folder, project, organization, billingAccount and cannot be deleted. Creating a resource of this type will acquire and update the resource that already exists at the desired location. These buckets cannot be removed so deleting this resource will remove the bucket config from your state but will leave the logging bucket unchanged. The buckets that are currently automatically created are "_Default" and "_Required".

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/logging"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := organizations.NewFolder(ctx, "_default", &organizations.FolderArgs{
			DisplayName: pulumi.String("some-folder-name"),
			Parent:      pulumi.String("organizations/123456789"),
		})
		if err != nil {
			return err
		}
		_, err = logging.NewFolderBucketConfig(ctx, "basic", &logging.FolderBucketConfigArgs{
			Folder:        _default.Name,
			Location:      pulumi.String("global"),
			RetentionDays: pulumi.Int(30),
			BucketId:      pulumi.String("_Default"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

This resource can be imported using the following format

```sh

$ pulumi import gcp:logging/folderBucketConfig:FolderBucketConfig default folders/{{folder}}/locations/{{location}}/buckets/{{bucket_id}}

```

func GetFolderBucketConfig

func GetFolderBucketConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FolderBucketConfigState, opts ...pulumi.ResourceOption) (*FolderBucketConfig, error)

GetFolderBucketConfig gets an existing FolderBucketConfig resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewFolderBucketConfig

func NewFolderBucketConfig(ctx *pulumi.Context,
	name string, args *FolderBucketConfigArgs, opts ...pulumi.ResourceOption) (*FolderBucketConfig, error)

NewFolderBucketConfig registers a new resource with the given unique name, arguments, and options.

func (*FolderBucketConfig) ElementType added in v4.4.0

func (*FolderBucketConfig) ElementType() reflect.Type

func (*FolderBucketConfig) ToFolderBucketConfigOutput added in v4.4.0

func (i *FolderBucketConfig) ToFolderBucketConfigOutput() FolderBucketConfigOutput

func (*FolderBucketConfig) ToFolderBucketConfigOutputWithContext added in v4.4.0

func (i *FolderBucketConfig) ToFolderBucketConfigOutputWithContext(ctx context.Context) FolderBucketConfigOutput

func (*FolderBucketConfig) ToFolderBucketConfigPtrOutput added in v4.11.1

func (i *FolderBucketConfig) ToFolderBucketConfigPtrOutput() FolderBucketConfigPtrOutput

func (*FolderBucketConfig) ToFolderBucketConfigPtrOutputWithContext added in v4.11.1

func (i *FolderBucketConfig) ToFolderBucketConfigPtrOutputWithContext(ctx context.Context) FolderBucketConfigPtrOutput

type FolderBucketConfigArgs

type FolderBucketConfigArgs struct {
	// The name of the logging bucket. Logging automatically creates two log buckets: `_Required` and `_Default`.
	BucketId pulumi.StringInput
	// Describes this bucket.
	Description pulumi.StringPtrInput
	// The parent resource that contains the logging bucket.
	Folder pulumi.StringInput
	// The location of the bucket.
	Location pulumi.StringInput
	// Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used. Bucket retention can not be increased on buckets outside of projects.
	RetentionDays pulumi.IntPtrInput
}

The set of arguments for constructing a FolderBucketConfig resource.

func (FolderBucketConfigArgs) ElementType

func (FolderBucketConfigArgs) ElementType() reflect.Type

type FolderBucketConfigArray added in v4.11.1

type FolderBucketConfigArray []FolderBucketConfigInput

func (FolderBucketConfigArray) ElementType added in v4.11.1

func (FolderBucketConfigArray) ElementType() reflect.Type

func (FolderBucketConfigArray) ToFolderBucketConfigArrayOutput added in v4.11.1

func (i FolderBucketConfigArray) ToFolderBucketConfigArrayOutput() FolderBucketConfigArrayOutput

func (FolderBucketConfigArray) ToFolderBucketConfigArrayOutputWithContext added in v4.11.1

func (i FolderBucketConfigArray) ToFolderBucketConfigArrayOutputWithContext(ctx context.Context) FolderBucketConfigArrayOutput

type FolderBucketConfigArrayInput added in v4.11.1

type FolderBucketConfigArrayInput interface {
	pulumi.Input

	ToFolderBucketConfigArrayOutput() FolderBucketConfigArrayOutput
	ToFolderBucketConfigArrayOutputWithContext(context.Context) FolderBucketConfigArrayOutput
}

FolderBucketConfigArrayInput is an input type that accepts FolderBucketConfigArray and FolderBucketConfigArrayOutput values. You can construct a concrete instance of `FolderBucketConfigArrayInput` via:

FolderBucketConfigArray{ FolderBucketConfigArgs{...} }

type FolderBucketConfigArrayOutput added in v4.11.1

type FolderBucketConfigArrayOutput struct{ *pulumi.OutputState }

func (FolderBucketConfigArrayOutput) ElementType added in v4.11.1

func (FolderBucketConfigArrayOutput) Index added in v4.11.1

func (FolderBucketConfigArrayOutput) ToFolderBucketConfigArrayOutput added in v4.11.1

func (o FolderBucketConfigArrayOutput) ToFolderBucketConfigArrayOutput() FolderBucketConfigArrayOutput

func (FolderBucketConfigArrayOutput) ToFolderBucketConfigArrayOutputWithContext added in v4.11.1

func (o FolderBucketConfigArrayOutput) ToFolderBucketConfigArrayOutputWithContext(ctx context.Context) FolderBucketConfigArrayOutput

type FolderBucketConfigInput added in v4.4.0

type FolderBucketConfigInput interface {
	pulumi.Input

	ToFolderBucketConfigOutput() FolderBucketConfigOutput
	ToFolderBucketConfigOutputWithContext(ctx context.Context) FolderBucketConfigOutput
}

type FolderBucketConfigMap added in v4.11.1

type FolderBucketConfigMap map[string]FolderBucketConfigInput

func (FolderBucketConfigMap) ElementType added in v4.11.1

func (FolderBucketConfigMap) ElementType() reflect.Type

func (FolderBucketConfigMap) ToFolderBucketConfigMapOutput added in v4.11.1

func (i FolderBucketConfigMap) ToFolderBucketConfigMapOutput() FolderBucketConfigMapOutput

func (FolderBucketConfigMap) ToFolderBucketConfigMapOutputWithContext added in v4.11.1

func (i FolderBucketConfigMap) ToFolderBucketConfigMapOutputWithContext(ctx context.Context) FolderBucketConfigMapOutput

type FolderBucketConfigMapInput added in v4.11.1

type FolderBucketConfigMapInput interface {
	pulumi.Input

	ToFolderBucketConfigMapOutput() FolderBucketConfigMapOutput
	ToFolderBucketConfigMapOutputWithContext(context.Context) FolderBucketConfigMapOutput
}

FolderBucketConfigMapInput is an input type that accepts FolderBucketConfigMap and FolderBucketConfigMapOutput values. You can construct a concrete instance of `FolderBucketConfigMapInput` via:

FolderBucketConfigMap{ "key": FolderBucketConfigArgs{...} }

type FolderBucketConfigMapOutput added in v4.11.1

type FolderBucketConfigMapOutput struct{ *pulumi.OutputState }

func (FolderBucketConfigMapOutput) ElementType added in v4.11.1

func (FolderBucketConfigMapOutput) MapIndex added in v4.11.1

func (FolderBucketConfigMapOutput) ToFolderBucketConfigMapOutput added in v4.11.1

func (o FolderBucketConfigMapOutput) ToFolderBucketConfigMapOutput() FolderBucketConfigMapOutput

func (FolderBucketConfigMapOutput) ToFolderBucketConfigMapOutputWithContext added in v4.11.1

func (o FolderBucketConfigMapOutput) ToFolderBucketConfigMapOutputWithContext(ctx context.Context) FolderBucketConfigMapOutput

type FolderBucketConfigOutput added in v4.4.0

type FolderBucketConfigOutput struct {
	*pulumi.OutputState
}

func (FolderBucketConfigOutput) ElementType added in v4.4.0

func (FolderBucketConfigOutput) ElementType() reflect.Type

func (FolderBucketConfigOutput) ToFolderBucketConfigOutput added in v4.4.0

func (o FolderBucketConfigOutput) ToFolderBucketConfigOutput() FolderBucketConfigOutput

func (FolderBucketConfigOutput) ToFolderBucketConfigOutputWithContext added in v4.4.0

func (o FolderBucketConfigOutput) ToFolderBucketConfigOutputWithContext(ctx context.Context) FolderBucketConfigOutput

func (FolderBucketConfigOutput) ToFolderBucketConfigPtrOutput added in v4.11.1

func (o FolderBucketConfigOutput) ToFolderBucketConfigPtrOutput() FolderBucketConfigPtrOutput

func (FolderBucketConfigOutput) ToFolderBucketConfigPtrOutputWithContext added in v4.11.1

func (o FolderBucketConfigOutput) ToFolderBucketConfigPtrOutputWithContext(ctx context.Context) FolderBucketConfigPtrOutput

type FolderBucketConfigPtrInput added in v4.11.1

type FolderBucketConfigPtrInput interface {
	pulumi.Input

	ToFolderBucketConfigPtrOutput() FolderBucketConfigPtrOutput
	ToFolderBucketConfigPtrOutputWithContext(ctx context.Context) FolderBucketConfigPtrOutput
}

type FolderBucketConfigPtrOutput added in v4.11.1

type FolderBucketConfigPtrOutput struct {
	*pulumi.OutputState
}

func (FolderBucketConfigPtrOutput) ElementType added in v4.11.1

func (FolderBucketConfigPtrOutput) ToFolderBucketConfigPtrOutput added in v4.11.1

func (o FolderBucketConfigPtrOutput) ToFolderBucketConfigPtrOutput() FolderBucketConfigPtrOutput

func (FolderBucketConfigPtrOutput) ToFolderBucketConfigPtrOutputWithContext added in v4.11.1

func (o FolderBucketConfigPtrOutput) ToFolderBucketConfigPtrOutputWithContext(ctx context.Context) FolderBucketConfigPtrOutput

type FolderBucketConfigState

type FolderBucketConfigState struct {
	// The name of the logging bucket. Logging automatically creates two log buckets: `_Required` and `_Default`.
	BucketId pulumi.StringPtrInput
	// Describes this bucket.
	Description pulumi.StringPtrInput
	// The parent resource that contains the logging bucket.
	Folder pulumi.StringPtrInput
	// The bucket's lifecycle such as active or deleted. See [LifecycleState](https://cloud.google.com/logging/docs/reference/v2/rest/v2/billingAccounts.buckets#LogBucket.LifecycleState).
	LifecycleState pulumi.StringPtrInput
	// The location of the bucket.
	Location pulumi.StringPtrInput
	// The resource name of the bucket. For example: "folders/my-folder-id/locations/my-location/buckets/my-bucket-id"
	Name pulumi.StringPtrInput
	// Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used. Bucket retention can not be increased on buckets outside of projects.
	RetentionDays pulumi.IntPtrInput
}

func (FolderBucketConfigState) ElementType

func (FolderBucketConfigState) ElementType() reflect.Type

type FolderExclusion

type FolderExclusion struct {
	pulumi.CustomResourceState

	// A human-readable description.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Whether this exclusion rule should be disabled or not. This defaults to
	// false.
	Disabled pulumi.BoolPtrOutput `pulumi:"disabled"`
	// The filter to apply when excluding logs. Only log entries that match the filter are excluded.
	// See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced-filters) for information on how to
	// write a filter.
	Filter pulumi.StringOutput `pulumi:"filter"`
	// The folder to be exported to the sink. Note that either [FOLDER_ID] or "folders/[FOLDER_ID]" is
	// accepted.
	Folder pulumi.StringOutput `pulumi:"folder"`
	// The name of the logging exclusion.
	Name pulumi.StringOutput `pulumi:"name"`
}

Manages a folder-level logging exclusion. For more information see:

* [API documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/folders.exclusions) * How-to Guides

> You can specify exclusions for log sinks created by the provider by using the exclusions field of `logging.FolderSink`

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/logging"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := organizations.NewFolder(ctx, "my_folder", &organizations.FolderArgs{
			DisplayName: pulumi.String("My folder"),
			Parent:      pulumi.String("organizations/123456"),
		})
		if err != nil {
			return err
		}
		_, err = logging.NewFolderExclusion(ctx, "my_exclusion", &logging.FolderExclusionArgs{
			Folder:      my_folder.Name,
			Description: pulumi.String("Exclude GCE instance debug logs"),
			Filter:      pulumi.String("resource.type = gce_instance AND severity <= DEBUG"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Folder-level logging exclusions can be imported using their URI, e.g.

```sh

$ pulumi import gcp:logging/folderExclusion:FolderExclusion my_exclusion folders/my-folder/exclusions/my-exclusion

```

func GetFolderExclusion

func GetFolderExclusion(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FolderExclusionState, opts ...pulumi.ResourceOption) (*FolderExclusion, error)

GetFolderExclusion gets an existing FolderExclusion resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewFolderExclusion

func NewFolderExclusion(ctx *pulumi.Context,
	name string, args *FolderExclusionArgs, opts ...pulumi.ResourceOption) (*FolderExclusion, error)

NewFolderExclusion registers a new resource with the given unique name, arguments, and options.

func (*FolderExclusion) ElementType added in v4.4.0

func (*FolderExclusion) ElementType() reflect.Type

func (*FolderExclusion) ToFolderExclusionOutput added in v4.4.0

func (i *FolderExclusion) ToFolderExclusionOutput() FolderExclusionOutput

func (*FolderExclusion) ToFolderExclusionOutputWithContext added in v4.4.0

func (i *FolderExclusion) ToFolderExclusionOutputWithContext(ctx context.Context) FolderExclusionOutput

func (*FolderExclusion) ToFolderExclusionPtrOutput added in v4.11.1

func (i *FolderExclusion) ToFolderExclusionPtrOutput() FolderExclusionPtrOutput

func (*FolderExclusion) ToFolderExclusionPtrOutputWithContext added in v4.11.1

func (i *FolderExclusion) ToFolderExclusionPtrOutputWithContext(ctx context.Context) FolderExclusionPtrOutput

type FolderExclusionArgs

type FolderExclusionArgs struct {
	// A human-readable description.
	Description pulumi.StringPtrInput
	// Whether this exclusion rule should be disabled or not. This defaults to
	// false.
	Disabled pulumi.BoolPtrInput
	// The filter to apply when excluding logs. Only log entries that match the filter are excluded.
	// See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced-filters) for information on how to
	// write a filter.
	Filter pulumi.StringInput
	// The folder to be exported to the sink. Note that either [FOLDER_ID] or "folders/[FOLDER_ID]" is
	// accepted.
	Folder pulumi.StringInput
	// The name of the logging exclusion.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a FolderExclusion resource.

func (FolderExclusionArgs) ElementType

func (FolderExclusionArgs) ElementType() reflect.Type

type FolderExclusionArray added in v4.11.1

type FolderExclusionArray []FolderExclusionInput

func (FolderExclusionArray) ElementType added in v4.11.1

func (FolderExclusionArray) ElementType() reflect.Type

func (FolderExclusionArray) ToFolderExclusionArrayOutput added in v4.11.1

func (i FolderExclusionArray) ToFolderExclusionArrayOutput() FolderExclusionArrayOutput

func (FolderExclusionArray) ToFolderExclusionArrayOutputWithContext added in v4.11.1

func (i FolderExclusionArray) ToFolderExclusionArrayOutputWithContext(ctx context.Context) FolderExclusionArrayOutput

type FolderExclusionArrayInput added in v4.11.1

type FolderExclusionArrayInput interface {
	pulumi.Input

	ToFolderExclusionArrayOutput() FolderExclusionArrayOutput
	ToFolderExclusionArrayOutputWithContext(context.Context) FolderExclusionArrayOutput
}

FolderExclusionArrayInput is an input type that accepts FolderExclusionArray and FolderExclusionArrayOutput values. You can construct a concrete instance of `FolderExclusionArrayInput` via:

FolderExclusionArray{ FolderExclusionArgs{...} }

type FolderExclusionArrayOutput added in v4.11.1

type FolderExclusionArrayOutput struct{ *pulumi.OutputState }

func (FolderExclusionArrayOutput) ElementType added in v4.11.1

func (FolderExclusionArrayOutput) ElementType() reflect.Type

func (FolderExclusionArrayOutput) Index added in v4.11.1

func (FolderExclusionArrayOutput) ToFolderExclusionArrayOutput added in v4.11.1

func (o FolderExclusionArrayOutput) ToFolderExclusionArrayOutput() FolderExclusionArrayOutput

func (FolderExclusionArrayOutput) ToFolderExclusionArrayOutputWithContext added in v4.11.1

func (o FolderExclusionArrayOutput) ToFolderExclusionArrayOutputWithContext(ctx context.Context) FolderExclusionArrayOutput

type FolderExclusionInput added in v4.4.0

type FolderExclusionInput interface {
	pulumi.Input

	ToFolderExclusionOutput() FolderExclusionOutput
	ToFolderExclusionOutputWithContext(ctx context.Context) FolderExclusionOutput
}

type FolderExclusionMap added in v4.11.1

type FolderExclusionMap map[string]FolderExclusionInput

func (FolderExclusionMap) ElementType added in v4.11.1

func (FolderExclusionMap) ElementType() reflect.Type

func (FolderExclusionMap) ToFolderExclusionMapOutput added in v4.11.1

func (i FolderExclusionMap) ToFolderExclusionMapOutput() FolderExclusionMapOutput

func (FolderExclusionMap) ToFolderExclusionMapOutputWithContext added in v4.11.1

func (i FolderExclusionMap) ToFolderExclusionMapOutputWithContext(ctx context.Context) FolderExclusionMapOutput

type FolderExclusionMapInput added in v4.11.1

type FolderExclusionMapInput interface {
	pulumi.Input

	ToFolderExclusionMapOutput() FolderExclusionMapOutput
	ToFolderExclusionMapOutputWithContext(context.Context) FolderExclusionMapOutput
}

FolderExclusionMapInput is an input type that accepts FolderExclusionMap and FolderExclusionMapOutput values. You can construct a concrete instance of `FolderExclusionMapInput` via:

FolderExclusionMap{ "key": FolderExclusionArgs{...} }

type FolderExclusionMapOutput added in v4.11.1

type FolderExclusionMapOutput struct{ *pulumi.OutputState }

func (FolderExclusionMapOutput) ElementType added in v4.11.1

func (FolderExclusionMapOutput) ElementType() reflect.Type

func (FolderExclusionMapOutput) MapIndex added in v4.11.1

func (FolderExclusionMapOutput) ToFolderExclusionMapOutput added in v4.11.1

func (o FolderExclusionMapOutput) ToFolderExclusionMapOutput() FolderExclusionMapOutput

func (FolderExclusionMapOutput) ToFolderExclusionMapOutputWithContext added in v4.11.1

func (o FolderExclusionMapOutput) ToFolderExclusionMapOutputWithContext(ctx context.Context) FolderExclusionMapOutput

type FolderExclusionOutput added in v4.4.0

type FolderExclusionOutput struct {
	*pulumi.OutputState
}

func (FolderExclusionOutput) ElementType added in v4.4.0

func (FolderExclusionOutput) ElementType() reflect.Type

func (FolderExclusionOutput) ToFolderExclusionOutput added in v4.4.0

func (o FolderExclusionOutput) ToFolderExclusionOutput() FolderExclusionOutput

func (FolderExclusionOutput) ToFolderExclusionOutputWithContext added in v4.4.0

func (o FolderExclusionOutput) ToFolderExclusionOutputWithContext(ctx context.Context) FolderExclusionOutput

func (FolderExclusionOutput) ToFolderExclusionPtrOutput added in v4.11.1

func (o FolderExclusionOutput) ToFolderExclusionPtrOutput() FolderExclusionPtrOutput

func (FolderExclusionOutput) ToFolderExclusionPtrOutputWithContext added in v4.11.1

func (o FolderExclusionOutput) ToFolderExclusionPtrOutputWithContext(ctx context.Context) FolderExclusionPtrOutput

type FolderExclusionPtrInput added in v4.11.1

type FolderExclusionPtrInput interface {
	pulumi.Input

	ToFolderExclusionPtrOutput() FolderExclusionPtrOutput
	ToFolderExclusionPtrOutputWithContext(ctx context.Context) FolderExclusionPtrOutput
}

type FolderExclusionPtrOutput added in v4.11.1

type FolderExclusionPtrOutput struct {
	*pulumi.OutputState
}

func (FolderExclusionPtrOutput) ElementType added in v4.11.1

func (FolderExclusionPtrOutput) ElementType() reflect.Type

func (FolderExclusionPtrOutput) ToFolderExclusionPtrOutput added in v4.11.1

func (o FolderExclusionPtrOutput) ToFolderExclusionPtrOutput() FolderExclusionPtrOutput

func (FolderExclusionPtrOutput) ToFolderExclusionPtrOutputWithContext added in v4.11.1

func (o FolderExclusionPtrOutput) ToFolderExclusionPtrOutputWithContext(ctx context.Context) FolderExclusionPtrOutput

type FolderExclusionState

type FolderExclusionState struct {
	// A human-readable description.
	Description pulumi.StringPtrInput
	// Whether this exclusion rule should be disabled or not. This defaults to
	// false.
	Disabled pulumi.BoolPtrInput
	// The filter to apply when excluding logs. Only log entries that match the filter are excluded.
	// See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced-filters) for information on how to
	// write a filter.
	Filter pulumi.StringPtrInput
	// The folder to be exported to the sink. Note that either [FOLDER_ID] or "folders/[FOLDER_ID]" is
	// accepted.
	Folder pulumi.StringPtrInput
	// The name of the logging exclusion.
	Name pulumi.StringPtrInput
}

func (FolderExclusionState) ElementType

func (FolderExclusionState) ElementType() reflect.Type

type FolderSink

type FolderSink struct {
	pulumi.CustomResourceState

	// Options that affect sinks exporting data to BigQuery. Structure documented below.
	BigqueryOptions FolderSinkBigqueryOptionsOutput `pulumi:"bigqueryOptions"`
	// A description of this exclusion.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The destination of the sink (or, in other words, where logs are written to). Can be a
	// Cloud Storage bucket, a PubSub topic, a BigQuery dataset or a Cloud Logging bucket. Examples:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		return nil
	// 	})
	// }
	// “`
	// The writer associated with the sink must have access to write to the above resource.
	Destination pulumi.StringOutput `pulumi:"destination"`
	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled pulumi.BoolPtrOutput `pulumi:"disabled"`
	// Log entries that match any of the exclusion filters will not be exported. If a log entry is matched by both filter and one of exclusionFilters it will not be exported.  Can be repeated multiple times for multiple exclusions. Structure is documented below.
	Exclusions FolderSinkExclusionArrayOutput `pulumi:"exclusions"`
	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to
	// write a filter.
	Filter pulumi.StringPtrOutput `pulumi:"filter"`
	// The folder to be exported to the sink. Note that either [FOLDER_ID] or "folders/[FOLDER_ID]" is
	// accepted.
	Folder pulumi.StringOutput `pulumi:"folder"`
	// Whether or not to include children folders in the sink export. If true, logs
	// associated with child projects are also exported; otherwise only logs relating to the provided folder are included.
	IncludeChildren pulumi.BoolPtrOutput `pulumi:"includeChildren"`
	// A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name pulumi.StringOutput `pulumi:"name"`
	// The identity associated with this sink. This identity must be granted write access to the
	// configured `destination`.
	WriterIdentity pulumi.StringOutput `pulumi:"writerIdentity"`
}

Manages a folder-level logging sink. For more information see: * [API documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/folders.sinks) * How-to Guides

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/logging"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/projects"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/storage"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := storage.NewBucket(ctx, "log_bucket", nil)
		if err != nil {
			return err
		}
		_, err = organizations.NewFolder(ctx, "my_folder", &organizations.FolderArgs{
			DisplayName: pulumi.String("My folder"),
			Parent:      pulumi.String("organizations/123456"),
		})
		if err != nil {
			return err
		}
		_, err = logging.NewFolderSink(ctx, "my_sink", &logging.FolderSinkArgs{
			Description: pulumi.String("some explaination on what this is"),
			Folder:      my_folder.Name,
			Destination: log_bucket.Name.ApplyT(func(name string) (string, error) {
				return fmt.Sprintf("%v%v", "storage.googleapis.com/", name), nil
			}).(pulumi.StringOutput),
			Filter: pulumi.String("resource.type = gce_instance AND severity >= WARNING"),
		})
		if err != nil {
			return err
		}
		_, err = projects.NewIAMBinding(ctx, "log_writer", &projects.IAMBindingArgs{
			Role: pulumi.String("roles/storage.objectCreator"),
			Members: pulumi.StringArray{
				my_sink.WriterIdentity,
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Folder-level logging sinks can be imported using this format

```sh

$ pulumi import gcp:logging/folderSink:FolderSink my_sink folders/{{folder_id}}/sinks/{{name}}

```

func GetFolderSink

func GetFolderSink(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FolderSinkState, opts ...pulumi.ResourceOption) (*FolderSink, error)

GetFolderSink gets an existing FolderSink resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewFolderSink

func NewFolderSink(ctx *pulumi.Context,
	name string, args *FolderSinkArgs, opts ...pulumi.ResourceOption) (*FolderSink, error)

NewFolderSink registers a new resource with the given unique name, arguments, and options.

func (*FolderSink) ElementType added in v4.4.0

func (*FolderSink) ElementType() reflect.Type

func (*FolderSink) ToFolderSinkOutput added in v4.4.0

func (i *FolderSink) ToFolderSinkOutput() FolderSinkOutput

func (*FolderSink) ToFolderSinkOutputWithContext added in v4.4.0

func (i *FolderSink) ToFolderSinkOutputWithContext(ctx context.Context) FolderSinkOutput

func (*FolderSink) ToFolderSinkPtrOutput added in v4.11.1

func (i *FolderSink) ToFolderSinkPtrOutput() FolderSinkPtrOutput

func (*FolderSink) ToFolderSinkPtrOutputWithContext added in v4.11.1

func (i *FolderSink) ToFolderSinkPtrOutputWithContext(ctx context.Context) FolderSinkPtrOutput

type FolderSinkArgs

type FolderSinkArgs struct {
	// Options that affect sinks exporting data to BigQuery. Structure documented below.
	BigqueryOptions FolderSinkBigqueryOptionsPtrInput
	// A description of this exclusion.
	Description pulumi.StringPtrInput
	// The destination of the sink (or, in other words, where logs are written to). Can be a
	// Cloud Storage bucket, a PubSub topic, a BigQuery dataset or a Cloud Logging bucket. Examples:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		return nil
	// 	})
	// }
	// “`
	// The writer associated with the sink must have access to write to the above resource.
	Destination pulumi.StringInput
	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled pulumi.BoolPtrInput
	// Log entries that match any of the exclusion filters will not be exported. If a log entry is matched by both filter and one of exclusionFilters it will not be exported.  Can be repeated multiple times for multiple exclusions. Structure is documented below.
	Exclusions FolderSinkExclusionArrayInput
	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to
	// write a filter.
	Filter pulumi.StringPtrInput
	// The folder to be exported to the sink. Note that either [FOLDER_ID] or "folders/[FOLDER_ID]" is
	// accepted.
	Folder pulumi.StringInput
	// Whether or not to include children folders in the sink export. If true, logs
	// associated with child projects are also exported; otherwise only logs relating to the provided folder are included.
	IncludeChildren pulumi.BoolPtrInput
	// A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a FolderSink resource.

func (FolderSinkArgs) ElementType

func (FolderSinkArgs) ElementType() reflect.Type

type FolderSinkArray added in v4.11.1

type FolderSinkArray []FolderSinkInput

func (FolderSinkArray) ElementType added in v4.11.1

func (FolderSinkArray) ElementType() reflect.Type

func (FolderSinkArray) ToFolderSinkArrayOutput added in v4.11.1

func (i FolderSinkArray) ToFolderSinkArrayOutput() FolderSinkArrayOutput

func (FolderSinkArray) ToFolderSinkArrayOutputWithContext added in v4.11.1

func (i FolderSinkArray) ToFolderSinkArrayOutputWithContext(ctx context.Context) FolderSinkArrayOutput

type FolderSinkArrayInput added in v4.11.1

type FolderSinkArrayInput interface {
	pulumi.Input

	ToFolderSinkArrayOutput() FolderSinkArrayOutput
	ToFolderSinkArrayOutputWithContext(context.Context) FolderSinkArrayOutput
}

FolderSinkArrayInput is an input type that accepts FolderSinkArray and FolderSinkArrayOutput values. You can construct a concrete instance of `FolderSinkArrayInput` via:

FolderSinkArray{ FolderSinkArgs{...} }

type FolderSinkArrayOutput added in v4.11.1

type FolderSinkArrayOutput struct{ *pulumi.OutputState }

func (FolderSinkArrayOutput) ElementType added in v4.11.1

func (FolderSinkArrayOutput) ElementType() reflect.Type

func (FolderSinkArrayOutput) Index added in v4.11.1

func (FolderSinkArrayOutput) ToFolderSinkArrayOutput added in v4.11.1

func (o FolderSinkArrayOutput) ToFolderSinkArrayOutput() FolderSinkArrayOutput

func (FolderSinkArrayOutput) ToFolderSinkArrayOutputWithContext added in v4.11.1

func (o FolderSinkArrayOutput) ToFolderSinkArrayOutputWithContext(ctx context.Context) FolderSinkArrayOutput

type FolderSinkBigqueryOptions

type FolderSinkBigqueryOptions struct {
	// Whether to use [BigQuery's partition tables](https://cloud.google.com/bigquery/docs/partitioned-tables).
	// By default, Logging creates dated tables based on the log entries' timestamps, e.g. syslog_20170523. With partitioned
	// tables the date suffix is no longer present and [special query syntax](https://cloud.google.com/bigquery/docs/querying-partitioned-tables)
	// has to be used instead. In both cases, tables are sharded based on UTC timezone.
	UsePartitionedTables bool `pulumi:"usePartitionedTables"`
}

type FolderSinkBigqueryOptionsArgs

type FolderSinkBigqueryOptionsArgs struct {
	// Whether to use [BigQuery's partition tables](https://cloud.google.com/bigquery/docs/partitioned-tables).
	// By default, Logging creates dated tables based on the log entries' timestamps, e.g. syslog_20170523. With partitioned
	// tables the date suffix is no longer present and [special query syntax](https://cloud.google.com/bigquery/docs/querying-partitioned-tables)
	// has to be used instead. In both cases, tables are sharded based on UTC timezone.
	UsePartitionedTables pulumi.BoolInput `pulumi:"usePartitionedTables"`
}

func (FolderSinkBigqueryOptionsArgs) ElementType

func (FolderSinkBigqueryOptionsArgs) ToFolderSinkBigqueryOptionsOutput

func (i FolderSinkBigqueryOptionsArgs) ToFolderSinkBigqueryOptionsOutput() FolderSinkBigqueryOptionsOutput

func (FolderSinkBigqueryOptionsArgs) ToFolderSinkBigqueryOptionsOutputWithContext

func (i FolderSinkBigqueryOptionsArgs) ToFolderSinkBigqueryOptionsOutputWithContext(ctx context.Context) FolderSinkBigqueryOptionsOutput

func (FolderSinkBigqueryOptionsArgs) ToFolderSinkBigqueryOptionsPtrOutput

func (i FolderSinkBigqueryOptionsArgs) ToFolderSinkBigqueryOptionsPtrOutput() FolderSinkBigqueryOptionsPtrOutput

func (FolderSinkBigqueryOptionsArgs) ToFolderSinkBigqueryOptionsPtrOutputWithContext

func (i FolderSinkBigqueryOptionsArgs) ToFolderSinkBigqueryOptionsPtrOutputWithContext(ctx context.Context) FolderSinkBigqueryOptionsPtrOutput

type FolderSinkBigqueryOptionsInput

type FolderSinkBigqueryOptionsInput interface {
	pulumi.Input

	ToFolderSinkBigqueryOptionsOutput() FolderSinkBigqueryOptionsOutput
	ToFolderSinkBigqueryOptionsOutputWithContext(context.Context) FolderSinkBigqueryOptionsOutput
}

FolderSinkBigqueryOptionsInput is an input type that accepts FolderSinkBigqueryOptionsArgs and FolderSinkBigqueryOptionsOutput values. You can construct a concrete instance of `FolderSinkBigqueryOptionsInput` via:

FolderSinkBigqueryOptionsArgs{...}

type FolderSinkBigqueryOptionsOutput

type FolderSinkBigqueryOptionsOutput struct{ *pulumi.OutputState }

func (FolderSinkBigqueryOptionsOutput) ElementType

func (FolderSinkBigqueryOptionsOutput) ToFolderSinkBigqueryOptionsOutput

func (o FolderSinkBigqueryOptionsOutput) ToFolderSinkBigqueryOptionsOutput() FolderSinkBigqueryOptionsOutput

func (FolderSinkBigqueryOptionsOutput) ToFolderSinkBigqueryOptionsOutputWithContext

func (o FolderSinkBigqueryOptionsOutput) ToFolderSinkBigqueryOptionsOutputWithContext(ctx context.Context) FolderSinkBigqueryOptionsOutput

func (FolderSinkBigqueryOptionsOutput) ToFolderSinkBigqueryOptionsPtrOutput

func (o FolderSinkBigqueryOptionsOutput) ToFolderSinkBigqueryOptionsPtrOutput() FolderSinkBigqueryOptionsPtrOutput

func (FolderSinkBigqueryOptionsOutput) ToFolderSinkBigqueryOptionsPtrOutputWithContext

func (o FolderSinkBigqueryOptionsOutput) ToFolderSinkBigqueryOptionsPtrOutputWithContext(ctx context.Context) FolderSinkBigqueryOptionsPtrOutput

func (FolderSinkBigqueryOptionsOutput) UsePartitionedTables

func (o FolderSinkBigqueryOptionsOutput) UsePartitionedTables() pulumi.BoolOutput

Whether to use [BigQuery's partition tables](https://cloud.google.com/bigquery/docs/partitioned-tables). By default, Logging creates dated tables based on the log entries' timestamps, e.g. syslog_20170523. With partitioned tables the date suffix is no longer present and [special query syntax](https://cloud.google.com/bigquery/docs/querying-partitioned-tables) has to be used instead. In both cases, tables are sharded based on UTC timezone.

type FolderSinkBigqueryOptionsPtrInput

type FolderSinkBigqueryOptionsPtrInput interface {
	pulumi.Input

	ToFolderSinkBigqueryOptionsPtrOutput() FolderSinkBigqueryOptionsPtrOutput
	ToFolderSinkBigqueryOptionsPtrOutputWithContext(context.Context) FolderSinkBigqueryOptionsPtrOutput
}

FolderSinkBigqueryOptionsPtrInput is an input type that accepts FolderSinkBigqueryOptionsArgs, FolderSinkBigqueryOptionsPtr and FolderSinkBigqueryOptionsPtrOutput values. You can construct a concrete instance of `FolderSinkBigqueryOptionsPtrInput` via:

        FolderSinkBigqueryOptionsArgs{...}

or:

        nil

type FolderSinkBigqueryOptionsPtrOutput

type FolderSinkBigqueryOptionsPtrOutput struct{ *pulumi.OutputState }

func (FolderSinkBigqueryOptionsPtrOutput) Elem

func (FolderSinkBigqueryOptionsPtrOutput) ElementType

func (FolderSinkBigqueryOptionsPtrOutput) ToFolderSinkBigqueryOptionsPtrOutput

func (o FolderSinkBigqueryOptionsPtrOutput) ToFolderSinkBigqueryOptionsPtrOutput() FolderSinkBigqueryOptionsPtrOutput

func (FolderSinkBigqueryOptionsPtrOutput) ToFolderSinkBigqueryOptionsPtrOutputWithContext

func (o FolderSinkBigqueryOptionsPtrOutput) ToFolderSinkBigqueryOptionsPtrOutputWithContext(ctx context.Context) FolderSinkBigqueryOptionsPtrOutput

func (FolderSinkBigqueryOptionsPtrOutput) UsePartitionedTables

func (o FolderSinkBigqueryOptionsPtrOutput) UsePartitionedTables() pulumi.BoolPtrOutput

Whether to use [BigQuery's partition tables](https://cloud.google.com/bigquery/docs/partitioned-tables). By default, Logging creates dated tables based on the log entries' timestamps, e.g. syslog_20170523. With partitioned tables the date suffix is no longer present and [special query syntax](https://cloud.google.com/bigquery/docs/querying-partitioned-tables) has to be used instead. In both cases, tables are sharded based on UTC timezone.

type FolderSinkExclusion

type FolderSinkExclusion struct {
	// A description of this exclusion.
	Description *string `pulumi:"description"`
	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled *bool `pulumi:"disabled"`
	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to
	// write a filter.
	Filter string `pulumi:"filter"`
	// A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name string `pulumi:"name"`
}

type FolderSinkExclusionArgs

type FolderSinkExclusionArgs struct {
	// A description of this exclusion.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled pulumi.BoolPtrInput `pulumi:"disabled"`
	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to
	// write a filter.
	Filter pulumi.StringInput `pulumi:"filter"`
	// A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name pulumi.StringInput `pulumi:"name"`
}

func (FolderSinkExclusionArgs) ElementType

func (FolderSinkExclusionArgs) ElementType() reflect.Type

func (FolderSinkExclusionArgs) ToFolderSinkExclusionOutput

func (i FolderSinkExclusionArgs) ToFolderSinkExclusionOutput() FolderSinkExclusionOutput

func (FolderSinkExclusionArgs) ToFolderSinkExclusionOutputWithContext

func (i FolderSinkExclusionArgs) ToFolderSinkExclusionOutputWithContext(ctx context.Context) FolderSinkExclusionOutput

type FolderSinkExclusionArray

type FolderSinkExclusionArray []FolderSinkExclusionInput

func (FolderSinkExclusionArray) ElementType

func (FolderSinkExclusionArray) ElementType() reflect.Type

func (FolderSinkExclusionArray) ToFolderSinkExclusionArrayOutput

func (i FolderSinkExclusionArray) ToFolderSinkExclusionArrayOutput() FolderSinkExclusionArrayOutput

func (FolderSinkExclusionArray) ToFolderSinkExclusionArrayOutputWithContext

func (i FolderSinkExclusionArray) ToFolderSinkExclusionArrayOutputWithContext(ctx context.Context) FolderSinkExclusionArrayOutput

type FolderSinkExclusionArrayInput

type FolderSinkExclusionArrayInput interface {
	pulumi.Input

	ToFolderSinkExclusionArrayOutput() FolderSinkExclusionArrayOutput
	ToFolderSinkExclusionArrayOutputWithContext(context.Context) FolderSinkExclusionArrayOutput
}

FolderSinkExclusionArrayInput is an input type that accepts FolderSinkExclusionArray and FolderSinkExclusionArrayOutput values. You can construct a concrete instance of `FolderSinkExclusionArrayInput` via:

FolderSinkExclusionArray{ FolderSinkExclusionArgs{...} }

type FolderSinkExclusionArrayOutput

type FolderSinkExclusionArrayOutput struct{ *pulumi.OutputState }

func (FolderSinkExclusionArrayOutput) ElementType

func (FolderSinkExclusionArrayOutput) Index

func (FolderSinkExclusionArrayOutput) ToFolderSinkExclusionArrayOutput

func (o FolderSinkExclusionArrayOutput) ToFolderSinkExclusionArrayOutput() FolderSinkExclusionArrayOutput

func (FolderSinkExclusionArrayOutput) ToFolderSinkExclusionArrayOutputWithContext

func (o FolderSinkExclusionArrayOutput) ToFolderSinkExclusionArrayOutputWithContext(ctx context.Context) FolderSinkExclusionArrayOutput

type FolderSinkExclusionInput

type FolderSinkExclusionInput interface {
	pulumi.Input

	ToFolderSinkExclusionOutput() FolderSinkExclusionOutput
	ToFolderSinkExclusionOutputWithContext(context.Context) FolderSinkExclusionOutput
}

FolderSinkExclusionInput is an input type that accepts FolderSinkExclusionArgs and FolderSinkExclusionOutput values. You can construct a concrete instance of `FolderSinkExclusionInput` via:

FolderSinkExclusionArgs{...}

type FolderSinkExclusionOutput

type FolderSinkExclusionOutput struct{ *pulumi.OutputState }

func (FolderSinkExclusionOutput) Description

A description of this exclusion.

func (FolderSinkExclusionOutput) Disabled

If set to True, then this exclusion is disabled and it does not exclude any log entries.

func (FolderSinkExclusionOutput) ElementType

func (FolderSinkExclusionOutput) ElementType() reflect.Type

func (FolderSinkExclusionOutput) Filter

An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to write a filter.

func (FolderSinkExclusionOutput) Name

A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.

func (FolderSinkExclusionOutput) ToFolderSinkExclusionOutput

func (o FolderSinkExclusionOutput) ToFolderSinkExclusionOutput() FolderSinkExclusionOutput

func (FolderSinkExclusionOutput) ToFolderSinkExclusionOutputWithContext

func (o FolderSinkExclusionOutput) ToFolderSinkExclusionOutputWithContext(ctx context.Context) FolderSinkExclusionOutput

type FolderSinkInput added in v4.4.0

type FolderSinkInput interface {
	pulumi.Input

	ToFolderSinkOutput() FolderSinkOutput
	ToFolderSinkOutputWithContext(ctx context.Context) FolderSinkOutput
}

type FolderSinkMap added in v4.11.1

type FolderSinkMap map[string]FolderSinkInput

func (FolderSinkMap) ElementType added in v4.11.1

func (FolderSinkMap) ElementType() reflect.Type

func (FolderSinkMap) ToFolderSinkMapOutput added in v4.11.1

func (i FolderSinkMap) ToFolderSinkMapOutput() FolderSinkMapOutput

func (FolderSinkMap) ToFolderSinkMapOutputWithContext added in v4.11.1

func (i FolderSinkMap) ToFolderSinkMapOutputWithContext(ctx context.Context) FolderSinkMapOutput

type FolderSinkMapInput added in v4.11.1

type FolderSinkMapInput interface {
	pulumi.Input

	ToFolderSinkMapOutput() FolderSinkMapOutput
	ToFolderSinkMapOutputWithContext(context.Context) FolderSinkMapOutput
}

FolderSinkMapInput is an input type that accepts FolderSinkMap and FolderSinkMapOutput values. You can construct a concrete instance of `FolderSinkMapInput` via:

FolderSinkMap{ "key": FolderSinkArgs{...} }

type FolderSinkMapOutput added in v4.11.1

type FolderSinkMapOutput struct{ *pulumi.OutputState }

func (FolderSinkMapOutput) ElementType added in v4.11.1

func (FolderSinkMapOutput) ElementType() reflect.Type

func (FolderSinkMapOutput) MapIndex added in v4.11.1

func (FolderSinkMapOutput) ToFolderSinkMapOutput added in v4.11.1

func (o FolderSinkMapOutput) ToFolderSinkMapOutput() FolderSinkMapOutput

func (FolderSinkMapOutput) ToFolderSinkMapOutputWithContext added in v4.11.1

func (o FolderSinkMapOutput) ToFolderSinkMapOutputWithContext(ctx context.Context) FolderSinkMapOutput

type FolderSinkOutput added in v4.4.0

type FolderSinkOutput struct {
	*pulumi.OutputState
}

func (FolderSinkOutput) ElementType added in v4.4.0

func (FolderSinkOutput) ElementType() reflect.Type

func (FolderSinkOutput) ToFolderSinkOutput added in v4.4.0

func (o FolderSinkOutput) ToFolderSinkOutput() FolderSinkOutput

func (FolderSinkOutput) ToFolderSinkOutputWithContext added in v4.4.0

func (o FolderSinkOutput) ToFolderSinkOutputWithContext(ctx context.Context) FolderSinkOutput

func (FolderSinkOutput) ToFolderSinkPtrOutput added in v4.11.1

func (o FolderSinkOutput) ToFolderSinkPtrOutput() FolderSinkPtrOutput

func (FolderSinkOutput) ToFolderSinkPtrOutputWithContext added in v4.11.1

func (o FolderSinkOutput) ToFolderSinkPtrOutputWithContext(ctx context.Context) FolderSinkPtrOutput

type FolderSinkPtrInput added in v4.11.1

type FolderSinkPtrInput interface {
	pulumi.Input

	ToFolderSinkPtrOutput() FolderSinkPtrOutput
	ToFolderSinkPtrOutputWithContext(ctx context.Context) FolderSinkPtrOutput
}

type FolderSinkPtrOutput added in v4.11.1

type FolderSinkPtrOutput struct {
	*pulumi.OutputState
}

func (FolderSinkPtrOutput) ElementType added in v4.11.1

func (FolderSinkPtrOutput) ElementType() reflect.Type

func (FolderSinkPtrOutput) ToFolderSinkPtrOutput added in v4.11.1

func (o FolderSinkPtrOutput) ToFolderSinkPtrOutput() FolderSinkPtrOutput

func (FolderSinkPtrOutput) ToFolderSinkPtrOutputWithContext added in v4.11.1

func (o FolderSinkPtrOutput) ToFolderSinkPtrOutputWithContext(ctx context.Context) FolderSinkPtrOutput

type FolderSinkState

type FolderSinkState struct {
	// Options that affect sinks exporting data to BigQuery. Structure documented below.
	BigqueryOptions FolderSinkBigqueryOptionsPtrInput
	// A description of this exclusion.
	Description pulumi.StringPtrInput
	// The destination of the sink (or, in other words, where logs are written to). Can be a
	// Cloud Storage bucket, a PubSub topic, a BigQuery dataset or a Cloud Logging bucket. Examples:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		return nil
	// 	})
	// }
	// “`
	// The writer associated with the sink must have access to write to the above resource.
	Destination pulumi.StringPtrInput
	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled pulumi.BoolPtrInput
	// Log entries that match any of the exclusion filters will not be exported. If a log entry is matched by both filter and one of exclusionFilters it will not be exported.  Can be repeated multiple times for multiple exclusions. Structure is documented below.
	Exclusions FolderSinkExclusionArrayInput
	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to
	// write a filter.
	Filter pulumi.StringPtrInput
	// The folder to be exported to the sink. Note that either [FOLDER_ID] or "folders/[FOLDER_ID]" is
	// accepted.
	Folder pulumi.StringPtrInput
	// Whether or not to include children folders in the sink export. If true, logs
	// associated with child projects are also exported; otherwise only logs relating to the provided folder are included.
	IncludeChildren pulumi.BoolPtrInput
	// A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name pulumi.StringPtrInput
	// The identity associated with this sink. This identity must be granted write access to the
	// configured `destination`.
	WriterIdentity pulumi.StringPtrInput
}

func (FolderSinkState) ElementType

func (FolderSinkState) ElementType() reflect.Type

type Metric

type Metric struct {
	pulumi.CustomResourceState

	// The bucketOptions are required when the logs-based metric is using a DISTRIBUTION value type and it
	// describes the bucket boundaries used to create a histogram of the extracted values.
	// Structure is documented below.
	BucketOptions MetricBucketOptionsPtrOutput `pulumi:"bucketOptions"`
	// A description of this metric, which is used in documentation. The maximum length of the
	// description is 8000 characters.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// An advanced logs filter (https://cloud.google.com/logging/docs/view/advanced-filters) which
	// is used to match log entries.
	Filter pulumi.StringOutput `pulumi:"filter"`
	// A map from a label key string to an extractor expression which is used to extract data from a log
	// entry field and assign as the label value. Each label key specified in the LabelDescriptor must
	// have an associated extractor expression in this map. The syntax of the extractor expression is
	// the same as for the valueExtractor field.
	LabelExtractors pulumi.StringMapOutput `pulumi:"labelExtractors"`
	// The metric descriptor associated with the logs-based metric.
	// Structure is documented below.
	MetricDescriptor MetricMetricDescriptorOutput `pulumi:"metricDescriptor"`
	// The client-assigned metric identifier. Examples - "errorCount", "nginx/requests".
	// Metric identifiers are limited to 100 characters and can include only the following
	// characters A-Z, a-z, 0-9, and the special characters _-.,+!*',()%/. The forward-slash
	// character (/) denotes a hierarchy of name pieces, and it cannot be the first character
	// of the name.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// A valueExtractor is required when using a distribution logs-based metric to extract the values to
	// record from a log entry. Two functions are supported for value extraction - EXTRACT(field) or
	// REGEXP_EXTRACT(field, regex). The argument are 1. field - The name of the log entry field from which
	// the value is to be extracted. 2. regex - A regular expression using the Google RE2 syntax
	// (https://github.com/google/re2/wiki/Syntax) with a single capture group to extract data from the specified
	// log entry field. The value of the field is converted to a string before applying the regex. It is an
	// error to specify a regex that does not include exactly one capture group.
	ValueExtractor pulumi.StringPtrOutput `pulumi:"valueExtractor"`
}

Logs-based metric can also be used to extract values from logs and create a a distribution of the values. The distribution records the statistics of the extracted values along with an optional histogram of the values as specified by the bucket options.

To get more information about Metric, see:

* [API documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/projects.metrics/create) * How-to Guides

## Example Usage ### Logging Metric Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/logging"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := logging.NewMetric(ctx, "loggingMetric", &logging.MetricArgs{
			BucketOptions: &logging.MetricBucketOptionsArgs{
				LinearBuckets: &logging.MetricBucketOptionsLinearBucketsArgs{
					NumFiniteBuckets: pulumi.Int(3),
					Offset:           pulumi.Float64(1),
					Width:            pulumi.Int(1),
				},
			},
			Filter: pulumi.String("resource.type=gae_app AND severity>=ERROR"),
			LabelExtractors: pulumi.StringMap{
				"mass": pulumi.String("EXTRACT(jsonPayload.request)"),
				"sku":  pulumi.String("EXTRACT(jsonPayload.id)"),
			},
			MetricDescriptor: &logging.MetricMetricDescriptorArgs{
				DisplayName: pulumi.String("My metric"),
				Labels: logging.MetricMetricDescriptorLabelArray{
					&logging.MetricMetricDescriptorLabelArgs{
						Description: pulumi.String("amount of matter"),
						Key:         pulumi.String("mass"),
						ValueType:   pulumi.String("STRING"),
					},
					&logging.MetricMetricDescriptorLabelArgs{
						Description: pulumi.String("Identifying number for item"),
						Key:         pulumi.String("sku"),
						ValueType:   pulumi.String("INT64"),
					},
				},
				MetricKind: pulumi.String("DELTA"),
				Unit:       pulumi.String("1"),
				ValueType:  pulumi.String("DISTRIBUTION"),
			},
			ValueExtractor: pulumi.String("EXTRACT(jsonPayload.request)"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Logging Metric Counter Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/logging"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := logging.NewMetric(ctx, "loggingMetric", &logging.MetricArgs{
			Filter: pulumi.String("resource.type=gae_app AND severity>=ERROR"),
			MetricDescriptor: &logging.MetricMetricDescriptorArgs{
				MetricKind: pulumi.String("DELTA"),
				ValueType:  pulumi.String("INT64"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Logging Metric Counter Labels

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/logging"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := logging.NewMetric(ctx, "loggingMetric", &logging.MetricArgs{
			Filter: pulumi.String("resource.type=gae_app AND severity>=ERROR"),
			LabelExtractors: pulumi.StringMap{
				"mass": pulumi.String("EXTRACT(jsonPayload.request)"),
			},
			MetricDescriptor: &logging.MetricMetricDescriptorArgs{
				Labels: logging.MetricMetricDescriptorLabelArray{
					&logging.MetricMetricDescriptorLabelArgs{
						Description: pulumi.String("amount of matter"),
						Key:         pulumi.String("mass"),
						ValueType:   pulumi.String("STRING"),
					},
				},
				MetricKind: pulumi.String("DELTA"),
				ValueType:  pulumi.String("INT64"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Metric can be imported using any of these accepted formats

```sh

$ pulumi import gcp:logging/metric:Metric default {{project}} {{name}}

```

```sh

$ pulumi import gcp:logging/metric:Metric default {{name}}

```

func GetMetric

func GetMetric(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *MetricState, opts ...pulumi.ResourceOption) (*Metric, error)

GetMetric gets an existing Metric resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewMetric

func NewMetric(ctx *pulumi.Context,
	name string, args *MetricArgs, opts ...pulumi.ResourceOption) (*Metric, error)

NewMetric registers a new resource with the given unique name, arguments, and options.

func (*Metric) ElementType added in v4.4.0

func (*Metric) ElementType() reflect.Type

func (*Metric) ToMetricOutput added in v4.4.0

func (i *Metric) ToMetricOutput() MetricOutput

func (*Metric) ToMetricOutputWithContext added in v4.4.0

func (i *Metric) ToMetricOutputWithContext(ctx context.Context) MetricOutput

func (*Metric) ToMetricPtrOutput added in v4.11.1

func (i *Metric) ToMetricPtrOutput() MetricPtrOutput

func (*Metric) ToMetricPtrOutputWithContext added in v4.11.1

func (i *Metric) ToMetricPtrOutputWithContext(ctx context.Context) MetricPtrOutput

type MetricArgs

type MetricArgs struct {
	// The bucketOptions are required when the logs-based metric is using a DISTRIBUTION value type and it
	// describes the bucket boundaries used to create a histogram of the extracted values.
	// Structure is documented below.
	BucketOptions MetricBucketOptionsPtrInput
	// A description of this metric, which is used in documentation. The maximum length of the
	// description is 8000 characters.
	Description pulumi.StringPtrInput
	// An advanced logs filter (https://cloud.google.com/logging/docs/view/advanced-filters) which
	// is used to match log entries.
	Filter pulumi.StringInput
	// A map from a label key string to an extractor expression which is used to extract data from a log
	// entry field and assign as the label value. Each label key specified in the LabelDescriptor must
	// have an associated extractor expression in this map. The syntax of the extractor expression is
	// the same as for the valueExtractor field.
	LabelExtractors pulumi.StringMapInput
	// The metric descriptor associated with the logs-based metric.
	// Structure is documented below.
	MetricDescriptor MetricMetricDescriptorInput
	// The client-assigned metric identifier. Examples - "errorCount", "nginx/requests".
	// Metric identifiers are limited to 100 characters and can include only the following
	// characters A-Z, a-z, 0-9, and the special characters _-.,+!*',()%/. The forward-slash
	// character (/) denotes a hierarchy of name pieces, and it cannot be the first character
	// of the name.
	Name pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// A valueExtractor is required when using a distribution logs-based metric to extract the values to
	// record from a log entry. Two functions are supported for value extraction - EXTRACT(field) or
	// REGEXP_EXTRACT(field, regex). The argument are 1. field - The name of the log entry field from which
	// the value is to be extracted. 2. regex - A regular expression using the Google RE2 syntax
	// (https://github.com/google/re2/wiki/Syntax) with a single capture group to extract data from the specified
	// log entry field. The value of the field is converted to a string before applying the regex. It is an
	// error to specify a regex that does not include exactly one capture group.
	ValueExtractor pulumi.StringPtrInput
}

The set of arguments for constructing a Metric resource.

func (MetricArgs) ElementType

func (MetricArgs) ElementType() reflect.Type

type MetricArray added in v4.11.1

type MetricArray []MetricInput

func (MetricArray) ElementType added in v4.11.1

func (MetricArray) ElementType() reflect.Type

func (MetricArray) ToMetricArrayOutput added in v4.11.1

func (i MetricArray) ToMetricArrayOutput() MetricArrayOutput

func (MetricArray) ToMetricArrayOutputWithContext added in v4.11.1

func (i MetricArray) ToMetricArrayOutputWithContext(ctx context.Context) MetricArrayOutput

type MetricArrayInput added in v4.11.1

type MetricArrayInput interface {
	pulumi.Input

	ToMetricArrayOutput() MetricArrayOutput
	ToMetricArrayOutputWithContext(context.Context) MetricArrayOutput
}

MetricArrayInput is an input type that accepts MetricArray and MetricArrayOutput values. You can construct a concrete instance of `MetricArrayInput` via:

MetricArray{ MetricArgs{...} }

type MetricArrayOutput added in v4.11.1

type MetricArrayOutput struct{ *pulumi.OutputState }

func (MetricArrayOutput) ElementType added in v4.11.1

func (MetricArrayOutput) ElementType() reflect.Type

func (MetricArrayOutput) Index added in v4.11.1

func (MetricArrayOutput) ToMetricArrayOutput added in v4.11.1

func (o MetricArrayOutput) ToMetricArrayOutput() MetricArrayOutput

func (MetricArrayOutput) ToMetricArrayOutputWithContext added in v4.11.1

func (o MetricArrayOutput) ToMetricArrayOutputWithContext(ctx context.Context) MetricArrayOutput

type MetricBucketOptions

type MetricBucketOptions struct {
	// Specifies a set of buckets with arbitrary widths.
	// Structure is documented below.
	ExplicitBuckets *MetricBucketOptionsExplicitBuckets `pulumi:"explicitBuckets"`
	// Specifies an exponential sequence of buckets that have a width that is proportional to the value of
	// the lower bound. Each bucket represents a constant relative uncertainty on a specific value in the bucket.
	// Structure is documented below.
	ExponentialBuckets *MetricBucketOptionsExponentialBuckets `pulumi:"exponentialBuckets"`
	// Specifies a linear sequence of buckets that all have the same width (except overflow and underflow).
	// Each bucket represents a constant absolute uncertainty on the specific value in the bucket.
	// Structure is documented below.
	LinearBuckets *MetricBucketOptionsLinearBuckets `pulumi:"linearBuckets"`
}

type MetricBucketOptionsArgs

type MetricBucketOptionsArgs struct {
	// Specifies a set of buckets with arbitrary widths.
	// Structure is documented below.
	ExplicitBuckets MetricBucketOptionsExplicitBucketsPtrInput `pulumi:"explicitBuckets"`
	// Specifies an exponential sequence of buckets that have a width that is proportional to the value of
	// the lower bound. Each bucket represents a constant relative uncertainty on a specific value in the bucket.
	// Structure is documented below.
	ExponentialBuckets MetricBucketOptionsExponentialBucketsPtrInput `pulumi:"exponentialBuckets"`
	// Specifies a linear sequence of buckets that all have the same width (except overflow and underflow).
	// Each bucket represents a constant absolute uncertainty on the specific value in the bucket.
	// Structure is documented below.
	LinearBuckets MetricBucketOptionsLinearBucketsPtrInput `pulumi:"linearBuckets"`
}

func (MetricBucketOptionsArgs) ElementType

func (MetricBucketOptionsArgs) ElementType() reflect.Type

func (MetricBucketOptionsArgs) ToMetricBucketOptionsOutput

func (i MetricBucketOptionsArgs) ToMetricBucketOptionsOutput() MetricBucketOptionsOutput

func (MetricBucketOptionsArgs) ToMetricBucketOptionsOutputWithContext

func (i MetricBucketOptionsArgs) ToMetricBucketOptionsOutputWithContext(ctx context.Context) MetricBucketOptionsOutput

func (MetricBucketOptionsArgs) ToMetricBucketOptionsPtrOutput

func (i MetricBucketOptionsArgs) ToMetricBucketOptionsPtrOutput() MetricBucketOptionsPtrOutput

func (MetricBucketOptionsArgs) ToMetricBucketOptionsPtrOutputWithContext

func (i MetricBucketOptionsArgs) ToMetricBucketOptionsPtrOutputWithContext(ctx context.Context) MetricBucketOptionsPtrOutput

type MetricBucketOptionsExplicitBuckets

type MetricBucketOptionsExplicitBuckets struct {
	// The values must be monotonically increasing.
	Bounds []float64 `pulumi:"bounds"`
}

type MetricBucketOptionsExplicitBucketsArgs

type MetricBucketOptionsExplicitBucketsArgs struct {
	// The values must be monotonically increasing.
	Bounds pulumi.Float64ArrayInput `pulumi:"bounds"`
}

func (MetricBucketOptionsExplicitBucketsArgs) ElementType

func (MetricBucketOptionsExplicitBucketsArgs) ToMetricBucketOptionsExplicitBucketsOutput

func (i MetricBucketOptionsExplicitBucketsArgs) ToMetricBucketOptionsExplicitBucketsOutput() MetricBucketOptionsExplicitBucketsOutput

func (MetricBucketOptionsExplicitBucketsArgs) ToMetricBucketOptionsExplicitBucketsOutputWithContext

func (i MetricBucketOptionsExplicitBucketsArgs) ToMetricBucketOptionsExplicitBucketsOutputWithContext(ctx context.Context) MetricBucketOptionsExplicitBucketsOutput

func (MetricBucketOptionsExplicitBucketsArgs) ToMetricBucketOptionsExplicitBucketsPtrOutput

func (i MetricBucketOptionsExplicitBucketsArgs) ToMetricBucketOptionsExplicitBucketsPtrOutput() MetricBucketOptionsExplicitBucketsPtrOutput

func (MetricBucketOptionsExplicitBucketsArgs) ToMetricBucketOptionsExplicitBucketsPtrOutputWithContext

func (i MetricBucketOptionsExplicitBucketsArgs) ToMetricBucketOptionsExplicitBucketsPtrOutputWithContext(ctx context.Context) MetricBucketOptionsExplicitBucketsPtrOutput

type MetricBucketOptionsExplicitBucketsInput

type MetricBucketOptionsExplicitBucketsInput interface {
	pulumi.Input

	ToMetricBucketOptionsExplicitBucketsOutput() MetricBucketOptionsExplicitBucketsOutput
	ToMetricBucketOptionsExplicitBucketsOutputWithContext(context.Context) MetricBucketOptionsExplicitBucketsOutput
}

MetricBucketOptionsExplicitBucketsInput is an input type that accepts MetricBucketOptionsExplicitBucketsArgs and MetricBucketOptionsExplicitBucketsOutput values. You can construct a concrete instance of `MetricBucketOptionsExplicitBucketsInput` via:

MetricBucketOptionsExplicitBucketsArgs{...}

type MetricBucketOptionsExplicitBucketsOutput

type MetricBucketOptionsExplicitBucketsOutput struct{ *pulumi.OutputState }

func (MetricBucketOptionsExplicitBucketsOutput) Bounds

The values must be monotonically increasing.

func (MetricBucketOptionsExplicitBucketsOutput) ElementType

func (MetricBucketOptionsExplicitBucketsOutput) ToMetricBucketOptionsExplicitBucketsOutput

func (o MetricBucketOptionsExplicitBucketsOutput) ToMetricBucketOptionsExplicitBucketsOutput() MetricBucketOptionsExplicitBucketsOutput

func (MetricBucketOptionsExplicitBucketsOutput) ToMetricBucketOptionsExplicitBucketsOutputWithContext

func (o MetricBucketOptionsExplicitBucketsOutput) ToMetricBucketOptionsExplicitBucketsOutputWithContext(ctx context.Context) MetricBucketOptionsExplicitBucketsOutput

func (MetricBucketOptionsExplicitBucketsOutput) ToMetricBucketOptionsExplicitBucketsPtrOutput

func (o MetricBucketOptionsExplicitBucketsOutput) ToMetricBucketOptionsExplicitBucketsPtrOutput() MetricBucketOptionsExplicitBucketsPtrOutput

func (MetricBucketOptionsExplicitBucketsOutput) ToMetricBucketOptionsExplicitBucketsPtrOutputWithContext

func (o MetricBucketOptionsExplicitBucketsOutput) ToMetricBucketOptionsExplicitBucketsPtrOutputWithContext(ctx context.Context) MetricBucketOptionsExplicitBucketsPtrOutput

type MetricBucketOptionsExplicitBucketsPtrInput

type MetricBucketOptionsExplicitBucketsPtrInput interface {
	pulumi.Input

	ToMetricBucketOptionsExplicitBucketsPtrOutput() MetricBucketOptionsExplicitBucketsPtrOutput
	ToMetricBucketOptionsExplicitBucketsPtrOutputWithContext(context.Context) MetricBucketOptionsExplicitBucketsPtrOutput
}

MetricBucketOptionsExplicitBucketsPtrInput is an input type that accepts MetricBucketOptionsExplicitBucketsArgs, MetricBucketOptionsExplicitBucketsPtr and MetricBucketOptionsExplicitBucketsPtrOutput values. You can construct a concrete instance of `MetricBucketOptionsExplicitBucketsPtrInput` via:

        MetricBucketOptionsExplicitBucketsArgs{...}

or:

        nil

type MetricBucketOptionsExplicitBucketsPtrOutput

type MetricBucketOptionsExplicitBucketsPtrOutput struct{ *pulumi.OutputState }

func (MetricBucketOptionsExplicitBucketsPtrOutput) Bounds

The values must be monotonically increasing.

func (MetricBucketOptionsExplicitBucketsPtrOutput) Elem

func (MetricBucketOptionsExplicitBucketsPtrOutput) ElementType

func (MetricBucketOptionsExplicitBucketsPtrOutput) ToMetricBucketOptionsExplicitBucketsPtrOutput

func (o MetricBucketOptionsExplicitBucketsPtrOutput) ToMetricBucketOptionsExplicitBucketsPtrOutput() MetricBucketOptionsExplicitBucketsPtrOutput

func (MetricBucketOptionsExplicitBucketsPtrOutput) ToMetricBucketOptionsExplicitBucketsPtrOutputWithContext

func (o MetricBucketOptionsExplicitBucketsPtrOutput) ToMetricBucketOptionsExplicitBucketsPtrOutputWithContext(ctx context.Context) MetricBucketOptionsExplicitBucketsPtrOutput

type MetricBucketOptionsExponentialBuckets

type MetricBucketOptionsExponentialBuckets struct {
	// Must be greater than 1.
	GrowthFactor *float64 `pulumi:"growthFactor"`
	// Must be greater than 0.
	NumFiniteBuckets *int `pulumi:"numFiniteBuckets"`
	// Must be greater than 0.
	Scale *float64 `pulumi:"scale"`
}

type MetricBucketOptionsExponentialBucketsArgs

type MetricBucketOptionsExponentialBucketsArgs struct {
	// Must be greater than 1.
	GrowthFactor pulumi.Float64PtrInput `pulumi:"growthFactor"`
	// Must be greater than 0.
	NumFiniteBuckets pulumi.IntPtrInput `pulumi:"numFiniteBuckets"`
	// Must be greater than 0.
	Scale pulumi.Float64PtrInput `pulumi:"scale"`
}

func (MetricBucketOptionsExponentialBucketsArgs) ElementType

func (MetricBucketOptionsExponentialBucketsArgs) ToMetricBucketOptionsExponentialBucketsOutput

func (i MetricBucketOptionsExponentialBucketsArgs) ToMetricBucketOptionsExponentialBucketsOutput() MetricBucketOptionsExponentialBucketsOutput

func (MetricBucketOptionsExponentialBucketsArgs) ToMetricBucketOptionsExponentialBucketsOutputWithContext

func (i MetricBucketOptionsExponentialBucketsArgs) ToMetricBucketOptionsExponentialBucketsOutputWithContext(ctx context.Context) MetricBucketOptionsExponentialBucketsOutput

func (MetricBucketOptionsExponentialBucketsArgs) ToMetricBucketOptionsExponentialBucketsPtrOutput

func (i MetricBucketOptionsExponentialBucketsArgs) ToMetricBucketOptionsExponentialBucketsPtrOutput() MetricBucketOptionsExponentialBucketsPtrOutput

func (MetricBucketOptionsExponentialBucketsArgs) ToMetricBucketOptionsExponentialBucketsPtrOutputWithContext

func (i MetricBucketOptionsExponentialBucketsArgs) ToMetricBucketOptionsExponentialBucketsPtrOutputWithContext(ctx context.Context) MetricBucketOptionsExponentialBucketsPtrOutput

type MetricBucketOptionsExponentialBucketsInput

type MetricBucketOptionsExponentialBucketsInput interface {
	pulumi.Input

	ToMetricBucketOptionsExponentialBucketsOutput() MetricBucketOptionsExponentialBucketsOutput
	ToMetricBucketOptionsExponentialBucketsOutputWithContext(context.Context) MetricBucketOptionsExponentialBucketsOutput
}

MetricBucketOptionsExponentialBucketsInput is an input type that accepts MetricBucketOptionsExponentialBucketsArgs and MetricBucketOptionsExponentialBucketsOutput values. You can construct a concrete instance of `MetricBucketOptionsExponentialBucketsInput` via:

MetricBucketOptionsExponentialBucketsArgs{...}

type MetricBucketOptionsExponentialBucketsOutput

type MetricBucketOptionsExponentialBucketsOutput struct{ *pulumi.OutputState }

func (MetricBucketOptionsExponentialBucketsOutput) ElementType

func (MetricBucketOptionsExponentialBucketsOutput) GrowthFactor

Must be greater than 1.

func (MetricBucketOptionsExponentialBucketsOutput) NumFiniteBuckets

Must be greater than 0.

func (MetricBucketOptionsExponentialBucketsOutput) Scale

Must be greater than 0.

func (MetricBucketOptionsExponentialBucketsOutput) ToMetricBucketOptionsExponentialBucketsOutput

func (o MetricBucketOptionsExponentialBucketsOutput) ToMetricBucketOptionsExponentialBucketsOutput() MetricBucketOptionsExponentialBucketsOutput

func (MetricBucketOptionsExponentialBucketsOutput) ToMetricBucketOptionsExponentialBucketsOutputWithContext

func (o MetricBucketOptionsExponentialBucketsOutput) ToMetricBucketOptionsExponentialBucketsOutputWithContext(ctx context.Context) MetricBucketOptionsExponentialBucketsOutput

func (MetricBucketOptionsExponentialBucketsOutput) ToMetricBucketOptionsExponentialBucketsPtrOutput

func (o MetricBucketOptionsExponentialBucketsOutput) ToMetricBucketOptionsExponentialBucketsPtrOutput() MetricBucketOptionsExponentialBucketsPtrOutput

func (MetricBucketOptionsExponentialBucketsOutput) ToMetricBucketOptionsExponentialBucketsPtrOutputWithContext

func (o MetricBucketOptionsExponentialBucketsOutput) ToMetricBucketOptionsExponentialBucketsPtrOutputWithContext(ctx context.Context) MetricBucketOptionsExponentialBucketsPtrOutput

type MetricBucketOptionsExponentialBucketsPtrInput

type MetricBucketOptionsExponentialBucketsPtrInput interface {
	pulumi.Input

	ToMetricBucketOptionsExponentialBucketsPtrOutput() MetricBucketOptionsExponentialBucketsPtrOutput
	ToMetricBucketOptionsExponentialBucketsPtrOutputWithContext(context.Context) MetricBucketOptionsExponentialBucketsPtrOutput
}

MetricBucketOptionsExponentialBucketsPtrInput is an input type that accepts MetricBucketOptionsExponentialBucketsArgs, MetricBucketOptionsExponentialBucketsPtr and MetricBucketOptionsExponentialBucketsPtrOutput values. You can construct a concrete instance of `MetricBucketOptionsExponentialBucketsPtrInput` via:

        MetricBucketOptionsExponentialBucketsArgs{...}

or:

        nil

type MetricBucketOptionsExponentialBucketsPtrOutput

type MetricBucketOptionsExponentialBucketsPtrOutput struct{ *pulumi.OutputState }

func (MetricBucketOptionsExponentialBucketsPtrOutput) Elem

func (MetricBucketOptionsExponentialBucketsPtrOutput) ElementType

func (MetricBucketOptionsExponentialBucketsPtrOutput) GrowthFactor

Must be greater than 1.

func (MetricBucketOptionsExponentialBucketsPtrOutput) NumFiniteBuckets

Must be greater than 0.

func (MetricBucketOptionsExponentialBucketsPtrOutput) Scale

Must be greater than 0.

func (MetricBucketOptionsExponentialBucketsPtrOutput) ToMetricBucketOptionsExponentialBucketsPtrOutput

func (o MetricBucketOptionsExponentialBucketsPtrOutput) ToMetricBucketOptionsExponentialBucketsPtrOutput() MetricBucketOptionsExponentialBucketsPtrOutput

func (MetricBucketOptionsExponentialBucketsPtrOutput) ToMetricBucketOptionsExponentialBucketsPtrOutputWithContext

func (o MetricBucketOptionsExponentialBucketsPtrOutput) ToMetricBucketOptionsExponentialBucketsPtrOutputWithContext(ctx context.Context) MetricBucketOptionsExponentialBucketsPtrOutput

type MetricBucketOptionsInput

type MetricBucketOptionsInput interface {
	pulumi.Input

	ToMetricBucketOptionsOutput() MetricBucketOptionsOutput
	ToMetricBucketOptionsOutputWithContext(context.Context) MetricBucketOptionsOutput
}

MetricBucketOptionsInput is an input type that accepts MetricBucketOptionsArgs and MetricBucketOptionsOutput values. You can construct a concrete instance of `MetricBucketOptionsInput` via:

MetricBucketOptionsArgs{...}

type MetricBucketOptionsLinearBuckets

type MetricBucketOptionsLinearBuckets struct {
	// Must be greater than 0.
	NumFiniteBuckets *int `pulumi:"numFiniteBuckets"`
	// Lower bound of the first bucket.
	Offset *float64 `pulumi:"offset"`
	// Must be greater than 0.
	Width *int `pulumi:"width"`
}

type MetricBucketOptionsLinearBucketsArgs

type MetricBucketOptionsLinearBucketsArgs struct {
	// Must be greater than 0.
	NumFiniteBuckets pulumi.IntPtrInput `pulumi:"numFiniteBuckets"`
	// Lower bound of the first bucket.
	Offset pulumi.Float64PtrInput `pulumi:"offset"`
	// Must be greater than 0.
	Width pulumi.IntPtrInput `pulumi:"width"`
}

func (MetricBucketOptionsLinearBucketsArgs) ElementType

func (MetricBucketOptionsLinearBucketsArgs) ToMetricBucketOptionsLinearBucketsOutput

func (i MetricBucketOptionsLinearBucketsArgs) ToMetricBucketOptionsLinearBucketsOutput() MetricBucketOptionsLinearBucketsOutput

func (MetricBucketOptionsLinearBucketsArgs) ToMetricBucketOptionsLinearBucketsOutputWithContext

func (i MetricBucketOptionsLinearBucketsArgs) ToMetricBucketOptionsLinearBucketsOutputWithContext(ctx context.Context) MetricBucketOptionsLinearBucketsOutput

func (MetricBucketOptionsLinearBucketsArgs) ToMetricBucketOptionsLinearBucketsPtrOutput

func (i MetricBucketOptionsLinearBucketsArgs) ToMetricBucketOptionsLinearBucketsPtrOutput() MetricBucketOptionsLinearBucketsPtrOutput

func (MetricBucketOptionsLinearBucketsArgs) ToMetricBucketOptionsLinearBucketsPtrOutputWithContext

func (i MetricBucketOptionsLinearBucketsArgs) ToMetricBucketOptionsLinearBucketsPtrOutputWithContext(ctx context.Context) MetricBucketOptionsLinearBucketsPtrOutput

type MetricBucketOptionsLinearBucketsInput

type MetricBucketOptionsLinearBucketsInput interface {
	pulumi.Input

	ToMetricBucketOptionsLinearBucketsOutput() MetricBucketOptionsLinearBucketsOutput
	ToMetricBucketOptionsLinearBucketsOutputWithContext(context.Context) MetricBucketOptionsLinearBucketsOutput
}

MetricBucketOptionsLinearBucketsInput is an input type that accepts MetricBucketOptionsLinearBucketsArgs and MetricBucketOptionsLinearBucketsOutput values. You can construct a concrete instance of `MetricBucketOptionsLinearBucketsInput` via:

MetricBucketOptionsLinearBucketsArgs{...}

type MetricBucketOptionsLinearBucketsOutput

type MetricBucketOptionsLinearBucketsOutput struct{ *pulumi.OutputState }

func (MetricBucketOptionsLinearBucketsOutput) ElementType

func (MetricBucketOptionsLinearBucketsOutput) NumFiniteBuckets

Must be greater than 0.

func (MetricBucketOptionsLinearBucketsOutput) Offset

Lower bound of the first bucket.

func (MetricBucketOptionsLinearBucketsOutput) ToMetricBucketOptionsLinearBucketsOutput

func (o MetricBucketOptionsLinearBucketsOutput) ToMetricBucketOptionsLinearBucketsOutput() MetricBucketOptionsLinearBucketsOutput

func (MetricBucketOptionsLinearBucketsOutput) ToMetricBucketOptionsLinearBucketsOutputWithContext

func (o MetricBucketOptionsLinearBucketsOutput) ToMetricBucketOptionsLinearBucketsOutputWithContext(ctx context.Context) MetricBucketOptionsLinearBucketsOutput

func (MetricBucketOptionsLinearBucketsOutput) ToMetricBucketOptionsLinearBucketsPtrOutput

func (o MetricBucketOptionsLinearBucketsOutput) ToMetricBucketOptionsLinearBucketsPtrOutput() MetricBucketOptionsLinearBucketsPtrOutput

func (MetricBucketOptionsLinearBucketsOutput) ToMetricBucketOptionsLinearBucketsPtrOutputWithContext

func (o MetricBucketOptionsLinearBucketsOutput) ToMetricBucketOptionsLinearBucketsPtrOutputWithContext(ctx context.Context) MetricBucketOptionsLinearBucketsPtrOutput

func (MetricBucketOptionsLinearBucketsOutput) Width

Must be greater than 0.

type MetricBucketOptionsLinearBucketsPtrInput

type MetricBucketOptionsLinearBucketsPtrInput interface {
	pulumi.Input

	ToMetricBucketOptionsLinearBucketsPtrOutput() MetricBucketOptionsLinearBucketsPtrOutput
	ToMetricBucketOptionsLinearBucketsPtrOutputWithContext(context.Context) MetricBucketOptionsLinearBucketsPtrOutput
}

MetricBucketOptionsLinearBucketsPtrInput is an input type that accepts MetricBucketOptionsLinearBucketsArgs, MetricBucketOptionsLinearBucketsPtr and MetricBucketOptionsLinearBucketsPtrOutput values. You can construct a concrete instance of `MetricBucketOptionsLinearBucketsPtrInput` via:

        MetricBucketOptionsLinearBucketsArgs{...}

or:

        nil

type MetricBucketOptionsLinearBucketsPtrOutput

type MetricBucketOptionsLinearBucketsPtrOutput struct{ *pulumi.OutputState }

func (MetricBucketOptionsLinearBucketsPtrOutput) Elem

func (MetricBucketOptionsLinearBucketsPtrOutput) ElementType

func (MetricBucketOptionsLinearBucketsPtrOutput) NumFiniteBuckets

Must be greater than 0.

func (MetricBucketOptionsLinearBucketsPtrOutput) Offset

Lower bound of the first bucket.

func (MetricBucketOptionsLinearBucketsPtrOutput) ToMetricBucketOptionsLinearBucketsPtrOutput

func (o MetricBucketOptionsLinearBucketsPtrOutput) ToMetricBucketOptionsLinearBucketsPtrOutput() MetricBucketOptionsLinearBucketsPtrOutput

func (MetricBucketOptionsLinearBucketsPtrOutput) ToMetricBucketOptionsLinearBucketsPtrOutputWithContext

func (o MetricBucketOptionsLinearBucketsPtrOutput) ToMetricBucketOptionsLinearBucketsPtrOutputWithContext(ctx context.Context) MetricBucketOptionsLinearBucketsPtrOutput

func (MetricBucketOptionsLinearBucketsPtrOutput) Width

Must be greater than 0.

type MetricBucketOptionsOutput

type MetricBucketOptionsOutput struct{ *pulumi.OutputState }

func (MetricBucketOptionsOutput) ElementType

func (MetricBucketOptionsOutput) ElementType() reflect.Type

func (MetricBucketOptionsOutput) ExplicitBuckets

Specifies a set of buckets with arbitrary widths. Structure is documented below.

func (MetricBucketOptionsOutput) ExponentialBuckets

Specifies an exponential sequence of buckets that have a width that is proportional to the value of the lower bound. Each bucket represents a constant relative uncertainty on a specific value in the bucket. Structure is documented below.

func (MetricBucketOptionsOutput) LinearBuckets

Specifies a linear sequence of buckets that all have the same width (except overflow and underflow). Each bucket represents a constant absolute uncertainty on the specific value in the bucket. Structure is documented below.

func (MetricBucketOptionsOutput) ToMetricBucketOptionsOutput

func (o MetricBucketOptionsOutput) ToMetricBucketOptionsOutput() MetricBucketOptionsOutput

func (MetricBucketOptionsOutput) ToMetricBucketOptionsOutputWithContext

func (o MetricBucketOptionsOutput) ToMetricBucketOptionsOutputWithContext(ctx context.Context) MetricBucketOptionsOutput

func (MetricBucketOptionsOutput) ToMetricBucketOptionsPtrOutput

func (o MetricBucketOptionsOutput) ToMetricBucketOptionsPtrOutput() MetricBucketOptionsPtrOutput

func (MetricBucketOptionsOutput) ToMetricBucketOptionsPtrOutputWithContext

func (o MetricBucketOptionsOutput) ToMetricBucketOptionsPtrOutputWithContext(ctx context.Context) MetricBucketOptionsPtrOutput

type MetricBucketOptionsPtrInput

type MetricBucketOptionsPtrInput interface {
	pulumi.Input

	ToMetricBucketOptionsPtrOutput() MetricBucketOptionsPtrOutput
	ToMetricBucketOptionsPtrOutputWithContext(context.Context) MetricBucketOptionsPtrOutput
}

MetricBucketOptionsPtrInput is an input type that accepts MetricBucketOptionsArgs, MetricBucketOptionsPtr and MetricBucketOptionsPtrOutput values. You can construct a concrete instance of `MetricBucketOptionsPtrInput` via:

        MetricBucketOptionsArgs{...}

or:

        nil

type MetricBucketOptionsPtrOutput

type MetricBucketOptionsPtrOutput struct{ *pulumi.OutputState }

func (MetricBucketOptionsPtrOutput) Elem

func (MetricBucketOptionsPtrOutput) ElementType

func (MetricBucketOptionsPtrOutput) ExplicitBuckets

Specifies a set of buckets with arbitrary widths. Structure is documented below.

func (MetricBucketOptionsPtrOutput) ExponentialBuckets

Specifies an exponential sequence of buckets that have a width that is proportional to the value of the lower bound. Each bucket represents a constant relative uncertainty on a specific value in the bucket. Structure is documented below.

func (MetricBucketOptionsPtrOutput) LinearBuckets

Specifies a linear sequence of buckets that all have the same width (except overflow and underflow). Each bucket represents a constant absolute uncertainty on the specific value in the bucket. Structure is documented below.

func (MetricBucketOptionsPtrOutput) ToMetricBucketOptionsPtrOutput

func (o MetricBucketOptionsPtrOutput) ToMetricBucketOptionsPtrOutput() MetricBucketOptionsPtrOutput

func (MetricBucketOptionsPtrOutput) ToMetricBucketOptionsPtrOutputWithContext

func (o MetricBucketOptionsPtrOutput) ToMetricBucketOptionsPtrOutputWithContext(ctx context.Context) MetricBucketOptionsPtrOutput

type MetricInput added in v4.4.0

type MetricInput interface {
	pulumi.Input

	ToMetricOutput() MetricOutput
	ToMetricOutputWithContext(ctx context.Context) MetricOutput
}

type MetricMap added in v4.11.1

type MetricMap map[string]MetricInput

func (MetricMap) ElementType added in v4.11.1

func (MetricMap) ElementType() reflect.Type

func (MetricMap) ToMetricMapOutput added in v4.11.1

func (i MetricMap) ToMetricMapOutput() MetricMapOutput

func (MetricMap) ToMetricMapOutputWithContext added in v4.11.1

func (i MetricMap) ToMetricMapOutputWithContext(ctx context.Context) MetricMapOutput

type MetricMapInput added in v4.11.1

type MetricMapInput interface {
	pulumi.Input

	ToMetricMapOutput() MetricMapOutput
	ToMetricMapOutputWithContext(context.Context) MetricMapOutput
}

MetricMapInput is an input type that accepts MetricMap and MetricMapOutput values. You can construct a concrete instance of `MetricMapInput` via:

MetricMap{ "key": MetricArgs{...} }

type MetricMapOutput added in v4.11.1

type MetricMapOutput struct{ *pulumi.OutputState }

func (MetricMapOutput) ElementType added in v4.11.1

func (MetricMapOutput) ElementType() reflect.Type

func (MetricMapOutput) MapIndex added in v4.11.1

func (MetricMapOutput) ToMetricMapOutput added in v4.11.1

func (o MetricMapOutput) ToMetricMapOutput() MetricMapOutput

func (MetricMapOutput) ToMetricMapOutputWithContext added in v4.11.1

func (o MetricMapOutput) ToMetricMapOutputWithContext(ctx context.Context) MetricMapOutput

type MetricMetricDescriptor

type MetricMetricDescriptor struct {
	// A concise name for the metric, which can be displayed in user interfaces. Use sentence case
	// without an ending period, for example "Request count". This field is optional but it is
	// recommended to be set for any metrics associated with user-visible concepts, such as Quota.
	DisplayName *string `pulumi:"displayName"`
	// The set of labels that can be used to describe a specific instance of this metric type. For
	// example, the appengine.googleapis.com/http/server/response_latencies metric type has a label
	// for the HTTP response code, response_code, so you can look at latencies for successful responses
	// or just for responses that failed.
	// Structure is documented below.
	Labels []MetricMetricDescriptorLabel `pulumi:"labels"`
	// Whether the metric records instantaneous values, changes to a value, etc.
	// Some combinations of metricKind and valueType might not be supported.
	// For counter metrics, set this to DELTA.
	// Possible values are `DELTA`, `GAUGE`, and `CUMULATIVE`.
	MetricKind string `pulumi:"metricKind"`
	// The unit in which the metric value is reported. It is only applicable if the valueType is
	// `INT64`, `DOUBLE`, or `DISTRIBUTION`. The supported units are a subset of
	// [The Unified Code for Units of Measure](http://unitsofmeasure.org/ucum.html) standard
	Unit *string `pulumi:"unit"`
	// The type of data that can be assigned to the label.
	// Default value is `STRING`.
	// Possible values are `BOOL`, `INT64`, and `STRING`.
	ValueType string `pulumi:"valueType"`
}

type MetricMetricDescriptorArgs

type MetricMetricDescriptorArgs struct {
	// A concise name for the metric, which can be displayed in user interfaces. Use sentence case
	// without an ending period, for example "Request count". This field is optional but it is
	// recommended to be set for any metrics associated with user-visible concepts, such as Quota.
	DisplayName pulumi.StringPtrInput `pulumi:"displayName"`
	// The set of labels that can be used to describe a specific instance of this metric type. For
	// example, the appengine.googleapis.com/http/server/response_latencies metric type has a label
	// for the HTTP response code, response_code, so you can look at latencies for successful responses
	// or just for responses that failed.
	// Structure is documented below.
	Labels MetricMetricDescriptorLabelArrayInput `pulumi:"labels"`
	// Whether the metric records instantaneous values, changes to a value, etc.
	// Some combinations of metricKind and valueType might not be supported.
	// For counter metrics, set this to DELTA.
	// Possible values are `DELTA`, `GAUGE`, and `CUMULATIVE`.
	MetricKind pulumi.StringInput `pulumi:"metricKind"`
	// The unit in which the metric value is reported. It is only applicable if the valueType is
	// `INT64`, `DOUBLE`, or `DISTRIBUTION`. The supported units are a subset of
	// [The Unified Code for Units of Measure](http://unitsofmeasure.org/ucum.html) standard
	Unit pulumi.StringPtrInput `pulumi:"unit"`
	// The type of data that can be assigned to the label.
	// Default value is `STRING`.
	// Possible values are `BOOL`, `INT64`, and `STRING`.
	ValueType pulumi.StringInput `pulumi:"valueType"`
}

func (MetricMetricDescriptorArgs) ElementType

func (MetricMetricDescriptorArgs) ElementType() reflect.Type

func (MetricMetricDescriptorArgs) ToMetricMetricDescriptorOutput

func (i MetricMetricDescriptorArgs) ToMetricMetricDescriptorOutput() MetricMetricDescriptorOutput

func (MetricMetricDescriptorArgs) ToMetricMetricDescriptorOutputWithContext

func (i MetricMetricDescriptorArgs) ToMetricMetricDescriptorOutputWithContext(ctx context.Context) MetricMetricDescriptorOutput

func (MetricMetricDescriptorArgs) ToMetricMetricDescriptorPtrOutput

func (i MetricMetricDescriptorArgs) ToMetricMetricDescriptorPtrOutput() MetricMetricDescriptorPtrOutput

func (MetricMetricDescriptorArgs) ToMetricMetricDescriptorPtrOutputWithContext

func (i MetricMetricDescriptorArgs) ToMetricMetricDescriptorPtrOutputWithContext(ctx context.Context) MetricMetricDescriptorPtrOutput

type MetricMetricDescriptorInput

type MetricMetricDescriptorInput interface {
	pulumi.Input

	ToMetricMetricDescriptorOutput() MetricMetricDescriptorOutput
	ToMetricMetricDescriptorOutputWithContext(context.Context) MetricMetricDescriptorOutput
}

MetricMetricDescriptorInput is an input type that accepts MetricMetricDescriptorArgs and MetricMetricDescriptorOutput values. You can construct a concrete instance of `MetricMetricDescriptorInput` via:

MetricMetricDescriptorArgs{...}

type MetricMetricDescriptorLabel

type MetricMetricDescriptorLabel struct {
	// A description of this metric, which is used in documentation. The maximum length of the
	// description is 8000 characters.
	Description *string `pulumi:"description"`
	// The label key.
	Key string `pulumi:"key"`
	// The type of data that can be assigned to the label.
	// Default value is `STRING`.
	// Possible values are `BOOL`, `INT64`, and `STRING`.
	ValueType *string `pulumi:"valueType"`
}

type MetricMetricDescriptorLabelArgs

type MetricMetricDescriptorLabelArgs struct {
	// A description of this metric, which is used in documentation. The maximum length of the
	// description is 8000 characters.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// The label key.
	Key pulumi.StringInput `pulumi:"key"`
	// The type of data that can be assigned to the label.
	// Default value is `STRING`.
	// Possible values are `BOOL`, `INT64`, and `STRING`.
	ValueType pulumi.StringPtrInput `pulumi:"valueType"`
}

func (MetricMetricDescriptorLabelArgs) ElementType

func (MetricMetricDescriptorLabelArgs) ToMetricMetricDescriptorLabelOutput

func (i MetricMetricDescriptorLabelArgs) ToMetricMetricDescriptorLabelOutput() MetricMetricDescriptorLabelOutput

func (MetricMetricDescriptorLabelArgs) ToMetricMetricDescriptorLabelOutputWithContext

func (i MetricMetricDescriptorLabelArgs) ToMetricMetricDescriptorLabelOutputWithContext(ctx context.Context) MetricMetricDescriptorLabelOutput

type MetricMetricDescriptorLabelArray

type MetricMetricDescriptorLabelArray []MetricMetricDescriptorLabelInput

func (MetricMetricDescriptorLabelArray) ElementType

func (MetricMetricDescriptorLabelArray) ToMetricMetricDescriptorLabelArrayOutput

func (i MetricMetricDescriptorLabelArray) ToMetricMetricDescriptorLabelArrayOutput() MetricMetricDescriptorLabelArrayOutput

func (MetricMetricDescriptorLabelArray) ToMetricMetricDescriptorLabelArrayOutputWithContext

func (i MetricMetricDescriptorLabelArray) ToMetricMetricDescriptorLabelArrayOutputWithContext(ctx context.Context) MetricMetricDescriptorLabelArrayOutput

type MetricMetricDescriptorLabelArrayInput

type MetricMetricDescriptorLabelArrayInput interface {
	pulumi.Input

	ToMetricMetricDescriptorLabelArrayOutput() MetricMetricDescriptorLabelArrayOutput
	ToMetricMetricDescriptorLabelArrayOutputWithContext(context.Context) MetricMetricDescriptorLabelArrayOutput
}

MetricMetricDescriptorLabelArrayInput is an input type that accepts MetricMetricDescriptorLabelArray and MetricMetricDescriptorLabelArrayOutput values. You can construct a concrete instance of `MetricMetricDescriptorLabelArrayInput` via:

MetricMetricDescriptorLabelArray{ MetricMetricDescriptorLabelArgs{...} }

type MetricMetricDescriptorLabelArrayOutput

type MetricMetricDescriptorLabelArrayOutput struct{ *pulumi.OutputState }

func (MetricMetricDescriptorLabelArrayOutput) ElementType

func (MetricMetricDescriptorLabelArrayOutput) Index

func (MetricMetricDescriptorLabelArrayOutput) ToMetricMetricDescriptorLabelArrayOutput

func (o MetricMetricDescriptorLabelArrayOutput) ToMetricMetricDescriptorLabelArrayOutput() MetricMetricDescriptorLabelArrayOutput

func (MetricMetricDescriptorLabelArrayOutput) ToMetricMetricDescriptorLabelArrayOutputWithContext

func (o MetricMetricDescriptorLabelArrayOutput) ToMetricMetricDescriptorLabelArrayOutputWithContext(ctx context.Context) MetricMetricDescriptorLabelArrayOutput

type MetricMetricDescriptorLabelInput

type MetricMetricDescriptorLabelInput interface {
	pulumi.Input

	ToMetricMetricDescriptorLabelOutput() MetricMetricDescriptorLabelOutput
	ToMetricMetricDescriptorLabelOutputWithContext(context.Context) MetricMetricDescriptorLabelOutput
}

MetricMetricDescriptorLabelInput is an input type that accepts MetricMetricDescriptorLabelArgs and MetricMetricDescriptorLabelOutput values. You can construct a concrete instance of `MetricMetricDescriptorLabelInput` via:

MetricMetricDescriptorLabelArgs{...}

type MetricMetricDescriptorLabelOutput

type MetricMetricDescriptorLabelOutput struct{ *pulumi.OutputState }

func (MetricMetricDescriptorLabelOutput) Description

A description of this metric, which is used in documentation. The maximum length of the description is 8000 characters.

func (MetricMetricDescriptorLabelOutput) ElementType

func (MetricMetricDescriptorLabelOutput) Key

The label key.

func (MetricMetricDescriptorLabelOutput) ToMetricMetricDescriptorLabelOutput

func (o MetricMetricDescriptorLabelOutput) ToMetricMetricDescriptorLabelOutput() MetricMetricDescriptorLabelOutput

func (MetricMetricDescriptorLabelOutput) ToMetricMetricDescriptorLabelOutputWithContext

func (o MetricMetricDescriptorLabelOutput) ToMetricMetricDescriptorLabelOutputWithContext(ctx context.Context) MetricMetricDescriptorLabelOutput

func (MetricMetricDescriptorLabelOutput) ValueType

The type of data that can be assigned to the label. Default value is `STRING`. Possible values are `BOOL`, `INT64`, and `STRING`.

type MetricMetricDescriptorOutput

type MetricMetricDescriptorOutput struct{ *pulumi.OutputState }

func (MetricMetricDescriptorOutput) DisplayName

A concise name for the metric, which can be displayed in user interfaces. Use sentence case without an ending period, for example "Request count". This field is optional but it is recommended to be set for any metrics associated with user-visible concepts, such as Quota.

func (MetricMetricDescriptorOutput) ElementType

func (MetricMetricDescriptorOutput) Labels

The set of labels that can be used to describe a specific instance of this metric type. For example, the appengine.googleapis.com/http/server/response_latencies metric type has a label for the HTTP response code, response_code, so you can look at latencies for successful responses or just for responses that failed. Structure is documented below.

func (MetricMetricDescriptorOutput) MetricKind

Whether the metric records instantaneous values, changes to a value, etc. Some combinations of metricKind and valueType might not be supported. For counter metrics, set this to DELTA. Possible values are `DELTA`, `GAUGE`, and `CUMULATIVE`.

func (MetricMetricDescriptorOutput) ToMetricMetricDescriptorOutput

func (o MetricMetricDescriptorOutput) ToMetricMetricDescriptorOutput() MetricMetricDescriptorOutput

func (MetricMetricDescriptorOutput) ToMetricMetricDescriptorOutputWithContext

func (o MetricMetricDescriptorOutput) ToMetricMetricDescriptorOutputWithContext(ctx context.Context) MetricMetricDescriptorOutput

func (MetricMetricDescriptorOutput) ToMetricMetricDescriptorPtrOutput

func (o MetricMetricDescriptorOutput) ToMetricMetricDescriptorPtrOutput() MetricMetricDescriptorPtrOutput

func (MetricMetricDescriptorOutput) ToMetricMetricDescriptorPtrOutputWithContext

func (o MetricMetricDescriptorOutput) ToMetricMetricDescriptorPtrOutputWithContext(ctx context.Context) MetricMetricDescriptorPtrOutput

func (MetricMetricDescriptorOutput) Unit

The unit in which the metric value is reported. It is only applicable if the valueType is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The supported units are a subset of [The Unified Code for Units of Measure](http://unitsofmeasure.org/ucum.html) standard

func (MetricMetricDescriptorOutput) ValueType

The type of data that can be assigned to the label. Default value is `STRING`. Possible values are `BOOL`, `INT64`, and `STRING`.

type MetricMetricDescriptorPtrInput

type MetricMetricDescriptorPtrInput interface {
	pulumi.Input

	ToMetricMetricDescriptorPtrOutput() MetricMetricDescriptorPtrOutput
	ToMetricMetricDescriptorPtrOutputWithContext(context.Context) MetricMetricDescriptorPtrOutput
}

MetricMetricDescriptorPtrInput is an input type that accepts MetricMetricDescriptorArgs, MetricMetricDescriptorPtr and MetricMetricDescriptorPtrOutput values. You can construct a concrete instance of `MetricMetricDescriptorPtrInput` via:

        MetricMetricDescriptorArgs{...}

or:

        nil

type MetricMetricDescriptorPtrOutput

type MetricMetricDescriptorPtrOutput struct{ *pulumi.OutputState }

func (MetricMetricDescriptorPtrOutput) DisplayName

A concise name for the metric, which can be displayed in user interfaces. Use sentence case without an ending period, for example "Request count". This field is optional but it is recommended to be set for any metrics associated with user-visible concepts, such as Quota.

func (MetricMetricDescriptorPtrOutput) Elem

func (MetricMetricDescriptorPtrOutput) ElementType

func (MetricMetricDescriptorPtrOutput) Labels

The set of labels that can be used to describe a specific instance of this metric type. For example, the appengine.googleapis.com/http/server/response_latencies metric type has a label for the HTTP response code, response_code, so you can look at latencies for successful responses or just for responses that failed. Structure is documented below.

func (MetricMetricDescriptorPtrOutput) MetricKind

Whether the metric records instantaneous values, changes to a value, etc. Some combinations of metricKind and valueType might not be supported. For counter metrics, set this to DELTA. Possible values are `DELTA`, `GAUGE`, and `CUMULATIVE`.

func (MetricMetricDescriptorPtrOutput) ToMetricMetricDescriptorPtrOutput

func (o MetricMetricDescriptorPtrOutput) ToMetricMetricDescriptorPtrOutput() MetricMetricDescriptorPtrOutput

func (MetricMetricDescriptorPtrOutput) ToMetricMetricDescriptorPtrOutputWithContext

func (o MetricMetricDescriptorPtrOutput) ToMetricMetricDescriptorPtrOutputWithContext(ctx context.Context) MetricMetricDescriptorPtrOutput

func (MetricMetricDescriptorPtrOutput) Unit

The unit in which the metric value is reported. It is only applicable if the valueType is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The supported units are a subset of [The Unified Code for Units of Measure](http://unitsofmeasure.org/ucum.html) standard

func (MetricMetricDescriptorPtrOutput) ValueType

The type of data that can be assigned to the label. Default value is `STRING`. Possible values are `BOOL`, `INT64`, and `STRING`.

type MetricOutput added in v4.4.0

type MetricOutput struct {
	*pulumi.OutputState
}

func (MetricOutput) ElementType added in v4.4.0

func (MetricOutput) ElementType() reflect.Type

func (MetricOutput) ToMetricOutput added in v4.4.0

func (o MetricOutput) ToMetricOutput() MetricOutput

func (MetricOutput) ToMetricOutputWithContext added in v4.4.0

func (o MetricOutput) ToMetricOutputWithContext(ctx context.Context) MetricOutput

func (MetricOutput) ToMetricPtrOutput added in v4.11.1

func (o MetricOutput) ToMetricPtrOutput() MetricPtrOutput

func (MetricOutput) ToMetricPtrOutputWithContext added in v4.11.1

func (o MetricOutput) ToMetricPtrOutputWithContext(ctx context.Context) MetricPtrOutput

type MetricPtrInput added in v4.11.1

type MetricPtrInput interface {
	pulumi.Input

	ToMetricPtrOutput() MetricPtrOutput
	ToMetricPtrOutputWithContext(ctx context.Context) MetricPtrOutput
}

type MetricPtrOutput added in v4.11.1

type MetricPtrOutput struct {
	*pulumi.OutputState
}

func (MetricPtrOutput) ElementType added in v4.11.1

func (MetricPtrOutput) ElementType() reflect.Type

func (MetricPtrOutput) ToMetricPtrOutput added in v4.11.1

func (o MetricPtrOutput) ToMetricPtrOutput() MetricPtrOutput

func (MetricPtrOutput) ToMetricPtrOutputWithContext added in v4.11.1

func (o MetricPtrOutput) ToMetricPtrOutputWithContext(ctx context.Context) MetricPtrOutput

type MetricState

type MetricState struct {
	// The bucketOptions are required when the logs-based metric is using a DISTRIBUTION value type and it
	// describes the bucket boundaries used to create a histogram of the extracted values.
	// Structure is documented below.
	BucketOptions MetricBucketOptionsPtrInput
	// A description of this metric, which is used in documentation. The maximum length of the
	// description is 8000 characters.
	Description pulumi.StringPtrInput
	// An advanced logs filter (https://cloud.google.com/logging/docs/view/advanced-filters) which
	// is used to match log entries.
	Filter pulumi.StringPtrInput
	// A map from a label key string to an extractor expression which is used to extract data from a log
	// entry field and assign as the label value. Each label key specified in the LabelDescriptor must
	// have an associated extractor expression in this map. The syntax of the extractor expression is
	// the same as for the valueExtractor field.
	LabelExtractors pulumi.StringMapInput
	// The metric descriptor associated with the logs-based metric.
	// Structure is documented below.
	MetricDescriptor MetricMetricDescriptorPtrInput
	// The client-assigned metric identifier. Examples - "errorCount", "nginx/requests".
	// Metric identifiers are limited to 100 characters and can include only the following
	// characters A-Z, a-z, 0-9, and the special characters _-.,+!*',()%/. The forward-slash
	// character (/) denotes a hierarchy of name pieces, and it cannot be the first character
	// of the name.
	Name pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// A valueExtractor is required when using a distribution logs-based metric to extract the values to
	// record from a log entry. Two functions are supported for value extraction - EXTRACT(field) or
	// REGEXP_EXTRACT(field, regex). The argument are 1. field - The name of the log entry field from which
	// the value is to be extracted. 2. regex - A regular expression using the Google RE2 syntax
	// (https://github.com/google/re2/wiki/Syntax) with a single capture group to extract data from the specified
	// log entry field. The value of the field is converted to a string before applying the regex. It is an
	// error to specify a regex that does not include exactly one capture group.
	ValueExtractor pulumi.StringPtrInput
}

func (MetricState) ElementType

func (MetricState) ElementType() reflect.Type

type OrganizationBucketConfig

type OrganizationBucketConfig struct {
	pulumi.CustomResourceState

	// The name of the logging bucket. Logging automatically creates two log buckets: `_Required` and `_Default`.
	BucketId pulumi.StringOutput `pulumi:"bucketId"`
	// Describes this bucket.
	Description pulumi.StringOutput `pulumi:"description"`
	// The bucket's lifecycle such as active or deleted. See [LifecycleState](https://cloud.google.com/logging/docs/reference/v2/rest/v2/billingAccounts.buckets#LogBucket.LifecycleState).
	LifecycleState pulumi.StringOutput `pulumi:"lifecycleState"`
	// The location of the bucket. The supported locations are: "global" "us-central1"
	Location pulumi.StringOutput `pulumi:"location"`
	// The resource name of the bucket. For example: "organizations/my-organization-id/locations/my-location/buckets/my-bucket-id"
	Name pulumi.StringOutput `pulumi:"name"`
	// The parent resource that contains the logging bucket.
	Organization pulumi.StringOutput `pulumi:"organization"`
	// Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used. Bucket retention can not be increased on buckets outside of projects.
	RetentionDays pulumi.IntPtrOutput `pulumi:"retentionDays"`
}

Manages a organization-level logging bucket config. For more information see [the official logging documentation](https://cloud.google.com/logging/docs/) and [Storing Logs](https://cloud.google.com/logging/docs/storage).

> **Note:** Logging buckets are automatically created for a given folder, project, organization, billingAccount and cannot be deleted. Creating a resource of this type will acquire and update the resource that already exists at the desired location. These buckets cannot be removed so deleting this resource will remove the bucket config from your state but will leave the logging bucket unchanged. The buckets that are currently automatically created are "_Default" and "_Required".

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/logging"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "123456789"
		_default, err := organizations.GetOrganization(ctx, &organizations.GetOrganizationArgs{
			Organization: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		_, err = logging.NewOrganizationBucketConfig(ctx, "basic", &logging.OrganizationBucketConfigArgs{
			Organization:  pulumi.String(_default.Organization),
			Location:      pulumi.String("global"),
			RetentionDays: pulumi.Int(30),
			BucketId:      pulumi.String("_Default"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

This resource can be imported using the following format

```sh

$ pulumi import gcp:logging/organizationBucketConfig:OrganizationBucketConfig default organizations/{{organization}}/locations/{{location}}/buckets/{{bucket_id}}

```

func GetOrganizationBucketConfig

func GetOrganizationBucketConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *OrganizationBucketConfigState, opts ...pulumi.ResourceOption) (*OrganizationBucketConfig, error)

GetOrganizationBucketConfig gets an existing OrganizationBucketConfig resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewOrganizationBucketConfig

func NewOrganizationBucketConfig(ctx *pulumi.Context,
	name string, args *OrganizationBucketConfigArgs, opts ...pulumi.ResourceOption) (*OrganizationBucketConfig, error)

NewOrganizationBucketConfig registers a new resource with the given unique name, arguments, and options.

func (*OrganizationBucketConfig) ElementType added in v4.4.0

func (*OrganizationBucketConfig) ElementType() reflect.Type

func (*OrganizationBucketConfig) ToOrganizationBucketConfigOutput added in v4.4.0

func (i *OrganizationBucketConfig) ToOrganizationBucketConfigOutput() OrganizationBucketConfigOutput

func (*OrganizationBucketConfig) ToOrganizationBucketConfigOutputWithContext added in v4.4.0

func (i *OrganizationBucketConfig) ToOrganizationBucketConfigOutputWithContext(ctx context.Context) OrganizationBucketConfigOutput

func (*OrganizationBucketConfig) ToOrganizationBucketConfigPtrOutput added in v4.11.1

func (i *OrganizationBucketConfig) ToOrganizationBucketConfigPtrOutput() OrganizationBucketConfigPtrOutput

func (*OrganizationBucketConfig) ToOrganizationBucketConfigPtrOutputWithContext added in v4.11.1

func (i *OrganizationBucketConfig) ToOrganizationBucketConfigPtrOutputWithContext(ctx context.Context) OrganizationBucketConfigPtrOutput

type OrganizationBucketConfigArgs

type OrganizationBucketConfigArgs struct {
	// The name of the logging bucket. Logging automatically creates two log buckets: `_Required` and `_Default`.
	BucketId pulumi.StringInput
	// Describes this bucket.
	Description pulumi.StringPtrInput
	// The location of the bucket. The supported locations are: "global" "us-central1"
	Location pulumi.StringInput
	// The parent resource that contains the logging bucket.
	Organization pulumi.StringInput
	// Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used. Bucket retention can not be increased on buckets outside of projects.
	RetentionDays pulumi.IntPtrInput
}

The set of arguments for constructing a OrganizationBucketConfig resource.

func (OrganizationBucketConfigArgs) ElementType

type OrganizationBucketConfigArray added in v4.11.1

type OrganizationBucketConfigArray []OrganizationBucketConfigInput

func (OrganizationBucketConfigArray) ElementType added in v4.11.1

func (OrganizationBucketConfigArray) ToOrganizationBucketConfigArrayOutput added in v4.11.1

func (i OrganizationBucketConfigArray) ToOrganizationBucketConfigArrayOutput() OrganizationBucketConfigArrayOutput

func (OrganizationBucketConfigArray) ToOrganizationBucketConfigArrayOutputWithContext added in v4.11.1

func (i OrganizationBucketConfigArray) ToOrganizationBucketConfigArrayOutputWithContext(ctx context.Context) OrganizationBucketConfigArrayOutput

type OrganizationBucketConfigArrayInput added in v4.11.1

type OrganizationBucketConfigArrayInput interface {
	pulumi.Input

	ToOrganizationBucketConfigArrayOutput() OrganizationBucketConfigArrayOutput
	ToOrganizationBucketConfigArrayOutputWithContext(context.Context) OrganizationBucketConfigArrayOutput
}

OrganizationBucketConfigArrayInput is an input type that accepts OrganizationBucketConfigArray and OrganizationBucketConfigArrayOutput values. You can construct a concrete instance of `OrganizationBucketConfigArrayInput` via:

OrganizationBucketConfigArray{ OrganizationBucketConfigArgs{...} }

type OrganizationBucketConfigArrayOutput added in v4.11.1

type OrganizationBucketConfigArrayOutput struct{ *pulumi.OutputState }

func (OrganizationBucketConfigArrayOutput) ElementType added in v4.11.1

func (OrganizationBucketConfigArrayOutput) Index added in v4.11.1

func (OrganizationBucketConfigArrayOutput) ToOrganizationBucketConfigArrayOutput added in v4.11.1

func (o OrganizationBucketConfigArrayOutput) ToOrganizationBucketConfigArrayOutput() OrganizationBucketConfigArrayOutput

func (OrganizationBucketConfigArrayOutput) ToOrganizationBucketConfigArrayOutputWithContext added in v4.11.1

func (o OrganizationBucketConfigArrayOutput) ToOrganizationBucketConfigArrayOutputWithContext(ctx context.Context) OrganizationBucketConfigArrayOutput

type OrganizationBucketConfigInput added in v4.4.0

type OrganizationBucketConfigInput interface {
	pulumi.Input

	ToOrganizationBucketConfigOutput() OrganizationBucketConfigOutput
	ToOrganizationBucketConfigOutputWithContext(ctx context.Context) OrganizationBucketConfigOutput
}

type OrganizationBucketConfigMap added in v4.11.1

type OrganizationBucketConfigMap map[string]OrganizationBucketConfigInput

func (OrganizationBucketConfigMap) ElementType added in v4.11.1

func (OrganizationBucketConfigMap) ToOrganizationBucketConfigMapOutput added in v4.11.1

func (i OrganizationBucketConfigMap) ToOrganizationBucketConfigMapOutput() OrganizationBucketConfigMapOutput

func (OrganizationBucketConfigMap) ToOrganizationBucketConfigMapOutputWithContext added in v4.11.1

func (i OrganizationBucketConfigMap) ToOrganizationBucketConfigMapOutputWithContext(ctx context.Context) OrganizationBucketConfigMapOutput

type OrganizationBucketConfigMapInput added in v4.11.1

type OrganizationBucketConfigMapInput interface {
	pulumi.Input

	ToOrganizationBucketConfigMapOutput() OrganizationBucketConfigMapOutput
	ToOrganizationBucketConfigMapOutputWithContext(context.Context) OrganizationBucketConfigMapOutput
}

OrganizationBucketConfigMapInput is an input type that accepts OrganizationBucketConfigMap and OrganizationBucketConfigMapOutput values. You can construct a concrete instance of `OrganizationBucketConfigMapInput` via:

OrganizationBucketConfigMap{ "key": OrganizationBucketConfigArgs{...} }

type OrganizationBucketConfigMapOutput added in v4.11.1

type OrganizationBucketConfigMapOutput struct{ *pulumi.OutputState }

func (OrganizationBucketConfigMapOutput) ElementType added in v4.11.1

func (OrganizationBucketConfigMapOutput) MapIndex added in v4.11.1

func (OrganizationBucketConfigMapOutput) ToOrganizationBucketConfigMapOutput added in v4.11.1

func (o OrganizationBucketConfigMapOutput) ToOrganizationBucketConfigMapOutput() OrganizationBucketConfigMapOutput

func (OrganizationBucketConfigMapOutput) ToOrganizationBucketConfigMapOutputWithContext added in v4.11.1

func (o OrganizationBucketConfigMapOutput) ToOrganizationBucketConfigMapOutputWithContext(ctx context.Context) OrganizationBucketConfigMapOutput

type OrganizationBucketConfigOutput added in v4.4.0

type OrganizationBucketConfigOutput struct {
	*pulumi.OutputState
}

func (OrganizationBucketConfigOutput) ElementType added in v4.4.0

func (OrganizationBucketConfigOutput) ToOrganizationBucketConfigOutput added in v4.4.0

func (o OrganizationBucketConfigOutput) ToOrganizationBucketConfigOutput() OrganizationBucketConfigOutput

func (OrganizationBucketConfigOutput) ToOrganizationBucketConfigOutputWithContext added in v4.4.0

func (o OrganizationBucketConfigOutput) ToOrganizationBucketConfigOutputWithContext(ctx context.Context) OrganizationBucketConfigOutput

func (OrganizationBucketConfigOutput) ToOrganizationBucketConfigPtrOutput added in v4.11.1

func (o OrganizationBucketConfigOutput) ToOrganizationBucketConfigPtrOutput() OrganizationBucketConfigPtrOutput

func (OrganizationBucketConfigOutput) ToOrganizationBucketConfigPtrOutputWithContext added in v4.11.1

func (o OrganizationBucketConfigOutput) ToOrganizationBucketConfigPtrOutputWithContext(ctx context.Context) OrganizationBucketConfigPtrOutput

type OrganizationBucketConfigPtrInput added in v4.11.1

type OrganizationBucketConfigPtrInput interface {
	pulumi.Input

	ToOrganizationBucketConfigPtrOutput() OrganizationBucketConfigPtrOutput
	ToOrganizationBucketConfigPtrOutputWithContext(ctx context.Context) OrganizationBucketConfigPtrOutput
}

type OrganizationBucketConfigPtrOutput added in v4.11.1

type OrganizationBucketConfigPtrOutput struct {
	*pulumi.OutputState
}

func (OrganizationBucketConfigPtrOutput) ElementType added in v4.11.1

func (OrganizationBucketConfigPtrOutput) ToOrganizationBucketConfigPtrOutput added in v4.11.1

func (o OrganizationBucketConfigPtrOutput) ToOrganizationBucketConfigPtrOutput() OrganizationBucketConfigPtrOutput

func (OrganizationBucketConfigPtrOutput) ToOrganizationBucketConfigPtrOutputWithContext added in v4.11.1

func (o OrganizationBucketConfigPtrOutput) ToOrganizationBucketConfigPtrOutputWithContext(ctx context.Context) OrganizationBucketConfigPtrOutput

type OrganizationBucketConfigState

type OrganizationBucketConfigState struct {
	// The name of the logging bucket. Logging automatically creates two log buckets: `_Required` and `_Default`.
	BucketId pulumi.StringPtrInput
	// Describes this bucket.
	Description pulumi.StringPtrInput
	// The bucket's lifecycle such as active or deleted. See [LifecycleState](https://cloud.google.com/logging/docs/reference/v2/rest/v2/billingAccounts.buckets#LogBucket.LifecycleState).
	LifecycleState pulumi.StringPtrInput
	// The location of the bucket. The supported locations are: "global" "us-central1"
	Location pulumi.StringPtrInput
	// The resource name of the bucket. For example: "organizations/my-organization-id/locations/my-location/buckets/my-bucket-id"
	Name pulumi.StringPtrInput
	// The parent resource that contains the logging bucket.
	Organization pulumi.StringPtrInput
	// Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used. Bucket retention can not be increased on buckets outside of projects.
	RetentionDays pulumi.IntPtrInput
}

func (OrganizationBucketConfigState) ElementType

type OrganizationExclusion

type OrganizationExclusion struct {
	pulumi.CustomResourceState

	// A human-readable description.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Whether this exclusion rule should be disabled or not. This defaults to
	// false.
	Disabled pulumi.BoolPtrOutput `pulumi:"disabled"`
	// The filter to apply when excluding logs. Only log entries that match the filter are excluded.
	// See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced-filters) for information on how to
	// write a filter.
	Filter pulumi.StringOutput `pulumi:"filter"`
	// The name of the logging exclusion.
	Name pulumi.StringOutput `pulumi:"name"`
	// The organization to create the exclusion in.
	OrgId pulumi.StringOutput `pulumi:"orgId"`
}

Manages an organization-level logging exclusion. For more information see:

* [API documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/organizations.exclusions) * How-to Guides

> You can specify exclusions for log sinks created by the provider by using the exclusions field of `logging.OrganizationSink`

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/logging"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := logging.NewOrganizationExclusion(ctx, "my_exclusion", &logging.OrganizationExclusionArgs{
			Description: pulumi.String("Exclude GCE instance debug logs"),
			Filter:      pulumi.String("resource.type = gce_instance AND severity <= DEBUG"),
			OrgId:       pulumi.String("123456789"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Organization-level logging exclusions can be imported using their URI, e.g.

```sh

$ pulumi import gcp:logging/organizationExclusion:OrganizationExclusion my_exclusion organizations/{{organization}}/exclusions/{{name}}

```

func GetOrganizationExclusion

func GetOrganizationExclusion(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *OrganizationExclusionState, opts ...pulumi.ResourceOption) (*OrganizationExclusion, error)

GetOrganizationExclusion gets an existing OrganizationExclusion resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewOrganizationExclusion

func NewOrganizationExclusion(ctx *pulumi.Context,
	name string, args *OrganizationExclusionArgs, opts ...pulumi.ResourceOption) (*OrganizationExclusion, error)

NewOrganizationExclusion registers a new resource with the given unique name, arguments, and options.

func (*OrganizationExclusion) ElementType added in v4.4.0

func (*OrganizationExclusion) ElementType() reflect.Type

func (*OrganizationExclusion) ToOrganizationExclusionOutput added in v4.4.0

func (i *OrganizationExclusion) ToOrganizationExclusionOutput() OrganizationExclusionOutput

func (*OrganizationExclusion) ToOrganizationExclusionOutputWithContext added in v4.4.0

func (i *OrganizationExclusion) ToOrganizationExclusionOutputWithContext(ctx context.Context) OrganizationExclusionOutput

func (*OrganizationExclusion) ToOrganizationExclusionPtrOutput added in v4.11.1

func (i *OrganizationExclusion) ToOrganizationExclusionPtrOutput() OrganizationExclusionPtrOutput

func (*OrganizationExclusion) ToOrganizationExclusionPtrOutputWithContext added in v4.11.1

func (i *OrganizationExclusion) ToOrganizationExclusionPtrOutputWithContext(ctx context.Context) OrganizationExclusionPtrOutput

type OrganizationExclusionArgs

type OrganizationExclusionArgs struct {
	// A human-readable description.
	Description pulumi.StringPtrInput
	// Whether this exclusion rule should be disabled or not. This defaults to
	// false.
	Disabled pulumi.BoolPtrInput
	// The filter to apply when excluding logs. Only log entries that match the filter are excluded.
	// See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced-filters) for information on how to
	// write a filter.
	Filter pulumi.StringInput
	// The name of the logging exclusion.
	Name pulumi.StringPtrInput
	// The organization to create the exclusion in.
	OrgId pulumi.StringInput
}

The set of arguments for constructing a OrganizationExclusion resource.

func (OrganizationExclusionArgs) ElementType

func (OrganizationExclusionArgs) ElementType() reflect.Type

type OrganizationExclusionArray added in v4.11.1

type OrganizationExclusionArray []OrganizationExclusionInput

func (OrganizationExclusionArray) ElementType added in v4.11.1

func (OrganizationExclusionArray) ElementType() reflect.Type

func (OrganizationExclusionArray) ToOrganizationExclusionArrayOutput added in v4.11.1

func (i OrganizationExclusionArray) ToOrganizationExclusionArrayOutput() OrganizationExclusionArrayOutput

func (OrganizationExclusionArray) ToOrganizationExclusionArrayOutputWithContext added in v4.11.1

func (i OrganizationExclusionArray) ToOrganizationExclusionArrayOutputWithContext(ctx context.Context) OrganizationExclusionArrayOutput

type OrganizationExclusionArrayInput added in v4.11.1

type OrganizationExclusionArrayInput interface {
	pulumi.Input

	ToOrganizationExclusionArrayOutput() OrganizationExclusionArrayOutput
	ToOrganizationExclusionArrayOutputWithContext(context.Context) OrganizationExclusionArrayOutput
}

OrganizationExclusionArrayInput is an input type that accepts OrganizationExclusionArray and OrganizationExclusionArrayOutput values. You can construct a concrete instance of `OrganizationExclusionArrayInput` via:

OrganizationExclusionArray{ OrganizationExclusionArgs{...} }

type OrganizationExclusionArrayOutput added in v4.11.1

type OrganizationExclusionArrayOutput struct{ *pulumi.OutputState }

func (OrganizationExclusionArrayOutput) ElementType added in v4.11.1

func (OrganizationExclusionArrayOutput) Index added in v4.11.1

func (OrganizationExclusionArrayOutput) ToOrganizationExclusionArrayOutput added in v4.11.1

func (o OrganizationExclusionArrayOutput) ToOrganizationExclusionArrayOutput() OrganizationExclusionArrayOutput

func (OrganizationExclusionArrayOutput) ToOrganizationExclusionArrayOutputWithContext added in v4.11.1

func (o OrganizationExclusionArrayOutput) ToOrganizationExclusionArrayOutputWithContext(ctx context.Context) OrganizationExclusionArrayOutput

type OrganizationExclusionInput added in v4.4.0

type OrganizationExclusionInput interface {
	pulumi.Input

	ToOrganizationExclusionOutput() OrganizationExclusionOutput
	ToOrganizationExclusionOutputWithContext(ctx context.Context) OrganizationExclusionOutput
}

type OrganizationExclusionMap added in v4.11.1

type OrganizationExclusionMap map[string]OrganizationExclusionInput

func (OrganizationExclusionMap) ElementType added in v4.11.1

func (OrganizationExclusionMap) ElementType() reflect.Type

func (OrganizationExclusionMap) ToOrganizationExclusionMapOutput added in v4.11.1

func (i OrganizationExclusionMap) ToOrganizationExclusionMapOutput() OrganizationExclusionMapOutput

func (OrganizationExclusionMap) ToOrganizationExclusionMapOutputWithContext added in v4.11.1

func (i OrganizationExclusionMap) ToOrganizationExclusionMapOutputWithContext(ctx context.Context) OrganizationExclusionMapOutput

type OrganizationExclusionMapInput added in v4.11.1

type OrganizationExclusionMapInput interface {
	pulumi.Input

	ToOrganizationExclusionMapOutput() OrganizationExclusionMapOutput
	ToOrganizationExclusionMapOutputWithContext(context.Context) OrganizationExclusionMapOutput
}

OrganizationExclusionMapInput is an input type that accepts OrganizationExclusionMap and OrganizationExclusionMapOutput values. You can construct a concrete instance of `OrganizationExclusionMapInput` via:

OrganizationExclusionMap{ "key": OrganizationExclusionArgs{...} }

type OrganizationExclusionMapOutput added in v4.11.1

type OrganizationExclusionMapOutput struct{ *pulumi.OutputState }

func (OrganizationExclusionMapOutput) ElementType added in v4.11.1

func (OrganizationExclusionMapOutput) MapIndex added in v4.11.1

func (OrganizationExclusionMapOutput) ToOrganizationExclusionMapOutput added in v4.11.1

func (o OrganizationExclusionMapOutput) ToOrganizationExclusionMapOutput() OrganizationExclusionMapOutput

func (OrganizationExclusionMapOutput) ToOrganizationExclusionMapOutputWithContext added in v4.11.1

func (o OrganizationExclusionMapOutput) ToOrganizationExclusionMapOutputWithContext(ctx context.Context) OrganizationExclusionMapOutput

type OrganizationExclusionOutput added in v4.4.0

type OrganizationExclusionOutput struct {
	*pulumi.OutputState
}

func (OrganizationExclusionOutput) ElementType added in v4.4.0

func (OrganizationExclusionOutput) ToOrganizationExclusionOutput added in v4.4.0

func (o OrganizationExclusionOutput) ToOrganizationExclusionOutput() OrganizationExclusionOutput

func (OrganizationExclusionOutput) ToOrganizationExclusionOutputWithContext added in v4.4.0

func (o OrganizationExclusionOutput) ToOrganizationExclusionOutputWithContext(ctx context.Context) OrganizationExclusionOutput

func (OrganizationExclusionOutput) ToOrganizationExclusionPtrOutput added in v4.11.1

func (o OrganizationExclusionOutput) ToOrganizationExclusionPtrOutput() OrganizationExclusionPtrOutput

func (OrganizationExclusionOutput) ToOrganizationExclusionPtrOutputWithContext added in v4.11.1

func (o OrganizationExclusionOutput) ToOrganizationExclusionPtrOutputWithContext(ctx context.Context) OrganizationExclusionPtrOutput

type OrganizationExclusionPtrInput added in v4.11.1

type OrganizationExclusionPtrInput interface {
	pulumi.Input

	ToOrganizationExclusionPtrOutput() OrganizationExclusionPtrOutput
	ToOrganizationExclusionPtrOutputWithContext(ctx context.Context) OrganizationExclusionPtrOutput
}

type OrganizationExclusionPtrOutput added in v4.11.1

type OrganizationExclusionPtrOutput struct {
	*pulumi.OutputState
}

func (OrganizationExclusionPtrOutput) ElementType added in v4.11.1

func (OrganizationExclusionPtrOutput) ToOrganizationExclusionPtrOutput added in v4.11.1

func (o OrganizationExclusionPtrOutput) ToOrganizationExclusionPtrOutput() OrganizationExclusionPtrOutput

func (OrganizationExclusionPtrOutput) ToOrganizationExclusionPtrOutputWithContext added in v4.11.1

func (o OrganizationExclusionPtrOutput) ToOrganizationExclusionPtrOutputWithContext(ctx context.Context) OrganizationExclusionPtrOutput

type OrganizationExclusionState

type OrganizationExclusionState struct {
	// A human-readable description.
	Description pulumi.StringPtrInput
	// Whether this exclusion rule should be disabled or not. This defaults to
	// false.
	Disabled pulumi.BoolPtrInput
	// The filter to apply when excluding logs. Only log entries that match the filter are excluded.
	// See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced-filters) for information on how to
	// write a filter.
	Filter pulumi.StringPtrInput
	// The name of the logging exclusion.
	Name pulumi.StringPtrInput
	// The organization to create the exclusion in.
	OrgId pulumi.StringPtrInput
}

func (OrganizationExclusionState) ElementType

func (OrganizationExclusionState) ElementType() reflect.Type

type OrganizationSink

type OrganizationSink struct {
	pulumi.CustomResourceState

	// Options that affect sinks exporting data to BigQuery. Structure documented below.
	BigqueryOptions OrganizationSinkBigqueryOptionsOutput `pulumi:"bigqueryOptions"`
	// A description of this exclusion.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The destination of the sink (or, in other words, where logs are written to). Can be a
	// Cloud Storage bucket, a PubSub topic, a BigQuery dataset or a Cloud Logging bucket. Examples:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		return nil
	// 	})
	// }
	// “`
	// The writer associated with the sink must have access to write to the above resource.
	Destination pulumi.StringOutput `pulumi:"destination"`
	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled pulumi.BoolPtrOutput `pulumi:"disabled"`
	// Log entries that match any of the exclusion filters will not be exported. If a log entry is matched by both filter and one of exclusionFilters it will not be exported.  Can be repeated multiple times for multiple exclusions. Structure is documented below.
	Exclusions OrganizationSinkExclusionArrayOutput `pulumi:"exclusions"`
	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to
	// write a filter.
	Filter pulumi.StringPtrOutput `pulumi:"filter"`
	// Whether or not to include children organizations in the sink export. If true, logs
	// associated with child projects are also exported; otherwise only logs relating to the provided organization are included.
	IncludeChildren pulumi.BoolPtrOutput `pulumi:"includeChildren"`
	// A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name pulumi.StringOutput `pulumi:"name"`
	// The numeric ID of the organization to be exported to the sink.
	OrgId pulumi.StringOutput `pulumi:"orgId"`
	// The identity associated with this sink. This identity must be granted write access to the
	// configured `destination`.
	WriterIdentity pulumi.StringOutput `pulumi:"writerIdentity"`
}

Manages a organization-level logging sink. For more information see: * [API documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/organizations.sinks) * How-to Guides

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/logging"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/projects"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/storage"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := storage.NewBucket(ctx, "log_bucket", nil)
		if err != nil {
			return err
		}
		_, err = logging.NewOrganizationSink(ctx, "my_sink", &logging.OrganizationSinkArgs{
			Description: pulumi.String("some explaination on what this is"),
			OrgId:       pulumi.String("123456789"),
			Destination: log_bucket.Name.ApplyT(func(name string) (string, error) {
				return fmt.Sprintf("%v%v", "storage.googleapis.com/", name), nil
			}).(pulumi.StringOutput),
			Filter: pulumi.String("resource.type = gce_instance AND severity >= WARNING"),
		})
		if err != nil {
			return err
		}
		_, err = projects.NewIAMMember(ctx, "log_writer", &projects.IAMMemberArgs{
			Role:   pulumi.String("roles/storage.objectCreator"),
			Member: my_sink.WriterIdentity,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Organization-level logging sinks can be imported using this format

```sh

$ pulumi import gcp:logging/organizationSink:OrganizationSink my_sink organizations/{{organization_id}}/sinks/{{sink_id}}

```

func GetOrganizationSink

func GetOrganizationSink(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *OrganizationSinkState, opts ...pulumi.ResourceOption) (*OrganizationSink, error)

GetOrganizationSink gets an existing OrganizationSink resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewOrganizationSink

func NewOrganizationSink(ctx *pulumi.Context,
	name string, args *OrganizationSinkArgs, opts ...pulumi.ResourceOption) (*OrganizationSink, error)

NewOrganizationSink registers a new resource with the given unique name, arguments, and options.

func (*OrganizationSink) ElementType added in v4.4.0

func (*OrganizationSink) ElementType() reflect.Type

func (*OrganizationSink) ToOrganizationSinkOutput added in v4.4.0

func (i *OrganizationSink) ToOrganizationSinkOutput() OrganizationSinkOutput

func (*OrganizationSink) ToOrganizationSinkOutputWithContext added in v4.4.0

func (i *OrganizationSink) ToOrganizationSinkOutputWithContext(ctx context.Context) OrganizationSinkOutput

func (*OrganizationSink) ToOrganizationSinkPtrOutput added in v4.11.1

func (i *OrganizationSink) ToOrganizationSinkPtrOutput() OrganizationSinkPtrOutput

func (*OrganizationSink) ToOrganizationSinkPtrOutputWithContext added in v4.11.1

func (i *OrganizationSink) ToOrganizationSinkPtrOutputWithContext(ctx context.Context) OrganizationSinkPtrOutput

type OrganizationSinkArgs

type OrganizationSinkArgs struct {
	// Options that affect sinks exporting data to BigQuery. Structure documented below.
	BigqueryOptions OrganizationSinkBigqueryOptionsPtrInput
	// A description of this exclusion.
	Description pulumi.StringPtrInput
	// The destination of the sink (or, in other words, where logs are written to). Can be a
	// Cloud Storage bucket, a PubSub topic, a BigQuery dataset or a Cloud Logging bucket. Examples:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		return nil
	// 	})
	// }
	// “`
	// The writer associated with the sink must have access to write to the above resource.
	Destination pulumi.StringInput
	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled pulumi.BoolPtrInput
	// Log entries that match any of the exclusion filters will not be exported. If a log entry is matched by both filter and one of exclusionFilters it will not be exported.  Can be repeated multiple times for multiple exclusions. Structure is documented below.
	Exclusions OrganizationSinkExclusionArrayInput
	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to
	// write a filter.
	Filter pulumi.StringPtrInput
	// Whether or not to include children organizations in the sink export. If true, logs
	// associated with child projects are also exported; otherwise only logs relating to the provided organization are included.
	IncludeChildren pulumi.BoolPtrInput
	// A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name pulumi.StringPtrInput
	// The numeric ID of the organization to be exported to the sink.
	OrgId pulumi.StringInput
}

The set of arguments for constructing a OrganizationSink resource.

func (OrganizationSinkArgs) ElementType

func (OrganizationSinkArgs) ElementType() reflect.Type

type OrganizationSinkArray added in v4.11.1

type OrganizationSinkArray []OrganizationSinkInput

func (OrganizationSinkArray) ElementType added in v4.11.1

func (OrganizationSinkArray) ElementType() reflect.Type

func (OrganizationSinkArray) ToOrganizationSinkArrayOutput added in v4.11.1

func (i OrganizationSinkArray) ToOrganizationSinkArrayOutput() OrganizationSinkArrayOutput

func (OrganizationSinkArray) ToOrganizationSinkArrayOutputWithContext added in v4.11.1

func (i OrganizationSinkArray) ToOrganizationSinkArrayOutputWithContext(ctx context.Context) OrganizationSinkArrayOutput

type OrganizationSinkArrayInput added in v4.11.1

type OrganizationSinkArrayInput interface {
	pulumi.Input

	ToOrganizationSinkArrayOutput() OrganizationSinkArrayOutput
	ToOrganizationSinkArrayOutputWithContext(context.Context) OrganizationSinkArrayOutput
}

OrganizationSinkArrayInput is an input type that accepts OrganizationSinkArray and OrganizationSinkArrayOutput values. You can construct a concrete instance of `OrganizationSinkArrayInput` via:

OrganizationSinkArray{ OrganizationSinkArgs{...} }

type OrganizationSinkArrayOutput added in v4.11.1

type OrganizationSinkArrayOutput struct{ *pulumi.OutputState }

func (OrganizationSinkArrayOutput) ElementType added in v4.11.1

func (OrganizationSinkArrayOutput) Index added in v4.11.1

func (OrganizationSinkArrayOutput) ToOrganizationSinkArrayOutput added in v4.11.1

func (o OrganizationSinkArrayOutput) ToOrganizationSinkArrayOutput() OrganizationSinkArrayOutput

func (OrganizationSinkArrayOutput) ToOrganizationSinkArrayOutputWithContext added in v4.11.1

func (o OrganizationSinkArrayOutput) ToOrganizationSinkArrayOutputWithContext(ctx context.Context) OrganizationSinkArrayOutput

type OrganizationSinkBigqueryOptions

type OrganizationSinkBigqueryOptions struct {
	// Whether to use [BigQuery's partition tables](https://cloud.google.com/bigquery/docs/partitioned-tables).
	// By default, Logging creates dated tables based on the log entries' timestamps, e.g. syslog_20170523. With partitioned
	// tables the date suffix is no longer present and [special query syntax](https://cloud.google.com/bigquery/docs/querying-partitioned-tables)
	// has to be used instead. In both cases, tables are sharded based on UTC timezone.
	UsePartitionedTables bool `pulumi:"usePartitionedTables"`
}

type OrganizationSinkBigqueryOptionsArgs

type OrganizationSinkBigqueryOptionsArgs struct {
	// Whether to use [BigQuery's partition tables](https://cloud.google.com/bigquery/docs/partitioned-tables).
	// By default, Logging creates dated tables based on the log entries' timestamps, e.g. syslog_20170523. With partitioned
	// tables the date suffix is no longer present and [special query syntax](https://cloud.google.com/bigquery/docs/querying-partitioned-tables)
	// has to be used instead. In both cases, tables are sharded based on UTC timezone.
	UsePartitionedTables pulumi.BoolInput `pulumi:"usePartitionedTables"`
}

func (OrganizationSinkBigqueryOptionsArgs) ElementType

func (OrganizationSinkBigqueryOptionsArgs) ToOrganizationSinkBigqueryOptionsOutput

func (i OrganizationSinkBigqueryOptionsArgs) ToOrganizationSinkBigqueryOptionsOutput() OrganizationSinkBigqueryOptionsOutput

func (OrganizationSinkBigqueryOptionsArgs) ToOrganizationSinkBigqueryOptionsOutputWithContext

func (i OrganizationSinkBigqueryOptionsArgs) ToOrganizationSinkBigqueryOptionsOutputWithContext(ctx context.Context) OrganizationSinkBigqueryOptionsOutput

func (OrganizationSinkBigqueryOptionsArgs) ToOrganizationSinkBigqueryOptionsPtrOutput

func (i OrganizationSinkBigqueryOptionsArgs) ToOrganizationSinkBigqueryOptionsPtrOutput() OrganizationSinkBigqueryOptionsPtrOutput

func (OrganizationSinkBigqueryOptionsArgs) ToOrganizationSinkBigqueryOptionsPtrOutputWithContext

func (i OrganizationSinkBigqueryOptionsArgs) ToOrganizationSinkBigqueryOptionsPtrOutputWithContext(ctx context.Context) OrganizationSinkBigqueryOptionsPtrOutput

type OrganizationSinkBigqueryOptionsInput

type OrganizationSinkBigqueryOptionsInput interface {
	pulumi.Input

	ToOrganizationSinkBigqueryOptionsOutput() OrganizationSinkBigqueryOptionsOutput
	ToOrganizationSinkBigqueryOptionsOutputWithContext(context.Context) OrganizationSinkBigqueryOptionsOutput
}

OrganizationSinkBigqueryOptionsInput is an input type that accepts OrganizationSinkBigqueryOptionsArgs and OrganizationSinkBigqueryOptionsOutput values. You can construct a concrete instance of `OrganizationSinkBigqueryOptionsInput` via:

OrganizationSinkBigqueryOptionsArgs{...}

type OrganizationSinkBigqueryOptionsOutput

type OrganizationSinkBigqueryOptionsOutput struct{ *pulumi.OutputState }

func (OrganizationSinkBigqueryOptionsOutput) ElementType

func (OrganizationSinkBigqueryOptionsOutput) ToOrganizationSinkBigqueryOptionsOutput

func (o OrganizationSinkBigqueryOptionsOutput) ToOrganizationSinkBigqueryOptionsOutput() OrganizationSinkBigqueryOptionsOutput

func (OrganizationSinkBigqueryOptionsOutput) ToOrganizationSinkBigqueryOptionsOutputWithContext

func (o OrganizationSinkBigqueryOptionsOutput) ToOrganizationSinkBigqueryOptionsOutputWithContext(ctx context.Context) OrganizationSinkBigqueryOptionsOutput

func (OrganizationSinkBigqueryOptionsOutput) ToOrganizationSinkBigqueryOptionsPtrOutput

func (o OrganizationSinkBigqueryOptionsOutput) ToOrganizationSinkBigqueryOptionsPtrOutput() OrganizationSinkBigqueryOptionsPtrOutput

func (OrganizationSinkBigqueryOptionsOutput) ToOrganizationSinkBigqueryOptionsPtrOutputWithContext

func (o OrganizationSinkBigqueryOptionsOutput) ToOrganizationSinkBigqueryOptionsPtrOutputWithContext(ctx context.Context) OrganizationSinkBigqueryOptionsPtrOutput

func (OrganizationSinkBigqueryOptionsOutput) UsePartitionedTables

func (o OrganizationSinkBigqueryOptionsOutput) UsePartitionedTables() pulumi.BoolOutput

Whether to use [BigQuery's partition tables](https://cloud.google.com/bigquery/docs/partitioned-tables). By default, Logging creates dated tables based on the log entries' timestamps, e.g. syslog_20170523. With partitioned tables the date suffix is no longer present and [special query syntax](https://cloud.google.com/bigquery/docs/querying-partitioned-tables) has to be used instead. In both cases, tables are sharded based on UTC timezone.

type OrganizationSinkBigqueryOptionsPtrInput

type OrganizationSinkBigqueryOptionsPtrInput interface {
	pulumi.Input

	ToOrganizationSinkBigqueryOptionsPtrOutput() OrganizationSinkBigqueryOptionsPtrOutput
	ToOrganizationSinkBigqueryOptionsPtrOutputWithContext(context.Context) OrganizationSinkBigqueryOptionsPtrOutput
}

OrganizationSinkBigqueryOptionsPtrInput is an input type that accepts OrganizationSinkBigqueryOptionsArgs, OrganizationSinkBigqueryOptionsPtr and OrganizationSinkBigqueryOptionsPtrOutput values. You can construct a concrete instance of `OrganizationSinkBigqueryOptionsPtrInput` via:

        OrganizationSinkBigqueryOptionsArgs{...}

or:

        nil

type OrganizationSinkBigqueryOptionsPtrOutput

type OrganizationSinkBigqueryOptionsPtrOutput struct{ *pulumi.OutputState }

func (OrganizationSinkBigqueryOptionsPtrOutput) Elem

func (OrganizationSinkBigqueryOptionsPtrOutput) ElementType

func (OrganizationSinkBigqueryOptionsPtrOutput) ToOrganizationSinkBigqueryOptionsPtrOutput

func (o OrganizationSinkBigqueryOptionsPtrOutput) ToOrganizationSinkBigqueryOptionsPtrOutput() OrganizationSinkBigqueryOptionsPtrOutput

func (OrganizationSinkBigqueryOptionsPtrOutput) ToOrganizationSinkBigqueryOptionsPtrOutputWithContext

func (o OrganizationSinkBigqueryOptionsPtrOutput) ToOrganizationSinkBigqueryOptionsPtrOutputWithContext(ctx context.Context) OrganizationSinkBigqueryOptionsPtrOutput

func (OrganizationSinkBigqueryOptionsPtrOutput) UsePartitionedTables

Whether to use [BigQuery's partition tables](https://cloud.google.com/bigquery/docs/partitioned-tables). By default, Logging creates dated tables based on the log entries' timestamps, e.g. syslog_20170523. With partitioned tables the date suffix is no longer present and [special query syntax](https://cloud.google.com/bigquery/docs/querying-partitioned-tables) has to be used instead. In both cases, tables are sharded based on UTC timezone.

type OrganizationSinkExclusion

type OrganizationSinkExclusion struct {
	// A description of this exclusion.
	Description *string `pulumi:"description"`
	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled *bool `pulumi:"disabled"`
	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to
	// write a filter.
	Filter string `pulumi:"filter"`
	// A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name string `pulumi:"name"`
}

type OrganizationSinkExclusionArgs

type OrganizationSinkExclusionArgs struct {
	// A description of this exclusion.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled pulumi.BoolPtrInput `pulumi:"disabled"`
	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to
	// write a filter.
	Filter pulumi.StringInput `pulumi:"filter"`
	// A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name pulumi.StringInput `pulumi:"name"`
}

func (OrganizationSinkExclusionArgs) ElementType

func (OrganizationSinkExclusionArgs) ToOrganizationSinkExclusionOutput

func (i OrganizationSinkExclusionArgs) ToOrganizationSinkExclusionOutput() OrganizationSinkExclusionOutput

func (OrganizationSinkExclusionArgs) ToOrganizationSinkExclusionOutputWithContext

func (i OrganizationSinkExclusionArgs) ToOrganizationSinkExclusionOutputWithContext(ctx context.Context) OrganizationSinkExclusionOutput

type OrganizationSinkExclusionArray

type OrganizationSinkExclusionArray []OrganizationSinkExclusionInput

func (OrganizationSinkExclusionArray) ElementType

func (OrganizationSinkExclusionArray) ToOrganizationSinkExclusionArrayOutput

func (i OrganizationSinkExclusionArray) ToOrganizationSinkExclusionArrayOutput() OrganizationSinkExclusionArrayOutput

func (OrganizationSinkExclusionArray) ToOrganizationSinkExclusionArrayOutputWithContext

func (i OrganizationSinkExclusionArray) ToOrganizationSinkExclusionArrayOutputWithContext(ctx context.Context) OrganizationSinkExclusionArrayOutput

type OrganizationSinkExclusionArrayInput

type OrganizationSinkExclusionArrayInput interface {
	pulumi.Input

	ToOrganizationSinkExclusionArrayOutput() OrganizationSinkExclusionArrayOutput
	ToOrganizationSinkExclusionArrayOutputWithContext(context.Context) OrganizationSinkExclusionArrayOutput
}

OrganizationSinkExclusionArrayInput is an input type that accepts OrganizationSinkExclusionArray and OrganizationSinkExclusionArrayOutput values. You can construct a concrete instance of `OrganizationSinkExclusionArrayInput` via:

OrganizationSinkExclusionArray{ OrganizationSinkExclusionArgs{...} }

type OrganizationSinkExclusionArrayOutput

type OrganizationSinkExclusionArrayOutput struct{ *pulumi.OutputState }

func (OrganizationSinkExclusionArrayOutput) ElementType

func (OrganizationSinkExclusionArrayOutput) Index

func (OrganizationSinkExclusionArrayOutput) ToOrganizationSinkExclusionArrayOutput

func (o OrganizationSinkExclusionArrayOutput) ToOrganizationSinkExclusionArrayOutput() OrganizationSinkExclusionArrayOutput

func (OrganizationSinkExclusionArrayOutput) ToOrganizationSinkExclusionArrayOutputWithContext

func (o OrganizationSinkExclusionArrayOutput) ToOrganizationSinkExclusionArrayOutputWithContext(ctx context.Context) OrganizationSinkExclusionArrayOutput

type OrganizationSinkExclusionInput

type OrganizationSinkExclusionInput interface {
	pulumi.Input

	ToOrganizationSinkExclusionOutput() OrganizationSinkExclusionOutput
	ToOrganizationSinkExclusionOutputWithContext(context.Context) OrganizationSinkExclusionOutput
}

OrganizationSinkExclusionInput is an input type that accepts OrganizationSinkExclusionArgs and OrganizationSinkExclusionOutput values. You can construct a concrete instance of `OrganizationSinkExclusionInput` via:

OrganizationSinkExclusionArgs{...}

type OrganizationSinkExclusionOutput

type OrganizationSinkExclusionOutput struct{ *pulumi.OutputState }

func (OrganizationSinkExclusionOutput) Description

A description of this exclusion.

func (OrganizationSinkExclusionOutput) Disabled

If set to True, then this exclusion is disabled and it does not exclude any log entries.

func (OrganizationSinkExclusionOutput) ElementType

func (OrganizationSinkExclusionOutput) Filter

An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to write a filter.

func (OrganizationSinkExclusionOutput) Name

A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.

func (OrganizationSinkExclusionOutput) ToOrganizationSinkExclusionOutput

func (o OrganizationSinkExclusionOutput) ToOrganizationSinkExclusionOutput() OrganizationSinkExclusionOutput

func (OrganizationSinkExclusionOutput) ToOrganizationSinkExclusionOutputWithContext

func (o OrganizationSinkExclusionOutput) ToOrganizationSinkExclusionOutputWithContext(ctx context.Context) OrganizationSinkExclusionOutput

type OrganizationSinkInput added in v4.4.0

type OrganizationSinkInput interface {
	pulumi.Input

	ToOrganizationSinkOutput() OrganizationSinkOutput
	ToOrganizationSinkOutputWithContext(ctx context.Context) OrganizationSinkOutput
}

type OrganizationSinkMap added in v4.11.1

type OrganizationSinkMap map[string]OrganizationSinkInput

func (OrganizationSinkMap) ElementType added in v4.11.1

func (OrganizationSinkMap) ElementType() reflect.Type

func (OrganizationSinkMap) ToOrganizationSinkMapOutput added in v4.11.1

func (i OrganizationSinkMap) ToOrganizationSinkMapOutput() OrganizationSinkMapOutput

func (OrganizationSinkMap) ToOrganizationSinkMapOutputWithContext added in v4.11.1

func (i OrganizationSinkMap) ToOrganizationSinkMapOutputWithContext(ctx context.Context) OrganizationSinkMapOutput

type OrganizationSinkMapInput added in v4.11.1

type OrganizationSinkMapInput interface {
	pulumi.Input

	ToOrganizationSinkMapOutput() OrganizationSinkMapOutput
	ToOrganizationSinkMapOutputWithContext(context.Context) OrganizationSinkMapOutput
}

OrganizationSinkMapInput is an input type that accepts OrganizationSinkMap and OrganizationSinkMapOutput values. You can construct a concrete instance of `OrganizationSinkMapInput` via:

OrganizationSinkMap{ "key": OrganizationSinkArgs{...} }

type OrganizationSinkMapOutput added in v4.11.1

type OrganizationSinkMapOutput struct{ *pulumi.OutputState }

func (OrganizationSinkMapOutput) ElementType added in v4.11.1

func (OrganizationSinkMapOutput) ElementType() reflect.Type

func (OrganizationSinkMapOutput) MapIndex added in v4.11.1

func (OrganizationSinkMapOutput) ToOrganizationSinkMapOutput added in v4.11.1

func (o OrganizationSinkMapOutput) ToOrganizationSinkMapOutput() OrganizationSinkMapOutput

func (OrganizationSinkMapOutput) ToOrganizationSinkMapOutputWithContext added in v4.11.1

func (o OrganizationSinkMapOutput) ToOrganizationSinkMapOutputWithContext(ctx context.Context) OrganizationSinkMapOutput

type OrganizationSinkOutput added in v4.4.0

type OrganizationSinkOutput struct {
	*pulumi.OutputState
}

func (OrganizationSinkOutput) ElementType added in v4.4.0

func (OrganizationSinkOutput) ElementType() reflect.Type

func (OrganizationSinkOutput) ToOrganizationSinkOutput added in v4.4.0

func (o OrganizationSinkOutput) ToOrganizationSinkOutput() OrganizationSinkOutput

func (OrganizationSinkOutput) ToOrganizationSinkOutputWithContext added in v4.4.0

func (o OrganizationSinkOutput) ToOrganizationSinkOutputWithContext(ctx context.Context) OrganizationSinkOutput

func (OrganizationSinkOutput) ToOrganizationSinkPtrOutput added in v4.11.1

func (o OrganizationSinkOutput) ToOrganizationSinkPtrOutput() OrganizationSinkPtrOutput

func (OrganizationSinkOutput) ToOrganizationSinkPtrOutputWithContext added in v4.11.1

func (o OrganizationSinkOutput) ToOrganizationSinkPtrOutputWithContext(ctx context.Context) OrganizationSinkPtrOutput

type OrganizationSinkPtrInput added in v4.11.1

type OrganizationSinkPtrInput interface {
	pulumi.Input

	ToOrganizationSinkPtrOutput() OrganizationSinkPtrOutput
	ToOrganizationSinkPtrOutputWithContext(ctx context.Context) OrganizationSinkPtrOutput
}

type OrganizationSinkPtrOutput added in v4.11.1

type OrganizationSinkPtrOutput struct {
	*pulumi.OutputState
}

func (OrganizationSinkPtrOutput) ElementType added in v4.11.1

func (OrganizationSinkPtrOutput) ElementType() reflect.Type

func (OrganizationSinkPtrOutput) ToOrganizationSinkPtrOutput added in v4.11.1

func (o OrganizationSinkPtrOutput) ToOrganizationSinkPtrOutput() OrganizationSinkPtrOutput

func (OrganizationSinkPtrOutput) ToOrganizationSinkPtrOutputWithContext added in v4.11.1

func (o OrganizationSinkPtrOutput) ToOrganizationSinkPtrOutputWithContext(ctx context.Context) OrganizationSinkPtrOutput

type OrganizationSinkState

type OrganizationSinkState struct {
	// Options that affect sinks exporting data to BigQuery. Structure documented below.
	BigqueryOptions OrganizationSinkBigqueryOptionsPtrInput
	// A description of this exclusion.
	Description pulumi.StringPtrInput
	// The destination of the sink (or, in other words, where logs are written to). Can be a
	// Cloud Storage bucket, a PubSub topic, a BigQuery dataset or a Cloud Logging bucket. Examples:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		return nil
	// 	})
	// }
	// “`
	// The writer associated with the sink must have access to write to the above resource.
	Destination pulumi.StringPtrInput
	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled pulumi.BoolPtrInput
	// Log entries that match any of the exclusion filters will not be exported. If a log entry is matched by both filter and one of exclusionFilters it will not be exported.  Can be repeated multiple times for multiple exclusions. Structure is documented below.
	Exclusions OrganizationSinkExclusionArrayInput
	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to
	// write a filter.
	Filter pulumi.StringPtrInput
	// Whether or not to include children organizations in the sink export. If true, logs
	// associated with child projects are also exported; otherwise only logs relating to the provided organization are included.
	IncludeChildren pulumi.BoolPtrInput
	// A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name pulumi.StringPtrInput
	// The numeric ID of the organization to be exported to the sink.
	OrgId pulumi.StringPtrInput
	// The identity associated with this sink. This identity must be granted write access to the
	// configured `destination`.
	WriterIdentity pulumi.StringPtrInput
}

func (OrganizationSinkState) ElementType

func (OrganizationSinkState) ElementType() reflect.Type

type ProjectBucketConfig

type ProjectBucketConfig struct {
	pulumi.CustomResourceState

	// The name of the logging bucket. Logging automatically creates two log buckets: `_Required` and `_Default`.
	BucketId pulumi.StringOutput `pulumi:"bucketId"`
	// Describes this bucket.
	Description pulumi.StringOutput `pulumi:"description"`
	// The bucket's lifecycle such as active or deleted. See [LifecycleState](https://cloud.google.com/logging/docs/reference/v2/rest/v2/billingAccounts.buckets#LogBucket.LifecycleState).
	LifecycleState pulumi.StringOutput `pulumi:"lifecycleState"`
	// The location of the bucket.
	Location pulumi.StringOutput `pulumi:"location"`
	// The resource name of the bucket. For example: "projects/my-project-id/locations/my-location/buckets/my-bucket-id"
	Name pulumi.StringOutput `pulumi:"name"`
	// The parent resource that contains the logging bucket.
	Project pulumi.StringOutput `pulumi:"project"`
	// Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used.
	RetentionDays pulumi.IntPtrOutput `pulumi:"retentionDays"`
}

Manages a project-level logging bucket config. For more information see [the official logging documentation](https://cloud.google.com/logging/docs/) and [Storing Logs](https://cloud.google.com/logging/docs/storage).

> **Note:** Logging buckets are automatically created for a given folder, project, organization, billingAccount and cannot be deleted. Creating a resource of this type will acquire and update the resource that already exists at the desired location. These buckets cannot be removed so deleting this resource will remove the bucket config from your state but will leave the logging bucket unchanged. The buckets that are currently automatically created are "_Default" and "_Required".

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/logging"
"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := organizations.NewProject(ctx, "_default", &organizations.ProjectArgs{
			ProjectId: pulumi.String("your-project-id"),
			OrgId:     pulumi.String("123456789"),
		})
		if err != nil {
			return err
		}
		_, err = logging.NewProjectBucketConfig(ctx, "basic", &logging.ProjectBucketConfigArgs{
			Project:       _default.Name,
			Location:      pulumi.String("global"),
			RetentionDays: pulumi.Int(30),
			BucketId:      pulumi.String("_Default"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

Create logging bucket with customId

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/logging"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := logging.NewProjectBucketConfig(ctx, "basic", &logging.ProjectBucketConfigArgs{
			BucketId:      pulumi.String("custom-bucket"),
			Location:      pulumi.String("global"),
			Project:       pulumi.String("project_id"),
			RetentionDays: pulumi.Int(30),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

This resource can be imported using the following format

```sh

$ pulumi import gcp:logging/projectBucketConfig:ProjectBucketConfig default projects/{{project}}/locations/{{location}}/buckets/{{bucket_id}}

```

func GetProjectBucketConfig

func GetProjectBucketConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProjectBucketConfigState, opts ...pulumi.ResourceOption) (*ProjectBucketConfig, error)

GetProjectBucketConfig gets an existing ProjectBucketConfig resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewProjectBucketConfig

func NewProjectBucketConfig(ctx *pulumi.Context,
	name string, args *ProjectBucketConfigArgs, opts ...pulumi.ResourceOption) (*ProjectBucketConfig, error)

NewProjectBucketConfig registers a new resource with the given unique name, arguments, and options.

func (*ProjectBucketConfig) ElementType added in v4.4.0

func (*ProjectBucketConfig) ElementType() reflect.Type

func (*ProjectBucketConfig) ToProjectBucketConfigOutput added in v4.4.0

func (i *ProjectBucketConfig) ToProjectBucketConfigOutput() ProjectBucketConfigOutput

func (*ProjectBucketConfig) ToProjectBucketConfigOutputWithContext added in v4.4.0

func (i *ProjectBucketConfig) ToProjectBucketConfigOutputWithContext(ctx context.Context) ProjectBucketConfigOutput

func (*ProjectBucketConfig) ToProjectBucketConfigPtrOutput added in v4.11.1

func (i *ProjectBucketConfig) ToProjectBucketConfigPtrOutput() ProjectBucketConfigPtrOutput

func (*ProjectBucketConfig) ToProjectBucketConfigPtrOutputWithContext added in v4.11.1

func (i *ProjectBucketConfig) ToProjectBucketConfigPtrOutputWithContext(ctx context.Context) ProjectBucketConfigPtrOutput

type ProjectBucketConfigArgs

type ProjectBucketConfigArgs struct {
	// The name of the logging bucket. Logging automatically creates two log buckets: `_Required` and `_Default`.
	BucketId pulumi.StringInput
	// Describes this bucket.
	Description pulumi.StringPtrInput
	// The location of the bucket.
	Location pulumi.StringInput
	// The parent resource that contains the logging bucket.
	Project pulumi.StringInput
	// Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used.
	RetentionDays pulumi.IntPtrInput
}

The set of arguments for constructing a ProjectBucketConfig resource.

func (ProjectBucketConfigArgs) ElementType

func (ProjectBucketConfigArgs) ElementType() reflect.Type

type ProjectBucketConfigArray added in v4.11.1

type ProjectBucketConfigArray []ProjectBucketConfigInput

func (ProjectBucketConfigArray) ElementType added in v4.11.1

func (ProjectBucketConfigArray) ElementType() reflect.Type

func (ProjectBucketConfigArray) ToProjectBucketConfigArrayOutput added in v4.11.1

func (i ProjectBucketConfigArray) ToProjectBucketConfigArrayOutput() ProjectBucketConfigArrayOutput

func (ProjectBucketConfigArray) ToProjectBucketConfigArrayOutputWithContext added in v4.11.1

func (i ProjectBucketConfigArray) ToProjectBucketConfigArrayOutputWithContext(ctx context.Context) ProjectBucketConfigArrayOutput

type ProjectBucketConfigArrayInput added in v4.11.1

type ProjectBucketConfigArrayInput interface {
	pulumi.Input

	ToProjectBucketConfigArrayOutput() ProjectBucketConfigArrayOutput
	ToProjectBucketConfigArrayOutputWithContext(context.Context) ProjectBucketConfigArrayOutput
}

ProjectBucketConfigArrayInput is an input type that accepts ProjectBucketConfigArray and ProjectBucketConfigArrayOutput values. You can construct a concrete instance of `ProjectBucketConfigArrayInput` via:

ProjectBucketConfigArray{ ProjectBucketConfigArgs{...} }

type ProjectBucketConfigArrayOutput added in v4.11.1

type ProjectBucketConfigArrayOutput struct{ *pulumi.OutputState }

func (ProjectBucketConfigArrayOutput) ElementType added in v4.11.1

func (ProjectBucketConfigArrayOutput) Index added in v4.11.1

func (ProjectBucketConfigArrayOutput) ToProjectBucketConfigArrayOutput added in v4.11.1

func (o ProjectBucketConfigArrayOutput) ToProjectBucketConfigArrayOutput() ProjectBucketConfigArrayOutput

func (ProjectBucketConfigArrayOutput) ToProjectBucketConfigArrayOutputWithContext added in v4.11.1

func (o ProjectBucketConfigArrayOutput) ToProjectBucketConfigArrayOutputWithContext(ctx context.Context) ProjectBucketConfigArrayOutput

type ProjectBucketConfigInput added in v4.4.0

type ProjectBucketConfigInput interface {
	pulumi.Input

	ToProjectBucketConfigOutput() ProjectBucketConfigOutput
	ToProjectBucketConfigOutputWithContext(ctx context.Context) ProjectBucketConfigOutput
}

type ProjectBucketConfigMap added in v4.11.1

type ProjectBucketConfigMap map[string]ProjectBucketConfigInput

func (ProjectBucketConfigMap) ElementType added in v4.11.1

func (ProjectBucketConfigMap) ElementType() reflect.Type

func (ProjectBucketConfigMap) ToProjectBucketConfigMapOutput added in v4.11.1

func (i ProjectBucketConfigMap) ToProjectBucketConfigMapOutput() ProjectBucketConfigMapOutput

func (ProjectBucketConfigMap) ToProjectBucketConfigMapOutputWithContext added in v4.11.1

func (i ProjectBucketConfigMap) ToProjectBucketConfigMapOutputWithContext(ctx context.Context) ProjectBucketConfigMapOutput

type ProjectBucketConfigMapInput added in v4.11.1

type ProjectBucketConfigMapInput interface {
	pulumi.Input

	ToProjectBucketConfigMapOutput() ProjectBucketConfigMapOutput
	ToProjectBucketConfigMapOutputWithContext(context.Context) ProjectBucketConfigMapOutput
}

ProjectBucketConfigMapInput is an input type that accepts ProjectBucketConfigMap and ProjectBucketConfigMapOutput values. You can construct a concrete instance of `ProjectBucketConfigMapInput` via:

ProjectBucketConfigMap{ "key": ProjectBucketConfigArgs{...} }

type ProjectBucketConfigMapOutput added in v4.11.1

type ProjectBucketConfigMapOutput struct{ *pulumi.OutputState }

func (ProjectBucketConfigMapOutput) ElementType added in v4.11.1

func (ProjectBucketConfigMapOutput) MapIndex added in v4.11.1

func (ProjectBucketConfigMapOutput) ToProjectBucketConfigMapOutput added in v4.11.1

func (o ProjectBucketConfigMapOutput) ToProjectBucketConfigMapOutput() ProjectBucketConfigMapOutput

func (ProjectBucketConfigMapOutput) ToProjectBucketConfigMapOutputWithContext added in v4.11.1

func (o ProjectBucketConfigMapOutput) ToProjectBucketConfigMapOutputWithContext(ctx context.Context) ProjectBucketConfigMapOutput

type ProjectBucketConfigOutput added in v4.4.0

type ProjectBucketConfigOutput struct {
	*pulumi.OutputState
}

func (ProjectBucketConfigOutput) ElementType added in v4.4.0

func (ProjectBucketConfigOutput) ElementType() reflect.Type

func (ProjectBucketConfigOutput) ToProjectBucketConfigOutput added in v4.4.0

func (o ProjectBucketConfigOutput) ToProjectBucketConfigOutput() ProjectBucketConfigOutput

func (ProjectBucketConfigOutput) ToProjectBucketConfigOutputWithContext added in v4.4.0

func (o ProjectBucketConfigOutput) ToProjectBucketConfigOutputWithContext(ctx context.Context) ProjectBucketConfigOutput

func (ProjectBucketConfigOutput) ToProjectBucketConfigPtrOutput added in v4.11.1

func (o ProjectBucketConfigOutput) ToProjectBucketConfigPtrOutput() ProjectBucketConfigPtrOutput

func (ProjectBucketConfigOutput) ToProjectBucketConfigPtrOutputWithContext added in v4.11.1

func (o ProjectBucketConfigOutput) ToProjectBucketConfigPtrOutputWithContext(ctx context.Context) ProjectBucketConfigPtrOutput

type ProjectBucketConfigPtrInput added in v4.11.1

type ProjectBucketConfigPtrInput interface {
	pulumi.Input

	ToProjectBucketConfigPtrOutput() ProjectBucketConfigPtrOutput
	ToProjectBucketConfigPtrOutputWithContext(ctx context.Context) ProjectBucketConfigPtrOutput
}

type ProjectBucketConfigPtrOutput added in v4.11.1

type ProjectBucketConfigPtrOutput struct {
	*pulumi.OutputState
}

func (ProjectBucketConfigPtrOutput) ElementType added in v4.11.1

func (ProjectBucketConfigPtrOutput) ToProjectBucketConfigPtrOutput added in v4.11.1

func (o ProjectBucketConfigPtrOutput) ToProjectBucketConfigPtrOutput() ProjectBucketConfigPtrOutput

func (ProjectBucketConfigPtrOutput) ToProjectBucketConfigPtrOutputWithContext added in v4.11.1

func (o ProjectBucketConfigPtrOutput) ToProjectBucketConfigPtrOutputWithContext(ctx context.Context) ProjectBucketConfigPtrOutput

type ProjectBucketConfigState

type ProjectBucketConfigState struct {
	// The name of the logging bucket. Logging automatically creates two log buckets: `_Required` and `_Default`.
	BucketId pulumi.StringPtrInput
	// Describes this bucket.
	Description pulumi.StringPtrInput
	// The bucket's lifecycle such as active or deleted. See [LifecycleState](https://cloud.google.com/logging/docs/reference/v2/rest/v2/billingAccounts.buckets#LogBucket.LifecycleState).
	LifecycleState pulumi.StringPtrInput
	// The location of the bucket.
	Location pulumi.StringPtrInput
	// The resource name of the bucket. For example: "projects/my-project-id/locations/my-location/buckets/my-bucket-id"
	Name pulumi.StringPtrInput
	// The parent resource that contains the logging bucket.
	Project pulumi.StringPtrInput
	// Logs will be retained by default for this amount of time, after which they will automatically be deleted. The minimum retention period is 1 day. If this value is set to zero at bucket creation time, the default time of 30 days will be used.
	RetentionDays pulumi.IntPtrInput
}

func (ProjectBucketConfigState) ElementType

func (ProjectBucketConfigState) ElementType() reflect.Type

type ProjectExclusion

type ProjectExclusion struct {
	pulumi.CustomResourceState

	// A human-readable description.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Whether this exclusion rule should be disabled or not. This defaults to
	// false.
	Disabled pulumi.BoolPtrOutput `pulumi:"disabled"`
	// The filter to apply when excluding logs. Only log entries that match the filter are excluded.
	// See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced-filters) for information on how to
	// write a filter.
	Filter pulumi.StringOutput `pulumi:"filter"`
	// The name of the logging exclusion.
	Name pulumi.StringOutput `pulumi:"name"`
	// The project to create the exclusion in. If omitted, the project associated with the provider is
	// used.
	Project pulumi.StringOutput `pulumi:"project"`
}

Manages a project-level logging exclusion. For more information see:

* [API documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/projects.exclusions) * How-to Guides

> You can specify exclusions for log sinks created by the provider by using the exclusions field of `logging.ProjectSink`

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v4/go/gcp/logging"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := logging.NewProjectExclusion(ctx, "my_exclusion", &logging.ProjectExclusionArgs{
			Description: pulumi.String("Exclude GCE instance debug logs"),
			Filter:      pulumi.String("resource.type = gce_instance AND severity <= DEBUG"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Project-level logging exclusions can be imported using their URI, e.g.

```sh

$ pulumi import gcp:logging/projectExclusion:ProjectExclusion my_exclusion projects/my-project/exclusions/my-exclusion

```

func GetProjectExclusion

func GetProjectExclusion(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProjectExclusionState, opts ...pulumi.ResourceOption) (*ProjectExclusion, error)

GetProjectExclusion gets an existing ProjectExclusion resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewProjectExclusion

func NewProjectExclusion(ctx *pulumi.Context,
	name string, args *ProjectExclusionArgs, opts ...pulumi.ResourceOption) (*ProjectExclusion, error)

NewProjectExclusion registers a new resource with the given unique name, arguments, and options.

func (*ProjectExclusion) ElementType added in v4.4.0

func (*ProjectExclusion) ElementType() reflect.Type

func (*ProjectExclusion) ToProjectExclusionOutput added in v4.4.0

func (i *ProjectExclusion) ToProjectExclusionOutput() ProjectExclusionOutput

func (*ProjectExclusion) ToProjectExclusionOutputWithContext added in v4.4.0

func (i *ProjectExclusion) ToProjectExclusionOutputWithContext(ctx context.Context) ProjectExclusionOutput

func (*ProjectExclusion) ToProjectExclusionPtrOutput added in v4.11.1

func (i *ProjectExclusion) ToProjectExclusionPtrOutput() ProjectExclusionPtrOutput

func (*ProjectExclusion) ToProjectExclusionPtrOutputWithContext added in v4.11.1

func (i *ProjectExclusion) ToProjectExclusionPtrOutputWithContext(ctx context.Context) ProjectExclusionPtrOutput

type ProjectExclusionArgs

type ProjectExclusionArgs struct {
	// A human-readable description.
	Description pulumi.StringPtrInput
	// Whether this exclusion rule should be disabled or not. This defaults to
	// false.
	Disabled pulumi.BoolPtrInput
	// The filter to apply when excluding logs. Only log entries that match the filter are excluded.
	// See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced-filters) for information on how to
	// write a filter.
	Filter pulumi.StringInput
	// The name of the logging exclusion.
	Name pulumi.StringPtrInput
	// The project to create the exclusion in. If omitted, the project associated with the provider is
	// used.
	Project pulumi.StringPtrInput
}

The set of arguments for constructing a ProjectExclusion resource.

func (ProjectExclusionArgs) ElementType

func (ProjectExclusionArgs) ElementType() reflect.Type

type ProjectExclusionArray added in v4.11.1

type ProjectExclusionArray []ProjectExclusionInput

func (ProjectExclusionArray) ElementType added in v4.11.1

func (ProjectExclusionArray) ElementType() reflect.Type

func (ProjectExclusionArray) ToProjectExclusionArrayOutput added in v4.11.1

func (i ProjectExclusionArray) ToProjectExclusionArrayOutput() ProjectExclusionArrayOutput

func (ProjectExclusionArray) ToProjectExclusionArrayOutputWithContext added in v4.11.1

func (i ProjectExclusionArray) ToProjectExclusionArrayOutputWithContext(ctx context.Context) ProjectExclusionArrayOutput

type ProjectExclusionArrayInput added in v4.11.1

type ProjectExclusionArrayInput interface {
	pulumi.Input

	ToProjectExclusionArrayOutput() ProjectExclusionArrayOutput
	ToProjectExclusionArrayOutputWithContext(context.Context) ProjectExclusionArrayOutput
}

ProjectExclusionArrayInput is an input type that accepts ProjectExclusionArray and ProjectExclusionArrayOutput values. You can construct a concrete instance of `ProjectExclusionArrayInput` via:

ProjectExclusionArray{ ProjectExclusionArgs{...} }

type ProjectExclusionArrayOutput added in v4.11.1

type ProjectExclusionArrayOutput struct{ *pulumi.OutputState }

func (ProjectExclusionArrayOutput) ElementType added in v4.11.1

func (ProjectExclusionArrayOutput) Index added in v4.11.1

func (ProjectExclusionArrayOutput) ToProjectExclusionArrayOutput added in v4.11.1

func (o ProjectExclusionArrayOutput) ToProjectExclusionArrayOutput() ProjectExclusionArrayOutput

func (ProjectExclusionArrayOutput) ToProjectExclusionArrayOutputWithContext added in v4.11.1

func (o ProjectExclusionArrayOutput) ToProjectExclusionArrayOutputWithContext(ctx context.Context) ProjectExclusionArrayOutput

type ProjectExclusionInput added in v4.4.0

type ProjectExclusionInput interface {
	pulumi.Input

	ToProjectExclusionOutput() ProjectExclusionOutput
	ToProjectExclusionOutputWithContext(ctx context.Context) ProjectExclusionOutput
}

type ProjectExclusionMap added in v4.11.1

type ProjectExclusionMap map[string]ProjectExclusionInput

func (ProjectExclusionMap) ElementType added in v4.11.1

func (ProjectExclusionMap) ElementType() reflect.Type

func (ProjectExclusionMap) ToProjectExclusionMapOutput added in v4.11.1

func (i ProjectExclusionMap) ToProjectExclusionMapOutput() ProjectExclusionMapOutput

func (ProjectExclusionMap) ToProjectExclusionMapOutputWithContext added in v4.11.1

func (i ProjectExclusionMap) ToProjectExclusionMapOutputWithContext(ctx context.Context) ProjectExclusionMapOutput

type ProjectExclusionMapInput added in v4.11.1

type ProjectExclusionMapInput interface {
	pulumi.Input

	ToProjectExclusionMapOutput() ProjectExclusionMapOutput
	ToProjectExclusionMapOutputWithContext(context.Context) ProjectExclusionMapOutput
}

ProjectExclusionMapInput is an input type that accepts ProjectExclusionMap and ProjectExclusionMapOutput values. You can construct a concrete instance of `ProjectExclusionMapInput` via:

ProjectExclusionMap{ "key": ProjectExclusionArgs{...} }

type ProjectExclusionMapOutput added in v4.11.1

type ProjectExclusionMapOutput struct{ *pulumi.OutputState }

func (ProjectExclusionMapOutput) ElementType added in v4.11.1

func (ProjectExclusionMapOutput) ElementType() reflect.Type

func (ProjectExclusionMapOutput) MapIndex added in v4.11.1

func (ProjectExclusionMapOutput) ToProjectExclusionMapOutput added in v4.11.1

func (o ProjectExclusionMapOutput) ToProjectExclusionMapOutput() ProjectExclusionMapOutput

func (ProjectExclusionMapOutput) ToProjectExclusionMapOutputWithContext added in v4.11.1

func (o ProjectExclusionMapOutput) ToProjectExclusionMapOutputWithContext(ctx context.Context) ProjectExclusionMapOutput

type ProjectExclusionOutput added in v4.4.0

type ProjectExclusionOutput struct {
	*pulumi.OutputState
}

func (ProjectExclusionOutput) ElementType added in v4.4.0

func (ProjectExclusionOutput) ElementType() reflect.Type

func (ProjectExclusionOutput) ToProjectExclusionOutput added in v4.4.0

func (o ProjectExclusionOutput) ToProjectExclusionOutput() ProjectExclusionOutput

func (ProjectExclusionOutput) ToProjectExclusionOutputWithContext added in v4.4.0

func (o ProjectExclusionOutput) ToProjectExclusionOutputWithContext(ctx context.Context) ProjectExclusionOutput

func (ProjectExclusionOutput) ToProjectExclusionPtrOutput added in v4.11.1

func (o ProjectExclusionOutput) ToProjectExclusionPtrOutput() ProjectExclusionPtrOutput

func (ProjectExclusionOutput) ToProjectExclusionPtrOutputWithContext added in v4.11.1

func (o ProjectExclusionOutput) ToProjectExclusionPtrOutputWithContext(ctx context.Context) ProjectExclusionPtrOutput

type ProjectExclusionPtrInput added in v4.11.1

type ProjectExclusionPtrInput interface {
	pulumi.Input

	ToProjectExclusionPtrOutput() ProjectExclusionPtrOutput
	ToProjectExclusionPtrOutputWithContext(ctx context.Context) ProjectExclusionPtrOutput
}

type ProjectExclusionPtrOutput added in v4.11.1

type ProjectExclusionPtrOutput struct {
	*pulumi.OutputState
}

func (ProjectExclusionPtrOutput) ElementType added in v4.11.1

func (ProjectExclusionPtrOutput) ElementType() reflect.Type

func (ProjectExclusionPtrOutput) ToProjectExclusionPtrOutput added in v4.11.1

func (o ProjectExclusionPtrOutput) ToProjectExclusionPtrOutput() ProjectExclusionPtrOutput

func (ProjectExclusionPtrOutput) ToProjectExclusionPtrOutputWithContext added in v4.11.1

func (o ProjectExclusionPtrOutput) ToProjectExclusionPtrOutputWithContext(ctx context.Context) ProjectExclusionPtrOutput

type ProjectExclusionState

type ProjectExclusionState struct {
	// A human-readable description.
	Description pulumi.StringPtrInput
	// Whether this exclusion rule should be disabled or not. This defaults to
	// false.
	Disabled pulumi.BoolPtrInput
	// The filter to apply when excluding logs. Only log entries that match the filter are excluded.
	// See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced-filters) for information on how to
	// write a filter.
	Filter pulumi.StringPtrInput
	// The name of the logging exclusion.
	Name pulumi.StringPtrInput
	// The project to create the exclusion in. If omitted, the project associated with the provider is
	// used.
	Project pulumi.StringPtrInput
}

func (ProjectExclusionState) ElementType

func (ProjectExclusionState) ElementType() reflect.Type

type ProjectSink

type ProjectSink struct {
	pulumi.CustomResourceState

	// Options that affect sinks exporting data to BigQuery. Structure documented below.
	BigqueryOptions ProjectSinkBigqueryOptionsOutput `pulumi:"bigqueryOptions"`
	// A description of this exclusion.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// The destination of the sink (or, in other words, where logs are written to). Can be a
	// Cloud Storage bucket, a PubSub topic, a BigQuery dataset or a Cloud Logging bucket . Examples:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		return nil
	// 	})
	// }
	// “`
	// The writer associated with the sink must have access to write to the above resource.
	Destination pulumi.StringOutput `pulumi:"destination"`
	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled pulumi.BoolPtrOutput `pulumi:"disabled"`
	// Log entries that match any of the exclusion filters will not be exported. If a log entry is matched by both filter and one of exclusionFilters it will not be exported.  Can be repeated multiple times for multiple exclusions. Structure is documented below.
	Exclusions ProjectSinkExclusionArrayOutput `pulumi:"exclusions"`
	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to
	// write a filter.
	Filter pulumi.StringPtrOutput `pulumi:"filter"`
	// A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the project to create the sink in. If omitted, the project associated with the provider is
	// used.
	Project pulumi.StringOutput `pulumi:"project"`
	// Whether or not to create a unique identity associated with this sink. If `false`
	// (the default), then the `writerIdentity` used is `serviceAccount:cloud-logs@system.gserviceaccount.com`. If `true`,
	// then a unique service account is created and used for this sink. If you wish to publish logs across projects or utilize
	// `bigqueryOptions`, you must set `uniqueWriterIdentity` to true.
	UniqueWriterIdentity pulumi.BoolPtrOutput `pulumi:"uniqueWriterIdentity"`
	// The identity associated with this sink. This identity must be granted write access to the
	// configured `destination`.
	WriterIdentity pulumi.StringOutput `pulumi:"writerIdentity"`
}

## Import

Project-level logging sinks can be imported using their URI, e.g.

```sh

$ pulumi import gcp:logging/projectSink:ProjectSink my_sink projects/my-project/sinks/my-sink

```

func GetProjectSink

func GetProjectSink(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProjectSinkState, opts ...pulumi.ResourceOption) (*ProjectSink, error)

GetProjectSink gets an existing ProjectSink resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewProjectSink

func NewProjectSink(ctx *pulumi.Context,
	name string, args *ProjectSinkArgs, opts ...pulumi.ResourceOption) (*ProjectSink, error)

NewProjectSink registers a new resource with the given unique name, arguments, and options.

func (*ProjectSink) ElementType added in v4.4.0

func (*ProjectSink) ElementType() reflect.Type

func (*ProjectSink) ToProjectSinkOutput added in v4.4.0

func (i *ProjectSink) ToProjectSinkOutput() ProjectSinkOutput

func (*ProjectSink) ToProjectSinkOutputWithContext added in v4.4.0

func (i *ProjectSink) ToProjectSinkOutputWithContext(ctx context.Context) ProjectSinkOutput

func (*ProjectSink) ToProjectSinkPtrOutput added in v4.11.1

func (i *ProjectSink) ToProjectSinkPtrOutput() ProjectSinkPtrOutput

func (*ProjectSink) ToProjectSinkPtrOutputWithContext added in v4.11.1

func (i *ProjectSink) ToProjectSinkPtrOutputWithContext(ctx context.Context) ProjectSinkPtrOutput

type ProjectSinkArgs

type ProjectSinkArgs struct {
	// Options that affect sinks exporting data to BigQuery. Structure documented below.
	BigqueryOptions ProjectSinkBigqueryOptionsPtrInput
	// A description of this exclusion.
	Description pulumi.StringPtrInput
	// The destination of the sink (or, in other words, where logs are written to). Can be a
	// Cloud Storage bucket, a PubSub topic, a BigQuery dataset or a Cloud Logging bucket . Examples:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		return nil
	// 	})
	// }
	// “`
	// The writer associated with the sink must have access to write to the above resource.
	Destination pulumi.StringInput
	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled pulumi.BoolPtrInput
	// Log entries that match any of the exclusion filters will not be exported. If a log entry is matched by both filter and one of exclusionFilters it will not be exported.  Can be repeated multiple times for multiple exclusions. Structure is documented below.
	Exclusions ProjectSinkExclusionArrayInput
	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to
	// write a filter.
	Filter pulumi.StringPtrInput
	// A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name pulumi.StringPtrInput
	// The ID of the project to create the sink in. If omitted, the project associated with the provider is
	// used.
	Project pulumi.StringPtrInput
	// Whether or not to create a unique identity associated with this sink. If `false`
	// (the default), then the `writerIdentity` used is `serviceAccount:cloud-logs@system.gserviceaccount.com`. If `true`,
	// then a unique service account is created and used for this sink. If you wish to publish logs across projects or utilize
	// `bigqueryOptions`, you must set `uniqueWriterIdentity` to true.
	UniqueWriterIdentity pulumi.BoolPtrInput
}

The set of arguments for constructing a ProjectSink resource.

func (ProjectSinkArgs) ElementType

func (ProjectSinkArgs) ElementType() reflect.Type

type ProjectSinkArray added in v4.11.1

type ProjectSinkArray []ProjectSinkInput

func (ProjectSinkArray) ElementType added in v4.11.1

func (ProjectSinkArray) ElementType() reflect.Type

func (ProjectSinkArray) ToProjectSinkArrayOutput added in v4.11.1

func (i ProjectSinkArray) ToProjectSinkArrayOutput() ProjectSinkArrayOutput

func (ProjectSinkArray) ToProjectSinkArrayOutputWithContext added in v4.11.1

func (i ProjectSinkArray) ToProjectSinkArrayOutputWithContext(ctx context.Context) ProjectSinkArrayOutput

type ProjectSinkArrayInput added in v4.11.1

type ProjectSinkArrayInput interface {
	pulumi.Input

	ToProjectSinkArrayOutput() ProjectSinkArrayOutput
	ToProjectSinkArrayOutputWithContext(context.Context) ProjectSinkArrayOutput
}

ProjectSinkArrayInput is an input type that accepts ProjectSinkArray and ProjectSinkArrayOutput values. You can construct a concrete instance of `ProjectSinkArrayInput` via:

ProjectSinkArray{ ProjectSinkArgs{...} }

type ProjectSinkArrayOutput added in v4.11.1

type ProjectSinkArrayOutput struct{ *pulumi.OutputState }

func (ProjectSinkArrayOutput) ElementType added in v4.11.1

func (ProjectSinkArrayOutput) ElementType() reflect.Type

func (ProjectSinkArrayOutput) Index added in v4.11.1

func (ProjectSinkArrayOutput) ToProjectSinkArrayOutput added in v4.11.1

func (o ProjectSinkArrayOutput) ToProjectSinkArrayOutput() ProjectSinkArrayOutput

func (ProjectSinkArrayOutput) ToProjectSinkArrayOutputWithContext added in v4.11.1

func (o ProjectSinkArrayOutput) ToProjectSinkArrayOutputWithContext(ctx context.Context) ProjectSinkArrayOutput

type ProjectSinkBigqueryOptions

type ProjectSinkBigqueryOptions struct {
	// Whether to use [BigQuery's partition tables](https://cloud.google.com/bigquery/docs/partitioned-tables).
	// By default, Logging creates dated tables based on the log entries' timestamps, e.g. syslog_20170523. With partitioned
	// tables the date suffix is no longer present and [special query syntax](https://cloud.google.com/bigquery/docs/querying-partitioned-tables)
	// has to be used instead. In both cases, tables are sharded based on UTC timezone.
	UsePartitionedTables bool `pulumi:"usePartitionedTables"`
}

type ProjectSinkBigqueryOptionsArgs

type ProjectSinkBigqueryOptionsArgs struct {
	// Whether to use [BigQuery's partition tables](https://cloud.google.com/bigquery/docs/partitioned-tables).
	// By default, Logging creates dated tables based on the log entries' timestamps, e.g. syslog_20170523. With partitioned
	// tables the date suffix is no longer present and [special query syntax](https://cloud.google.com/bigquery/docs/querying-partitioned-tables)
	// has to be used instead. In both cases, tables are sharded based on UTC timezone.
	UsePartitionedTables pulumi.BoolInput `pulumi:"usePartitionedTables"`
}

func (ProjectSinkBigqueryOptionsArgs) ElementType

func (ProjectSinkBigqueryOptionsArgs) ToProjectSinkBigqueryOptionsOutput

func (i ProjectSinkBigqueryOptionsArgs) ToProjectSinkBigqueryOptionsOutput() ProjectSinkBigqueryOptionsOutput

func (ProjectSinkBigqueryOptionsArgs) ToProjectSinkBigqueryOptionsOutputWithContext

func (i ProjectSinkBigqueryOptionsArgs) ToProjectSinkBigqueryOptionsOutputWithContext(ctx context.Context) ProjectSinkBigqueryOptionsOutput

func (ProjectSinkBigqueryOptionsArgs) ToProjectSinkBigqueryOptionsPtrOutput

func (i ProjectSinkBigqueryOptionsArgs) ToProjectSinkBigqueryOptionsPtrOutput() ProjectSinkBigqueryOptionsPtrOutput

func (ProjectSinkBigqueryOptionsArgs) ToProjectSinkBigqueryOptionsPtrOutputWithContext

func (i ProjectSinkBigqueryOptionsArgs) ToProjectSinkBigqueryOptionsPtrOutputWithContext(ctx context.Context) ProjectSinkBigqueryOptionsPtrOutput

type ProjectSinkBigqueryOptionsInput

type ProjectSinkBigqueryOptionsInput interface {
	pulumi.Input

	ToProjectSinkBigqueryOptionsOutput() ProjectSinkBigqueryOptionsOutput
	ToProjectSinkBigqueryOptionsOutputWithContext(context.Context) ProjectSinkBigqueryOptionsOutput
}

ProjectSinkBigqueryOptionsInput is an input type that accepts ProjectSinkBigqueryOptionsArgs and ProjectSinkBigqueryOptionsOutput values. You can construct a concrete instance of `ProjectSinkBigqueryOptionsInput` via:

ProjectSinkBigqueryOptionsArgs{...}

type ProjectSinkBigqueryOptionsOutput

type ProjectSinkBigqueryOptionsOutput struct{ *pulumi.OutputState }

func (ProjectSinkBigqueryOptionsOutput) ElementType

func (ProjectSinkBigqueryOptionsOutput) ToProjectSinkBigqueryOptionsOutput

func (o ProjectSinkBigqueryOptionsOutput) ToProjectSinkBigqueryOptionsOutput() ProjectSinkBigqueryOptionsOutput

func (ProjectSinkBigqueryOptionsOutput) ToProjectSinkBigqueryOptionsOutputWithContext

func (o ProjectSinkBigqueryOptionsOutput) ToProjectSinkBigqueryOptionsOutputWithContext(ctx context.Context) ProjectSinkBigqueryOptionsOutput

func (ProjectSinkBigqueryOptionsOutput) ToProjectSinkBigqueryOptionsPtrOutput

func (o ProjectSinkBigqueryOptionsOutput) ToProjectSinkBigqueryOptionsPtrOutput() ProjectSinkBigqueryOptionsPtrOutput

func (ProjectSinkBigqueryOptionsOutput) ToProjectSinkBigqueryOptionsPtrOutputWithContext

func (o ProjectSinkBigqueryOptionsOutput) ToProjectSinkBigqueryOptionsPtrOutputWithContext(ctx context.Context) ProjectSinkBigqueryOptionsPtrOutput

func (ProjectSinkBigqueryOptionsOutput) UsePartitionedTables

func (o ProjectSinkBigqueryOptionsOutput) UsePartitionedTables() pulumi.BoolOutput

Whether to use [BigQuery's partition tables](https://cloud.google.com/bigquery/docs/partitioned-tables). By default, Logging creates dated tables based on the log entries' timestamps, e.g. syslog_20170523. With partitioned tables the date suffix is no longer present and [special query syntax](https://cloud.google.com/bigquery/docs/querying-partitioned-tables) has to be used instead. In both cases, tables are sharded based on UTC timezone.

type ProjectSinkBigqueryOptionsPtrInput

type ProjectSinkBigqueryOptionsPtrInput interface {
	pulumi.Input

	ToProjectSinkBigqueryOptionsPtrOutput() ProjectSinkBigqueryOptionsPtrOutput
	ToProjectSinkBigqueryOptionsPtrOutputWithContext(context.Context) ProjectSinkBigqueryOptionsPtrOutput
}

ProjectSinkBigqueryOptionsPtrInput is an input type that accepts ProjectSinkBigqueryOptionsArgs, ProjectSinkBigqueryOptionsPtr and ProjectSinkBigqueryOptionsPtrOutput values. You can construct a concrete instance of `ProjectSinkBigqueryOptionsPtrInput` via:

        ProjectSinkBigqueryOptionsArgs{...}

or:

        nil

type ProjectSinkBigqueryOptionsPtrOutput

type ProjectSinkBigqueryOptionsPtrOutput struct{ *pulumi.OutputState }

func (ProjectSinkBigqueryOptionsPtrOutput) Elem

func (ProjectSinkBigqueryOptionsPtrOutput) ElementType

func (ProjectSinkBigqueryOptionsPtrOutput) ToProjectSinkBigqueryOptionsPtrOutput

func (o ProjectSinkBigqueryOptionsPtrOutput) ToProjectSinkBigqueryOptionsPtrOutput() ProjectSinkBigqueryOptionsPtrOutput

func (ProjectSinkBigqueryOptionsPtrOutput) ToProjectSinkBigqueryOptionsPtrOutputWithContext

func (o ProjectSinkBigqueryOptionsPtrOutput) ToProjectSinkBigqueryOptionsPtrOutputWithContext(ctx context.Context) ProjectSinkBigqueryOptionsPtrOutput

func (ProjectSinkBigqueryOptionsPtrOutput) UsePartitionedTables

func (o ProjectSinkBigqueryOptionsPtrOutput) UsePartitionedTables() pulumi.BoolPtrOutput

Whether to use [BigQuery's partition tables](https://cloud.google.com/bigquery/docs/partitioned-tables). By default, Logging creates dated tables based on the log entries' timestamps, e.g. syslog_20170523. With partitioned tables the date suffix is no longer present and [special query syntax](https://cloud.google.com/bigquery/docs/querying-partitioned-tables) has to be used instead. In both cases, tables are sharded based on UTC timezone.

type ProjectSinkExclusion

type ProjectSinkExclusion struct {
	// A description of this exclusion.
	Description *string `pulumi:"description"`
	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled *bool `pulumi:"disabled"`
	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to
	// write a filter.
	Filter string `pulumi:"filter"`
	// A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name string `pulumi:"name"`
}

type ProjectSinkExclusionArgs

type ProjectSinkExclusionArgs struct {
	// A description of this exclusion.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled pulumi.BoolPtrInput `pulumi:"disabled"`
	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to
	// write a filter.
	Filter pulumi.StringInput `pulumi:"filter"`
	// A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name pulumi.StringInput `pulumi:"name"`
}

func (ProjectSinkExclusionArgs) ElementType

func (ProjectSinkExclusionArgs) ElementType() reflect.Type

func (ProjectSinkExclusionArgs) ToProjectSinkExclusionOutput

func (i ProjectSinkExclusionArgs) ToProjectSinkExclusionOutput() ProjectSinkExclusionOutput

func (ProjectSinkExclusionArgs) ToProjectSinkExclusionOutputWithContext

func (i ProjectSinkExclusionArgs) ToProjectSinkExclusionOutputWithContext(ctx context.Context) ProjectSinkExclusionOutput

type ProjectSinkExclusionArray

type ProjectSinkExclusionArray []ProjectSinkExclusionInput

func (ProjectSinkExclusionArray) ElementType

func (ProjectSinkExclusionArray) ElementType() reflect.Type

func (ProjectSinkExclusionArray) ToProjectSinkExclusionArrayOutput

func (i ProjectSinkExclusionArray) ToProjectSinkExclusionArrayOutput() ProjectSinkExclusionArrayOutput

func (ProjectSinkExclusionArray) ToProjectSinkExclusionArrayOutputWithContext

func (i ProjectSinkExclusionArray) ToProjectSinkExclusionArrayOutputWithContext(ctx context.Context) ProjectSinkExclusionArrayOutput

type ProjectSinkExclusionArrayInput

type ProjectSinkExclusionArrayInput interface {
	pulumi.Input

	ToProjectSinkExclusionArrayOutput() ProjectSinkExclusionArrayOutput
	ToProjectSinkExclusionArrayOutputWithContext(context.Context) ProjectSinkExclusionArrayOutput
}

ProjectSinkExclusionArrayInput is an input type that accepts ProjectSinkExclusionArray and ProjectSinkExclusionArrayOutput values. You can construct a concrete instance of `ProjectSinkExclusionArrayInput` via:

ProjectSinkExclusionArray{ ProjectSinkExclusionArgs{...} }

type ProjectSinkExclusionArrayOutput

type ProjectSinkExclusionArrayOutput struct{ *pulumi.OutputState }

func (ProjectSinkExclusionArrayOutput) ElementType

func (ProjectSinkExclusionArrayOutput) Index

func (ProjectSinkExclusionArrayOutput) ToProjectSinkExclusionArrayOutput

func (o ProjectSinkExclusionArrayOutput) ToProjectSinkExclusionArrayOutput() ProjectSinkExclusionArrayOutput

func (ProjectSinkExclusionArrayOutput) ToProjectSinkExclusionArrayOutputWithContext

func (o ProjectSinkExclusionArrayOutput) ToProjectSinkExclusionArrayOutputWithContext(ctx context.Context) ProjectSinkExclusionArrayOutput

type ProjectSinkExclusionInput

type ProjectSinkExclusionInput interface {
	pulumi.Input

	ToProjectSinkExclusionOutput() ProjectSinkExclusionOutput
	ToProjectSinkExclusionOutputWithContext(context.Context) ProjectSinkExclusionOutput
}

ProjectSinkExclusionInput is an input type that accepts ProjectSinkExclusionArgs and ProjectSinkExclusionOutput values. You can construct a concrete instance of `ProjectSinkExclusionInput` via:

ProjectSinkExclusionArgs{...}

type ProjectSinkExclusionOutput

type ProjectSinkExclusionOutput struct{ *pulumi.OutputState }

func (ProjectSinkExclusionOutput) Description

A description of this exclusion.

func (ProjectSinkExclusionOutput) Disabled

If set to True, then this exclusion is disabled and it does not exclude any log entries.

func (ProjectSinkExclusionOutput) ElementType

func (ProjectSinkExclusionOutput) ElementType() reflect.Type

func (ProjectSinkExclusionOutput) Filter

An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to write a filter.

func (ProjectSinkExclusionOutput) Name

A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.

func (ProjectSinkExclusionOutput) ToProjectSinkExclusionOutput

func (o ProjectSinkExclusionOutput) ToProjectSinkExclusionOutput() ProjectSinkExclusionOutput

func (ProjectSinkExclusionOutput) ToProjectSinkExclusionOutputWithContext

func (o ProjectSinkExclusionOutput) ToProjectSinkExclusionOutputWithContext(ctx context.Context) ProjectSinkExclusionOutput

type ProjectSinkInput added in v4.4.0

type ProjectSinkInput interface {
	pulumi.Input

	ToProjectSinkOutput() ProjectSinkOutput
	ToProjectSinkOutputWithContext(ctx context.Context) ProjectSinkOutput
}

type ProjectSinkMap added in v4.11.1

type ProjectSinkMap map[string]ProjectSinkInput

func (ProjectSinkMap) ElementType added in v4.11.1

func (ProjectSinkMap) ElementType() reflect.Type

func (ProjectSinkMap) ToProjectSinkMapOutput added in v4.11.1

func (i ProjectSinkMap) ToProjectSinkMapOutput() ProjectSinkMapOutput

func (ProjectSinkMap) ToProjectSinkMapOutputWithContext added in v4.11.1

func (i ProjectSinkMap) ToProjectSinkMapOutputWithContext(ctx context.Context) ProjectSinkMapOutput

type ProjectSinkMapInput added in v4.11.1

type ProjectSinkMapInput interface {
	pulumi.Input

	ToProjectSinkMapOutput() ProjectSinkMapOutput
	ToProjectSinkMapOutputWithContext(context.Context) ProjectSinkMapOutput
}

ProjectSinkMapInput is an input type that accepts ProjectSinkMap and ProjectSinkMapOutput values. You can construct a concrete instance of `ProjectSinkMapInput` via:

ProjectSinkMap{ "key": ProjectSinkArgs{...} }

type ProjectSinkMapOutput added in v4.11.1

type ProjectSinkMapOutput struct{ *pulumi.OutputState }

func (ProjectSinkMapOutput) ElementType added in v4.11.1

func (ProjectSinkMapOutput) ElementType() reflect.Type

func (ProjectSinkMapOutput) MapIndex added in v4.11.1

func (ProjectSinkMapOutput) ToProjectSinkMapOutput added in v4.11.1

func (o ProjectSinkMapOutput) ToProjectSinkMapOutput() ProjectSinkMapOutput

func (ProjectSinkMapOutput) ToProjectSinkMapOutputWithContext added in v4.11.1

func (o ProjectSinkMapOutput) ToProjectSinkMapOutputWithContext(ctx context.Context) ProjectSinkMapOutput

type ProjectSinkOutput added in v4.4.0

type ProjectSinkOutput struct {
	*pulumi.OutputState
}

func (ProjectSinkOutput) ElementType added in v4.4.0

func (ProjectSinkOutput) ElementType() reflect.Type

func (ProjectSinkOutput) ToProjectSinkOutput added in v4.4.0

func (o ProjectSinkOutput) ToProjectSinkOutput() ProjectSinkOutput

func (ProjectSinkOutput) ToProjectSinkOutputWithContext added in v4.4.0

func (o ProjectSinkOutput) ToProjectSinkOutputWithContext(ctx context.Context) ProjectSinkOutput

func (ProjectSinkOutput) ToProjectSinkPtrOutput added in v4.11.1

func (o ProjectSinkOutput) ToProjectSinkPtrOutput() ProjectSinkPtrOutput

func (ProjectSinkOutput) ToProjectSinkPtrOutputWithContext added in v4.11.1

func (o ProjectSinkOutput) ToProjectSinkPtrOutputWithContext(ctx context.Context) ProjectSinkPtrOutput

type ProjectSinkPtrInput added in v4.11.1

type ProjectSinkPtrInput interface {
	pulumi.Input

	ToProjectSinkPtrOutput() ProjectSinkPtrOutput
	ToProjectSinkPtrOutputWithContext(ctx context.Context) ProjectSinkPtrOutput
}

type ProjectSinkPtrOutput added in v4.11.1

type ProjectSinkPtrOutput struct {
	*pulumi.OutputState
}

func (ProjectSinkPtrOutput) ElementType added in v4.11.1

func (ProjectSinkPtrOutput) ElementType() reflect.Type

func (ProjectSinkPtrOutput) ToProjectSinkPtrOutput added in v4.11.1

func (o ProjectSinkPtrOutput) ToProjectSinkPtrOutput() ProjectSinkPtrOutput

func (ProjectSinkPtrOutput) ToProjectSinkPtrOutputWithContext added in v4.11.1

func (o ProjectSinkPtrOutput) ToProjectSinkPtrOutputWithContext(ctx context.Context) ProjectSinkPtrOutput

type ProjectSinkState

type ProjectSinkState struct {
	// Options that affect sinks exporting data to BigQuery. Structure documented below.
	BigqueryOptions ProjectSinkBigqueryOptionsPtrInput
	// A description of this exclusion.
	Description pulumi.StringPtrInput
	// The destination of the sink (or, in other words, where logs are written to). Can be a
	// Cloud Storage bucket, a PubSub topic, a BigQuery dataset or a Cloud Logging bucket . Examples:
	// “`go
	// package main
	//
	// import (
	// 	"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
	// )
	//
	// func main() {
	// 	pulumi.Run(func(ctx *pulumi.Context) error {
	// 		return nil
	// 	})
	// }
	// “`
	// The writer associated with the sink must have access to write to the above resource.
	Destination pulumi.StringPtrInput
	// If set to True, then this exclusion is disabled and it does not exclude any log entries.
	Disabled pulumi.BoolPtrInput
	// Log entries that match any of the exclusion filters will not be exported. If a log entry is matched by both filter and one of exclusionFilters it will not be exported.  Can be repeated multiple times for multiple exclusions. Structure is documented below.
	Exclusions ProjectSinkExclusionArrayInput
	// An advanced logs filter that matches the log entries to be excluded. By using the sample function, you can exclude less than 100% of the matching log entries. See [Advanced Log Filters](https://cloud.google.com/logging/docs/view/advanced_filters) for information on how to
	// write a filter.
	Filter pulumi.StringPtrInput
	// A client-assigned identifier, such as `load-balancer-exclusion`. Identifiers are limited to 100 characters and can include only letters, digits, underscores, hyphens, and periods. First character has to be alphanumeric.
	Name pulumi.StringPtrInput
	// The ID of the project to create the sink in. If omitted, the project associated with the provider is
	// used.
	Project pulumi.StringPtrInput
	// Whether or not to create a unique identity associated with this sink. If `false`
	// (the default), then the `writerIdentity` used is `serviceAccount:cloud-logs@system.gserviceaccount.com`. If `true`,
	// then a unique service account is created and used for this sink. If you wish to publish logs across projects or utilize
	// `bigqueryOptions`, you must set `uniqueWriterIdentity` to true.
	UniqueWriterIdentity pulumi.BoolPtrInput
	// The identity associated with this sink. This identity must be granted write access to the
	// configured `destination`.
	WriterIdentity pulumi.StringPtrInput
}

func (ProjectSinkState) ElementType

func (ProjectSinkState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL