Class LoggingProjectSinkConfig.Builder
- java.lang.Object
-
- com.hashicorp.cdktf.providers.google.logging_project_sink.LoggingProjectSinkConfig.Builder
-
- All Implemented Interfaces:
software.amazon.jsii.Builder<LoggingProjectSinkConfig>
- Enclosing interface:
- LoggingProjectSinkConfig
@Stability(Stable) public static final class LoggingProjectSinkConfig.Builder extends Object implements software.amazon.jsii.Builder<LoggingProjectSinkConfig>
A builder forLoggingProjectSinkConfig
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
-
-
-
Method Detail
-
destination
@Stability(Stable) public LoggingProjectSinkConfig.Builder destination(String destination)
Sets the value ofLoggingProjectSinkConfig.getDestination()- Parameters:
destination- The destination of the sink (or, in other words, where logs are written to). This parameter is required. Can be a Cloud Storage bucket, a PubSub topic, or a BigQuery dataset. Examples: "storage.googleapis.com/[GCS_BUCKET]" "bigquery.googleapis.com/projects/[PROJECT_ID]/datasets/[DATASET]" "pubsub.googleapis.com/projects/[PROJECT_ID]/topics/[TOPIC_ID]" The writer associated with the sink must have access to write to the above resource. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/logging_project_sink#destination LoggingProjectSink#destination}- Returns:
this
-
name
@Stability(Stable) public LoggingProjectSinkConfig.Builder name(String name)
Sets the value ofLoggingProjectSinkConfig.getName()- Parameters:
name- The name of the logging sink. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/logging_project_sink#name LoggingProjectSink#name}- Returns:
this
-
bigqueryOptions
@Stability(Stable) public LoggingProjectSinkConfig.Builder bigqueryOptions(LoggingProjectSinkBigqueryOptions bigqueryOptions)
Sets the value ofLoggingProjectSinkConfig.getBigqueryOptions()- Parameters:
bigqueryOptions- bigquery_options block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/logging_project_sink#bigquery_options LoggingProjectSink#bigquery_options}- Returns:
this
-
customWriterIdentity
@Stability(Stable) public LoggingProjectSinkConfig.Builder customWriterIdentity(String customWriterIdentity)
Sets the value ofLoggingProjectSinkConfig.getCustomWriterIdentity()- Parameters:
customWriterIdentity- A service account provided by the caller that will be used to write the log entries. The format must be serviceAccount:some@email. This field can only be specified if you are routing logs to a destination outside this sink's project. If not specified, a Logging service account will automatically be generated. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/logging_project_sink#custom_writer_identity LoggingProjectSink#custom_writer_identity}- Returns:
this
-
description
@Stability(Stable) public LoggingProjectSinkConfig.Builder description(String description)
Sets the value ofLoggingProjectSinkConfig.getDescription()- Parameters:
description- A description of this sink. The maximum length of the description is 8000 characters. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/logging_project_sink#description LoggingProjectSink#description}- Returns:
this
-
disabled
@Stability(Stable) public LoggingProjectSinkConfig.Builder disabled(Boolean disabled)
Sets the value ofLoggingProjectSinkConfig.getDisabled()- Parameters:
disabled- If set to True, then this sink is disabled and it does not export any log entries. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/logging_project_sink#disabled LoggingProjectSink#disabled}- Returns:
this
-
disabled
@Stability(Stable) public LoggingProjectSinkConfig.Builder disabled(com.hashicorp.cdktf.IResolvable disabled)
Sets the value ofLoggingProjectSinkConfig.getDisabled()- Parameters:
disabled- If set to True, then this sink is disabled and it does not export any log entries. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/logging_project_sink#disabled LoggingProjectSink#disabled}- Returns:
this
-
exclusions
@Stability(Stable) public LoggingProjectSinkConfig.Builder exclusions(com.hashicorp.cdktf.IResolvable exclusions)
Sets the value ofLoggingProjectSinkConfig.getExclusions()- Parameters:
exclusions- exclusions block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/logging_project_sink#exclusions LoggingProjectSink#exclusions}- Returns:
this
-
exclusions
@Stability(Stable) public LoggingProjectSinkConfig.Builder exclusions(List<? extends LoggingProjectSinkExclusions> exclusions)
Sets the value ofLoggingProjectSinkConfig.getExclusions()- Parameters:
exclusions- exclusions block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/logging_project_sink#exclusions LoggingProjectSink#exclusions}- Returns:
this
-
filter
@Stability(Stable) public LoggingProjectSinkConfig.Builder filter(String filter)
Sets the value ofLoggingProjectSinkConfig.getFilter()- Parameters:
filter- The filter to apply when exporting logs. Only log entries that match the filter are exported. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/logging_project_sink#filter LoggingProjectSink#filter}- Returns:
this
-
id
@Stability(Stable) public LoggingProjectSinkConfig.Builder id(String id)
Sets the value ofLoggingProjectSinkConfig.getId()- Parameters:
id- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/logging_project_sink#id LoggingProjectSink#id}. Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.- Returns:
this
-
project
@Stability(Stable) public LoggingProjectSinkConfig.Builder project(String project)
Sets the value ofLoggingProjectSinkConfig.getProject()- Parameters:
project- The ID of the project to create the sink in. If omitted, the project associated with the provider is used. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/logging_project_sink#project LoggingProjectSink#project}- Returns:
this
-
uniqueWriterIdentity
@Stability(Stable) public LoggingProjectSinkConfig.Builder uniqueWriterIdentity(Boolean uniqueWriterIdentity)
Sets the value ofLoggingProjectSinkConfig.getUniqueWriterIdentity()- Parameters:
uniqueWriterIdentity- Whether or not to create a unique identity associated with this sink. If false (the legacy behavior), then the writer_identity used is serviceAccount:cloud-logs@system.gserviceaccount.com. If true (default), then a unique service account is created and used for this sink. If you wish to publish logs across projects, you must set unique_writer_identity to true. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/logging_project_sink#unique_writer_identity LoggingProjectSink#unique_writer_identity}- Returns:
this
-
uniqueWriterIdentity
@Stability(Stable) public LoggingProjectSinkConfig.Builder uniqueWriterIdentity(com.hashicorp.cdktf.IResolvable uniqueWriterIdentity)
Sets the value ofLoggingProjectSinkConfig.getUniqueWriterIdentity()- Parameters:
uniqueWriterIdentity- Whether or not to create a unique identity associated with this sink. If false (the legacy behavior), then the writer_identity used is serviceAccount:cloud-logs@system.gserviceaccount.com. If true (default), then a unique service account is created and used for this sink. If you wish to publish logs across projects, you must set unique_writer_identity to true. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/logging_project_sink#unique_writer_identity LoggingProjectSink#unique_writer_identity}- Returns:
this
-
connection
@Stability(Experimental) public LoggingProjectSinkConfig.Builder connection(com.hashicorp.cdktf.SSHProvisionerConnection connection)
Sets the value ofTerraformMetaArguments.getConnection()- Parameters:
connection- the value to be set.- Returns:
this
-
connection
@Stability(Experimental) public LoggingProjectSinkConfig.Builder connection(com.hashicorp.cdktf.WinrmProvisionerConnection connection)
Sets the value ofTerraformMetaArguments.getConnection()- Parameters:
connection- the value to be set.- Returns:
this
-
count
@Stability(Experimental) public LoggingProjectSinkConfig.Builder count(Number count)
Sets the value ofTerraformMetaArguments.getCount()- Parameters:
count- the value to be set.- Returns:
this
-
count
@Stability(Experimental) public LoggingProjectSinkConfig.Builder count(com.hashicorp.cdktf.TerraformCount count)
Sets the value ofTerraformMetaArguments.getCount()- Parameters:
count- the value to be set.- Returns:
this
-
dependsOn
@Stability(Experimental) public LoggingProjectSinkConfig.Builder dependsOn(List<? extends com.hashicorp.cdktf.ITerraformDependable> dependsOn)
Sets the value ofTerraformMetaArguments.getDependsOn()- Parameters:
dependsOn- the value to be set.- Returns:
this
-
forEach
@Stability(Experimental) public LoggingProjectSinkConfig.Builder forEach(com.hashicorp.cdktf.ITerraformIterator forEach)
Sets the value ofTerraformMetaArguments.getForEach()- Parameters:
forEach- the value to be set.- Returns:
this
-
lifecycle
@Stability(Experimental) public LoggingProjectSinkConfig.Builder lifecycle(com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle)
Sets the value ofTerraformMetaArguments.getLifecycle()- Parameters:
lifecycle- the value to be set.- Returns:
this
-
provider
@Stability(Experimental) public LoggingProjectSinkConfig.Builder provider(com.hashicorp.cdktf.TerraformProvider provider)
Sets the value ofTerraformMetaArguments.getProvider()- Parameters:
provider- the value to be set.- Returns:
this
-
provisioners
@Stability(Experimental) public LoggingProjectSinkConfig.Builder provisioners(List<? extends Object> provisioners)
Sets the value ofTerraformMetaArguments.getProvisioners()- Parameters:
provisioners- the value to be set.- Returns:
this
-
build
@Stability(Stable) public LoggingProjectSinkConfig build()
Builds the configured instance.- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<LoggingProjectSinkConfig>- Returns:
- a new instance of
LoggingProjectSinkConfig - Throws:
NullPointerException- if any required attribute was not provided
-
-