com.pulumi.awsnative.kinesisanalyticsv2.kotlin.inputs.ApplicationMonitoringConfigurationArgs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-aws-native-kotlin Show documentation
Show all versions of pulumi-aws-native-kotlin Show documentation
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.kinesisanalyticsv2.kotlin.inputs
import com.pulumi.awsnative.kinesisanalyticsv2.inputs.ApplicationMonitoringConfigurationArgs.builder
import com.pulumi.awsnative.kinesisanalyticsv2.kotlin.enums.ApplicationMonitoringConfigurationConfigurationType
import com.pulumi.awsnative.kinesisanalyticsv2.kotlin.enums.ApplicationMonitoringConfigurationLogLevel
import com.pulumi.awsnative.kinesisanalyticsv2.kotlin.enums.ApplicationMonitoringConfigurationMetricsLevel
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
* Describes configuration parameters for Amazon CloudWatch logging for a Java-based Kinesis Data Analytics application. For more information about CloudWatch logging, see Monitoring.
* @property configurationType Describes whether to use the default CloudWatch logging configuration for an application. You must set this property to CUSTOM in order to set the LogLevel or MetricsLevel parameters.
* @property logLevel Describes the verbosity of the CloudWatch Logs for an application.
* @property metricsLevel Describes the granularity of the CloudWatch Logs for an application. The Parallelism level is not recommended for applications with a Parallelism over 64 due to excessive costs.
*/
public data class ApplicationMonitoringConfigurationArgs(
public val configurationType: Output,
public val logLevel: Output? = null,
public val metricsLevel: Output? = null,
) :
ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.kinesisanalyticsv2.inputs.ApplicationMonitoringConfigurationArgs =
com.pulumi.awsnative.kinesisanalyticsv2.inputs.ApplicationMonitoringConfigurationArgs.builder()
.configurationType(configurationType.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.logLevel(logLevel?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.metricsLevel(metricsLevel?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}
/**
* Builder for [ApplicationMonitoringConfigurationArgs].
*/
@PulumiTagMarker
public class ApplicationMonitoringConfigurationArgsBuilder internal constructor() {
private var configurationType: Output? = null
private var logLevel: Output? = null
private var metricsLevel: Output? = null
/**
* @param value Describes whether to use the default CloudWatch logging configuration for an application. You must set this property to CUSTOM in order to set the LogLevel or MetricsLevel parameters.
*/
@JvmName("utrfetagkijrmoll")
public suspend fun configurationType(`value`: Output) {
this.configurationType = value
}
/**
* @param value Describes the verbosity of the CloudWatch Logs for an application.
*/
@JvmName("gurgekgoothfagbf")
public suspend fun logLevel(`value`: Output) {
this.logLevel = value
}
/**
* @param value Describes the granularity of the CloudWatch Logs for an application. The Parallelism level is not recommended for applications with a Parallelism over 64 due to excessive costs.
*/
@JvmName("secjmibmikpoucee")
public suspend fun metricsLevel(`value`: Output) {
this.metricsLevel = value
}
/**
* @param value Describes whether to use the default CloudWatch logging configuration for an application. You must set this property to CUSTOM in order to set the LogLevel or MetricsLevel parameters.
*/
@JvmName("sndpohfaruxvabyf")
public suspend fun configurationType(`value`: ApplicationMonitoringConfigurationConfigurationType) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.configurationType = mapped
}
/**
* @param value Describes the verbosity of the CloudWatch Logs for an application.
*/
@JvmName("ictjqofivqxpelqe")
public suspend fun logLevel(`value`: ApplicationMonitoringConfigurationLogLevel?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.logLevel = mapped
}
/**
* @param value Describes the granularity of the CloudWatch Logs for an application. The Parallelism level is not recommended for applications with a Parallelism over 64 due to excessive costs.
*/
@JvmName("okglvgvybsgjituo")
public suspend fun metricsLevel(`value`: ApplicationMonitoringConfigurationMetricsLevel?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.metricsLevel = mapped
}
internal fun build(): ApplicationMonitoringConfigurationArgs =
ApplicationMonitoringConfigurationArgs(
configurationType = configurationType ?: throw PulumiNullFieldException("configurationType"),
logLevel = logLevel,
metricsLevel = metricsLevel,
)
}