Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.googlenative.logging.v2.kotlin
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.googlenative.logging.v2.SinkArgs.builder
import com.pulumi.googlenative.logging.v2.kotlin.enums.SinkOutputVersionFormat
import com.pulumi.googlenative.logging.v2.kotlin.inputs.BigQueryOptionsArgs
import com.pulumi.googlenative.logging.v2.kotlin.inputs.BigQueryOptionsArgsBuilder
import com.pulumi.googlenative.logging.v2.kotlin.inputs.LogExclusionArgs
import com.pulumi.googlenative.logging.v2.kotlin.inputs.LogExclusionArgsBuilder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Boolean
import kotlin.Deprecated
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* Creates a sink that exports specified log entries to a destination. The export of newly-ingested log entries begins immediately, unless the sink's writer_identity is not permitted to write to the destination. A sink can export log entries only from the resource owning the sink.
* @property bigqueryOptions Optional. Options that affect sinks exporting data to BigQuery.
* @property description Optional. A description of this sink.The maximum length of the description is 8000 characters.
* @property destination The export destination: "storage.googleapis.com/[GCS_BUCKET]" "bigquery.googleapis.com/projects/[PROJECT_ID]/datasets/[DATASET]" "pubsub.googleapis.com/projects/[PROJECT_ID]/topics/[TOPIC_ID]" The sink's writer_identity, set when the sink is created, must have permission to write to the destination or else the log entries are not exported. For more information, see Exporting Logs with Sinks (https://cloud.google.com/logging/docs/api/tasks/exporting-logs).
* @property disabled Optional. If set to true, then this sink is disabled and it does not export any log entries.
* @property exclusions Optional. Log entries that match any of these exclusion filters will not be exported.If a log entry is matched by both filter and one of exclusion_filters it will not be exported.
* @property filter Optional. An advanced logs filter (https://cloud.google.com/logging/docs/view/advanced-queries). The only exported log entries are those that are in the resource owning the sink and that match the filter.For example:logName="projects/[PROJECT_ID]/logs/[LOG_ID]" AND severity>=ERROR
* @property includeChildren Optional. This field applies only to sinks owned by organizations and folders. If the field is false, the default, only the logs owned by the sink's parent resource are available for export. If the field is true, then log entries from all the projects, folders, and billing accounts contained in the sink's parent resource are also available for export. Whether a particular log entry from the children is exported depends on the sink's filter expression.For example, if this field is true, then the filter resource.type=gce_instance would export all Compute Engine VM instance log entries from all projects in the sink's parent.To only export entries from certain child projects, filter on the project part of the log name:logName:("projects/test-project1/" OR "projects/test-project2/") AND resource.type=gce_instance
* @property name The client-assigned sink identifier, unique within the project.For example: "my-syslog-errors-to-pubsub". Sink identifiers are limited to 100 characters and can include only the following characters: upper and lower-case alphanumeric characters, underscores, hyphens, and periods. First character has to be alphanumeric.
* @property outputVersionFormat Deprecated. This field is unused.
* @property project
* @property uniqueWriterIdentity Optional. Determines the kind of IAM identity returned as writer_identity in the new sink. If this value is omitted or set to false, and if the sink's parent is a project, then the value returned as writer_identity is the same group or service account used by Cloud Logging before the addition of writer identities to this API. The sink's destination must be in the same project as the sink itself.If this field is set to true, or if the sink is owned by a non-project resource such as an organization, then the value of writer_identity will be a unique service account used only for exports from the new sink. For more information, see writer_identity in LogSink.
*/
public data class SinkArgs(
public val bigqueryOptions: Output? = null,
public val description: Output? = null,
public val destination: Output? = null,
public val disabled: Output? = null,
public val exclusions: Output>? = null,
public val filter: Output? = null,
public val includeChildren: Output? = null,
public val name: Output? = null,
@Deprecated(
message = """
Deprecated. This field is unused.
""",
)
public val outputVersionFormat: Output? = null,
public val project: Output? = null,
public val uniqueWriterIdentity: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.googlenative.logging.v2.SinkArgs =
com.pulumi.googlenative.logging.v2.SinkArgs.builder()
.bigqueryOptions(bigqueryOptions?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.description(description?.applyValue({ args0 -> args0 }))
.destination(destination?.applyValue({ args0 -> args0 }))
.disabled(disabled?.applyValue({ args0 -> args0 }))
.exclusions(
exclusions?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.filter(filter?.applyValue({ args0 -> args0 }))
.includeChildren(includeChildren?.applyValue({ args0 -> args0 }))
.name(name?.applyValue({ args0 -> args0 }))
.outputVersionFormat(
outputVersionFormat?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.project(project?.applyValue({ args0 -> args0 }))
.uniqueWriterIdentity(uniqueWriterIdentity?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [SinkArgs].
*/
@PulumiTagMarker
public class SinkArgsBuilder internal constructor() {
private var bigqueryOptions: Output? = null
private var description: Output? = null
private var destination: Output? = null
private var disabled: Output? = null
private var exclusions: Output>? = null
private var filter: Output? = null
private var includeChildren: Output? = null
private var name: Output? = null
private var outputVersionFormat: Output? = null
private var project: Output? = null
private var uniqueWriterIdentity: Output? = null
/**
* @param value Optional. Options that affect sinks exporting data to BigQuery.
*/
@JvmName("ibfrvhjdasapmfeq")
public suspend fun bigqueryOptions(`value`: Output) {
this.bigqueryOptions = value
}
/**
* @param value Optional. A description of this sink.The maximum length of the description is 8000 characters.
*/
@JvmName("iwxdepddijclivop")
public suspend fun description(`value`: Output) {
this.description = value
}
/**
* @param value The export destination: "storage.googleapis.com/[GCS_BUCKET]" "bigquery.googleapis.com/projects/[PROJECT_ID]/datasets/[DATASET]" "pubsub.googleapis.com/projects/[PROJECT_ID]/topics/[TOPIC_ID]" The sink's writer_identity, set when the sink is created, must have permission to write to the destination or else the log entries are not exported. For more information, see Exporting Logs with Sinks (https://cloud.google.com/logging/docs/api/tasks/exporting-logs).
*/
@JvmName("qiuefvxonisewima")
public suspend fun destination(`value`: Output) {
this.destination = value
}
/**
* @param value Optional. If set to true, then this sink is disabled and it does not export any log entries.
*/
@JvmName("txmuiwduucpsahyk")
public suspend fun disabled(`value`: Output) {
this.disabled = value
}
/**
* @param value Optional. Log entries that match any of these exclusion filters will not be exported.If a log entry is matched by both filter and one of exclusion_filters it will not be exported.
*/
@JvmName("xvcblibwcoxmoqen")
public suspend fun exclusions(`value`: Output>) {
this.exclusions = value
}
@JvmName("mjuehftkcntnpqop")
public suspend fun exclusions(vararg values: Output) {
this.exclusions = Output.all(values.asList())
}
/**
* @param values Optional. Log entries that match any of these exclusion filters will not be exported.If a log entry is matched by both filter and one of exclusion_filters it will not be exported.
*/
@JvmName("pyscpldscjdsibmh")
public suspend fun exclusions(values: List