All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.gcp.sql.kotlin.inputs.DatabaseInstanceSettingsInsightsConfigArgs.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 8.10.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.gcp.sql.kotlin.inputs

import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.gcp.sql.inputs.DatabaseInstanceSettingsInsightsConfigArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Boolean
import kotlin.Int
import kotlin.Suppress
import kotlin.jvm.JvmName

/**
 *
 * @property queryInsightsEnabled True if Query Insights feature is enabled.
 * @property queryPlansPerMinute Number of query execution plans captured by Insights per minute for all queries combined. Between 0 and 20. Default to 5.
 * @property queryStringLength Maximum query length stored in bytes. Between 256 and 4500. Default to 1024. Higher query lengths are more useful for analytical queries, but they also require more memory. Changing the query length requires you to restart the instance. You can still add tags to queries that exceed the length limit.
 * @property recordApplicationTags True if Query Insights will record application tags from query when enabled.
 * @property recordClientAddress True if Query Insights will record client address when enabled.
 */
public data class DatabaseInstanceSettingsInsightsConfigArgs(
    public val queryInsightsEnabled: Output? = null,
    public val queryPlansPerMinute: Output? = null,
    public val queryStringLength: Output? = null,
    public val recordApplicationTags: Output? = null,
    public val recordClientAddress: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.gcp.sql.inputs.DatabaseInstanceSettingsInsightsConfigArgs =
        com.pulumi.gcp.sql.inputs.DatabaseInstanceSettingsInsightsConfigArgs.builder()
            .queryInsightsEnabled(queryInsightsEnabled?.applyValue({ args0 -> args0 }))
            .queryPlansPerMinute(queryPlansPerMinute?.applyValue({ args0 -> args0 }))
            .queryStringLength(queryStringLength?.applyValue({ args0 -> args0 }))
            .recordApplicationTags(recordApplicationTags?.applyValue({ args0 -> args0 }))
            .recordClientAddress(recordClientAddress?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [DatabaseInstanceSettingsInsightsConfigArgs].
 */
@PulumiTagMarker
public class DatabaseInstanceSettingsInsightsConfigArgsBuilder internal constructor() {
    private var queryInsightsEnabled: Output? = null

    private var queryPlansPerMinute: Output? = null

    private var queryStringLength: Output? = null

    private var recordApplicationTags: Output? = null

    private var recordClientAddress: Output? = null

    /**
     * @param value True if Query Insights feature is enabled.
     */
    @JvmName("kjjbaurnilmryxkg")
    public suspend fun queryInsightsEnabled(`value`: Output) {
        this.queryInsightsEnabled = value
    }

    /**
     * @param value Number of query execution plans captured by Insights per minute for all queries combined. Between 0 and 20. Default to 5.
     */
    @JvmName("uwqvodmfqbvijybj")
    public suspend fun queryPlansPerMinute(`value`: Output) {
        this.queryPlansPerMinute = value
    }

    /**
     * @param value Maximum query length stored in bytes. Between 256 and 4500. Default to 1024. Higher query lengths are more useful for analytical queries, but they also require more memory. Changing the query length requires you to restart the instance. You can still add tags to queries that exceed the length limit.
     */
    @JvmName("wxqclcvuigwcimyp")
    public suspend fun queryStringLength(`value`: Output) {
        this.queryStringLength = value
    }

    /**
     * @param value True if Query Insights will record application tags from query when enabled.
     */
    @JvmName("wgdxfofmdhxkaafp")
    public suspend fun recordApplicationTags(`value`: Output) {
        this.recordApplicationTags = value
    }

    /**
     * @param value True if Query Insights will record client address when enabled.
     */
    @JvmName("qcqsfdgmhdbmfdpw")
    public suspend fun recordClientAddress(`value`: Output) {
        this.recordClientAddress = value
    }

    /**
     * @param value True if Query Insights feature is enabled.
     */
    @JvmName("hafllcmwlgxcvhwg")
    public suspend fun queryInsightsEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.queryInsightsEnabled = mapped
    }

    /**
     * @param value Number of query execution plans captured by Insights per minute for all queries combined. Between 0 and 20. Default to 5.
     */
    @JvmName("lyibeqhpemrsqplg")
    public suspend fun queryPlansPerMinute(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.queryPlansPerMinute = mapped
    }

    /**
     * @param value Maximum query length stored in bytes. Between 256 and 4500. Default to 1024. Higher query lengths are more useful for analytical queries, but they also require more memory. Changing the query length requires you to restart the instance. You can still add tags to queries that exceed the length limit.
     */
    @JvmName("qxavrsjdyenbyjwb")
    public suspend fun queryStringLength(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.queryStringLength = mapped
    }

    /**
     * @param value True if Query Insights will record application tags from query when enabled.
     */
    @JvmName("fdfubgxngyhlgrhg")
    public suspend fun recordApplicationTags(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.recordApplicationTags = mapped
    }

    /**
     * @param value True if Query Insights will record client address when enabled.
     */
    @JvmName("weaqdtgygwhmeocp")
    public suspend fun recordClientAddress(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.recordClientAddress = mapped
    }

    internal fun build(): DatabaseInstanceSettingsInsightsConfigArgs =
        DatabaseInstanceSettingsInsightsConfigArgs(
            queryInsightsEnabled = queryInsightsEnabled,
            queryPlansPerMinute = queryPlansPerMinute,
            queryStringLength = queryStringLength,
            recordApplicationTags = recordApplicationTags,
            recordClientAddress = recordClientAddress,
        )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy