![JAR search and dependency download from the Maven repository](/logo.png)
com.pulumi.azurenative.datadog.kotlin.MonitoredSubscription.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-azure-native-kotlin Show documentation
Show all versions of pulumi-azure-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.azurenative.datadog.kotlin
import com.pulumi.azurenative.datadog.kotlin.outputs.SubscriptionListResponse
import com.pulumi.azurenative.datadog.kotlin.outputs.SubscriptionListResponse.Companion.toKotlin
import com.pulumi.core.Output
import com.pulumi.kotlin.KotlinCustomResource
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.ResourceMapper
import com.pulumi.kotlin.options.CustomResourceOptions
import com.pulumi.kotlin.options.CustomResourceOptionsBuilder
import com.pulumi.resources.Resource
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
/**
* Builder for [MonitoredSubscription].
*/
@PulumiTagMarker
public class MonitoredSubscriptionResourceBuilder internal constructor() {
public var name: String? = null
public var args: MonitoredSubscriptionArgs = MonitoredSubscriptionArgs()
public var opts: CustomResourceOptions = CustomResourceOptions()
/**
* @param name The _unique_ name of the resulting resource.
*/
public fun name(`value`: String) {
this.name = value
}
/**
* @param block The arguments to use to populate this resource's properties.
*/
public suspend fun args(block: suspend MonitoredSubscriptionArgsBuilder.() -> Unit) {
val builder = MonitoredSubscriptionArgsBuilder()
block(builder)
this.args = builder.build()
}
/**
* @param block A bag of options that control this resource's behavior.
*/
public suspend fun opts(block: suspend CustomResourceOptionsBuilder.() -> Unit) {
this.opts = com.pulumi.kotlin.options.CustomResourceOptions.opts(block)
}
internal fun build(): MonitoredSubscription {
val builtJavaResource =
com.pulumi.azurenative.datadog.MonitoredSubscription(
this.name,
this.args.toJava(),
this.opts.toJava(),
)
return MonitoredSubscription(builtJavaResource)
}
}
/**
* The request to update subscriptions needed to be monitored by the Datadog monitor resource.
* Azure REST API version: 2023-01-01.
* ## Example Usage
* ### Monitors_AddMonitoredSubscriptions
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using AzureNative = Pulumi.AzureNative;
* return await Deployment.RunAsync(() =>
* {
* var monitoredSubscription = new AzureNative.Datadog.MonitoredSubscription("monitoredSubscription", new()
* {
* ConfigurationName = "default",
* MonitorName = "myMonitor",
* Properties = new AzureNative.Datadog.Inputs.SubscriptionListArgs
* {
* MonitoredSubscriptionList = new[]
* {
* new AzureNative.Datadog.Inputs.MonitoredSubscriptionArgs
* {
* Status = AzureNative.Datadog.Status.Active,
* SubscriptionId = "/subscriptions/00000000-0000-0000-0000-000000000000",
* TagRules = new AzureNative.Datadog.Inputs.MonitoringTagRulesPropertiesArgs
* {
* Automuting = true,
* LogRules = new AzureNative.Datadog.Inputs.LogRulesArgs
* {
* FilteringTags = new[]
* {
* new AzureNative.Datadog.Inputs.FilteringTagArgs
* {
* Action = AzureNative.Datadog.TagAction.Include,
* Name = "Environment",
* Value = "Prod",
* },
* new AzureNative.Datadog.Inputs.FilteringTagArgs
* {
* Action = AzureNative.Datadog.TagAction.Exclude,
* Name = "Environment",
* Value = "Dev",
* },
* },
* SendAadLogs = false,
* SendResourceLogs = true,
* SendSubscriptionLogs = true,
* },
* MetricRules = new AzureNative.Datadog.Inputs.MetricRulesArgs
* {
* FilteringTags = new() { },
* },
* },
* },
* new AzureNative.Datadog.Inputs.MonitoredSubscriptionArgs
* {
* Status = AzureNative.Datadog.Status.Failed,
* SubscriptionId = "/subscriptions/00000000-0000-0000-0000-000000000001",
* TagRules = new AzureNative.Datadog.Inputs.MonitoringTagRulesPropertiesArgs
* {
* Automuting = true,
* LogRules = new AzureNative.Datadog.Inputs.LogRulesArgs
* {
* FilteringTags = new[]
* {
* new AzureNative.Datadog.Inputs.FilteringTagArgs
* {
* Action = AzureNative.Datadog.TagAction.Include,
* Name = "Environment",
* Value = "Prod",
* },
* new AzureNative.Datadog.Inputs.FilteringTagArgs
* {
* Action = AzureNative.Datadog.TagAction.Exclude,
* Name = "Environment",
* Value = "Dev",
* },
* },
* SendAadLogs = false,
* SendResourceLogs = true,
* SendSubscriptionLogs = true,
* },
* MetricRules = new AzureNative.Datadog.Inputs.MetricRulesArgs
* {
* FilteringTags = new() { },
* },
* },
* },
* },
* Operation = AzureNative.Datadog.Operation.AddBegin,
* },
* ResourceGroupName = "myResourceGroup",
* });
* });
* ```
* ```go
* package main
* import (
* datadog "github.com/pulumi/pulumi-azure-native-sdk/datadog/v2"
* "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
* )
* func main() {
* pulumi.Run(func(ctx *pulumi.Context) error {
* _, err := datadog.NewMonitoredSubscription(ctx, "monitoredSubscription", &datadog.MonitoredSubscriptionArgs{
* ConfigurationName: pulumi.String("default"),
* MonitorName: pulumi.String("myMonitor"),
* Properties: &datadog.SubscriptionListArgs{
* MonitoredSubscriptionList: datadog.MonitoredSubscriptionTypeArray{
* &datadog.MonitoredSubscriptionTypeArgs{
* Status: pulumi.String(datadog.StatusActive),
* SubscriptionId: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000"),
* TagRules: &datadog.MonitoringTagRulesPropertiesArgs{
* Automuting: pulumi.Bool(true),
* LogRules: &datadog.LogRulesArgs{
* FilteringTags: datadog.FilteringTagArray{
* &datadog.FilteringTagArgs{
* Action: pulumi.String(datadog.TagActionInclude),
* Name: pulumi.String("Environment"),
* Value: pulumi.String("Prod"),
* },
* &datadog.FilteringTagArgs{
* Action: pulumi.String(datadog.TagActionExclude),
* Name: pulumi.String("Environment"),
* Value: pulumi.String("Dev"),
* },
* },
* SendAadLogs: pulumi.Bool(false),
* SendResourceLogs: pulumi.Bool(true),
* SendSubscriptionLogs: pulumi.Bool(true),
* },
* MetricRules: &datadog.MetricRulesArgs{
* FilteringTags: datadog.FilteringTagArray{},
* },
* },
* },
* &datadog.MonitoredSubscriptionTypeArgs{
* Status: pulumi.String(datadog.StatusFailed),
* SubscriptionId: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000001"),
* TagRules: &datadog.MonitoringTagRulesPropertiesArgs{
* Automuting: pulumi.Bool(true),
* LogRules: &datadog.LogRulesArgs{
* FilteringTags: datadog.FilteringTagArray{
* &datadog.FilteringTagArgs{
* Action: pulumi.String(datadog.TagActionInclude),
* Name: pulumi.String("Environment"),
* Value: pulumi.String("Prod"),
* },
* &datadog.FilteringTagArgs{
* Action: pulumi.String(datadog.TagActionExclude),
* Name: pulumi.String("Environment"),
* Value: pulumi.String("Dev"),
* },
* },
* SendAadLogs: pulumi.Bool(false),
* SendResourceLogs: pulumi.Bool(true),
* SendSubscriptionLogs: pulumi.Bool(true),
* },
* MetricRules: &datadog.MetricRulesArgs{
* FilteringTags: datadog.FilteringTagArray{},
* },
* },
* },
* },
* Operation: pulumi.String(datadog.OperationAddBegin),
* },
* ResourceGroupName: pulumi.String("myResourceGroup"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* package generated_program;
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.azurenative.datadog.MonitoredSubscription;
* import com.pulumi.azurenative.datadog.MonitoredSubscriptionArgs;
* import com.pulumi.azurenative.datadog.inputs.SubscriptionListArgs;
* import java.util.List;
* import java.util.ArrayList;
* import java.util.Map;
* import java.io.File;
* import java.nio.file.Files;
* import java.nio.file.Paths;
* public class App {
* public static void main(String[] args) {
* Pulumi.run(App::stack);
* }
* public static void stack(Context ctx) {
* var monitoredSubscription = new MonitoredSubscription("monitoredSubscription", MonitoredSubscriptionArgs.builder()
* .configurationName("default")
* .monitorName("myMonitor")
* .properties(SubscriptionListArgs.builder()
* .monitoredSubscriptionList(
* MonitoredSubscriptionArgs.builder()
* .status("Active")
* .subscriptionId("/subscriptions/00000000-0000-0000-0000-000000000000")
* .tagRules(MonitoringTagRulesPropertiesArgs.builder()
* .automuting(true)
* .logRules(LogRulesArgs.builder()
* .filteringTags(
* FilteringTagArgs.builder()
* .action("Include")
* .name("Environment")
* .value("Prod")
* .build(),
* FilteringTagArgs.builder()
* .action("Exclude")
* .name("Environment")
* .value("Dev")
* .build())
* .sendAadLogs(false)
* .sendResourceLogs(true)
* .sendSubscriptionLogs(true)
* .build())
* .metricRules(MetricRulesArgs.builder()
* .filteringTags()
* .build())
* .build())
* .build(),
* MonitoredSubscriptionArgs.builder()
* .status("Failed")
* .subscriptionId("/subscriptions/00000000-0000-0000-0000-000000000001")
* .tagRules(MonitoringTagRulesPropertiesArgs.builder()
* .automuting(true)
* .logRules(LogRulesArgs.builder()
* .filteringTags(
* FilteringTagArgs.builder()
* .action("Include")
* .name("Environment")
* .value("Prod")
* .build(),
* FilteringTagArgs.builder()
* .action("Exclude")
* .name("Environment")
* .value("Dev")
* .build())
* .sendAadLogs(false)
* .sendResourceLogs(true)
* .sendSubscriptionLogs(true)
* .build())
* .metricRules(MetricRulesArgs.builder()
* .filteringTags()
* .build())
* .build())
* .build())
* .operation("AddBegin")
* .build())
* .resourceGroupName("myResourceGroup")
* .build());
* }
* }
* ```
* ## Import
* An existing resource can be imported using its type token, name, and identifier, e.g.
* ```sh
* $ pulumi import azure-native:datadog:MonitoredSubscription default /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Datadog/monitors/{monitorName}/monitoredSubscriptions/{configurationName}
* ```
*/
public class MonitoredSubscription internal constructor(
override val javaResource: com.pulumi.azurenative.datadog.MonitoredSubscription,
) : KotlinCustomResource(javaResource, MonitoredSubscriptionMapper) {
/**
* Name of the monitored subscription resource.
*/
public val name: Output
get() = javaResource.name().applyValue({ args0 -> args0 })
/**
* The request to update subscriptions needed to be monitored by the Datadog monitor resource.
*/
public val properties: Output
get() = javaResource.properties().applyValue({ args0 -> args0.let({ args0 -> toKotlin(args0) }) })
/**
* The type of the monitored subscription resource.
*/
public val type: Output
get() = javaResource.type().applyValue({ args0 -> args0 })
}
public object MonitoredSubscriptionMapper : ResourceMapper {
override fun supportsMappingOfType(javaResource: Resource): Boolean =
com.pulumi.azurenative.datadog.MonitoredSubscription::class == javaResource::class
override fun map(javaResource: Resource): MonitoredSubscription =
MonitoredSubscription(javaResource as com.pulumi.azurenative.datadog.MonitoredSubscription)
}
/**
* @see [MonitoredSubscription].
* @param name The _unique_ name of the resulting resource.
* @param block Builder for [MonitoredSubscription].
*/
public suspend fun monitoredSubscription(
name: String,
block: suspend MonitoredSubscriptionResourceBuilder.() -> Unit,
): MonitoredSubscription {
val builder = MonitoredSubscriptionResourceBuilder()
builder.name(name)
block(builder)
return builder.build()
}
/**
* @see [MonitoredSubscription].
* @param name The _unique_ name of the resulting resource.
*/
public fun monitoredSubscription(name: String): MonitoredSubscription {
val builder = MonitoredSubscriptionResourceBuilder()
builder.name(name)
return builder.build()
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy