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.awsnative.cloudwatch.kotlin
import com.pulumi.awsnative.cloudwatch.MetricStreamArgs.builder
import com.pulumi.awsnative.cloudwatch.kotlin.inputs.MetricStreamFilterArgs
import com.pulumi.awsnative.cloudwatch.kotlin.inputs.MetricStreamFilterArgsBuilder
import com.pulumi.awsnative.cloudwatch.kotlin.inputs.MetricStreamStatisticsConfigurationArgs
import com.pulumi.awsnative.cloudwatch.kotlin.inputs.MetricStreamStatisticsConfigurationArgsBuilder
import com.pulumi.awsnative.kotlin.inputs.TagArgs
import com.pulumi.awsnative.kotlin.inputs.TagArgsBuilder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* Resource Type definition for Metric Stream
* ## Example Usage
* ### Example
* No Java example available.
* @property excludeFilters Define which metrics will be not streamed. Metrics matched by multiple instances of MetricStreamFilter are joined with an OR operation by default. If both IncludeFilters and ExcludeFilters are omitted, all metrics in the account will be streamed. IncludeFilters and ExcludeFilters are mutually exclusive. Default to null.
* @property firehoseArn The ARN of the Kinesis Firehose where to stream the data.
* @property includeFilters Define which metrics will be streamed. Metrics matched by multiple instances of MetricStreamFilter are joined with an OR operation by default. If both IncludeFilters and ExcludeFilters are omitted, all metrics in the account will be streamed. IncludeFilters and ExcludeFilters are mutually exclusive. Default to null.
* @property includeLinkedAccountsMetrics If you are creating a metric stream in a monitoring account, specify true to include metrics from source accounts that are linked to this monitoring account, in the metric stream. The default is false.
* @property name Name of the metric stream.
* @property outputFormat The output format of the data streamed to the Kinesis Firehose.
* @property roleArn The ARN of the role that provides access to the Kinesis Firehose.
* @property statisticsConfigurations By default, a metric stream always sends the MAX, MIN, SUM, and SAMPLECOUNT statistics for each metric that is streamed. You can use this parameter to have the metric stream also send additional statistics in the stream. This array can have up to 100 members.
* @property tags A set of tags to assign to the delivery stream.
*/
public data class MetricStreamArgs(
public val excludeFilters: Output>? = null,
public val firehoseArn: Output? = null,
public val includeFilters: Output>? = null,
public val includeLinkedAccountsMetrics: Output? = null,
public val name: Output? = null,
public val outputFormat: Output? = null,
public val roleArn: Output? = null,
public val statisticsConfigurations: Output>? =
null,
public val tags: Output>? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.cloudwatch.MetricStreamArgs =
com.pulumi.awsnative.cloudwatch.MetricStreamArgs.builder()
.excludeFilters(
excludeFilters?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.firehoseArn(firehoseArn?.applyValue({ args0 -> args0 }))
.includeFilters(
includeFilters?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.includeLinkedAccountsMetrics(includeLinkedAccountsMetrics?.applyValue({ args0 -> args0 }))
.name(name?.applyValue({ args0 -> args0 }))
.outputFormat(outputFormat?.applyValue({ args0 -> args0 }))
.roleArn(roleArn?.applyValue({ args0 -> args0 }))
.statisticsConfigurations(
statisticsConfigurations?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.tags(
tags?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
).build()
}
/**
* Builder for [MetricStreamArgs].
*/
@PulumiTagMarker
public class MetricStreamArgsBuilder internal constructor() {
private var excludeFilters: Output>? = null
private var firehoseArn: Output? = null
private var includeFilters: Output>? = null
private var includeLinkedAccountsMetrics: Output? = null
private var name: Output? = null
private var outputFormat: Output? = null
private var roleArn: Output? = null
private var statisticsConfigurations: Output>? =
null
private var tags: Output>? = null
/**
* @param value Define which metrics will be not streamed. Metrics matched by multiple instances of MetricStreamFilter are joined with an OR operation by default. If both IncludeFilters and ExcludeFilters are omitted, all metrics in the account will be streamed. IncludeFilters and ExcludeFilters are mutually exclusive. Default to null.
*/
@JvmName("mcrlbdesoqsrpsse")
public suspend fun excludeFilters(`value`: Output>) {
this.excludeFilters = value
}
@JvmName("xakshhfmljuaihhj")
public suspend fun excludeFilters(vararg values: Output) {
this.excludeFilters = Output.all(values.asList())
}
/**
* @param values Define which metrics will be not streamed. Metrics matched by multiple instances of MetricStreamFilter are joined with an OR operation by default. If both IncludeFilters and ExcludeFilters are omitted, all metrics in the account will be streamed. IncludeFilters and ExcludeFilters are mutually exclusive. Default to null.
*/
@JvmName("vaqoccdjqukejbwy")
public suspend fun excludeFilters(values: List