MonitorArgs

data class MonitorArgs(val appLocation: Output<String>? = null, val appServicePlanConfiguration: Output<AppServicePlanConfigurationArgs>? = null, val identity: Output<ManagedServiceIdentityArgs>? = null, val location: Output<String>? = null, val logAnalyticsWorkspaceArmId: Output<String>? = null, val managedResourceGroupConfiguration: Output<ManagedResourceGroupConfigurationArgs>? = null, val monitorName: Output<String>? = null, val monitorSubnet: Output<String>? = null, val resourceGroupName: Output<String>? = null, val routingPreference: Output<Either<String, RoutingPreference>>? = null, val tags: Output<Map<String, String>>? = null, val zoneRedundancyPreference: Output<String>? = null) : ConvertibleToJava<MonitorArgs>

SAP monitor info on Azure (ARM properties and SAP monitor properties) Uses Azure REST API version 2024-02-01-preview. In version 2.x of the Azure Native provider, it used API version 2023-12-01-preview. Other available API versions: 2023-04-01, 2023-10-01-preview, 2023-12-01-preview. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native workloads [ApiVersion]. See the ../../../version-guide/#accessing-any-api-version-via-local-packages for details.

Example Usage

Create a SAP monitor

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var monitor = new AzureNative.Workloads.Monitor("monitor", new()
{
AppLocation = "westus",
AppServicePlanConfiguration = new AzureNative.Workloads.Inputs.AppServicePlanConfigurationArgs
{
Capacity = 1,
Tier = AzureNative.Workloads.AppServicePlanTier.ElasticPremium,
},
Location = "westus",
LogAnalyticsWorkspaceArmId = "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/myWorkspace",
ManagedResourceGroupConfiguration = new AzureNative.Workloads.Inputs.ManagedResourceGroupConfigurationArgs
{
Name = "myManagedRg",
},
MonitorName = "mySapMonitor",
MonitorSubnet = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet",
ResourceGroupName = "myResourceGroup",
RoutingPreference = AzureNative.Workloads.RoutingPreference.RouteAll,
Tags =
{
{ "key", "value" },
},
});
});
package main
import (
workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := workloads.NewMonitor(ctx, "monitor", &workloads.MonitorArgs{
AppLocation: pulumi.String("westus"),
AppServicePlanConfiguration: &workloads.AppServicePlanConfigurationArgs{
Capacity: pulumi.Int(1),
Tier: pulumi.String(workloads.AppServicePlanTierElasticPremium),
},
Location: pulumi.String("westus"),
LogAnalyticsWorkspaceArmId: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/myWorkspace"),
ManagedResourceGroupConfiguration: &workloads.ManagedResourceGroupConfigurationArgs{
Name: pulumi.String("myManagedRg"),
},
MonitorName: pulumi.String("mySapMonitor"),
MonitorSubnet: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet"),
ResourceGroupName: pulumi.String("myResourceGroup"),
RoutingPreference: pulumi.String(workloads.RoutingPreferenceRouteAll),
Tags: pulumi.StringMap{
"key": pulumi.String("value"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.workloads.Monitor;
import com.pulumi.azurenative.workloads.MonitorArgs;
import com.pulumi.azurenative.workloads.inputs.AppServicePlanConfigurationArgs;
import com.pulumi.azurenative.workloads.inputs.ManagedResourceGroupConfigurationArgs;
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 monitor = new Monitor("monitor", MonitorArgs.builder()
.appLocation("westus")
.appServicePlanConfiguration(AppServicePlanConfigurationArgs.builder()
.capacity(1)
.tier("ElasticPremium")
.build())
.location("westus")
.logAnalyticsWorkspaceArmId("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/myWorkspace")
.managedResourceGroupConfiguration(ManagedResourceGroupConfigurationArgs.builder()
.name("myManagedRg")
.build())
.monitorName("mySapMonitor")
.monitorSubnet("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet")
.resourceGroupName("myResourceGroup")
.routingPreference("RouteAll")
.tags(Map.of("key", "value"))
.build());
}
}

Create a SAP monitor with system assigned identity

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var monitor = new AzureNative.Workloads.Monitor("monitor", new()
{
AppLocation = "westus",
AppServicePlanConfiguration = new AzureNative.Workloads.Inputs.AppServicePlanConfigurationArgs
{
Capacity = 1,
Tier = AzureNative.Workloads.AppServicePlanTier.ElasticPremium,
},
Identity = new AzureNative.Workloads.Inputs.ManagedServiceIdentityArgs
{
Type = AzureNative.Workloads.ManagedServiceIdentityType.SystemAssigned,
},
Location = "westus",
LogAnalyticsWorkspaceArmId = "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/myWorkspace",
ManagedResourceGroupConfiguration = new AzureNative.Workloads.Inputs.ManagedResourceGroupConfigurationArgs
{
Name = "myManagedRg",
},
MonitorName = "mySapMonitor",
MonitorSubnet = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet",
ResourceGroupName = "myResourceGroup",
RoutingPreference = AzureNative.Workloads.RoutingPreference.RouteAll,
Tags =
{
{ "key", "value" },
},
});
});
package main
import (
workloads "github.com/pulumi/pulumi-azure-native-sdk/workloads/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := workloads.NewMonitor(ctx, "monitor", &workloads.MonitorArgs{
AppLocation: pulumi.String("westus"),
AppServicePlanConfiguration: &workloads.AppServicePlanConfigurationArgs{
Capacity: pulumi.Int(1),
Tier: pulumi.String(workloads.AppServicePlanTierElasticPremium),
},
Identity: &workloads.ManagedServiceIdentityArgs{
Type: pulumi.String(workloads.ManagedServiceIdentityTypeSystemAssigned),
},
Location: pulumi.String("westus"),
LogAnalyticsWorkspaceArmId: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/myWorkspace"),
ManagedResourceGroupConfiguration: &workloads.ManagedResourceGroupConfigurationArgs{
Name: pulumi.String("myManagedRg"),
},
MonitorName: pulumi.String("mySapMonitor"),
MonitorSubnet: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet"),
ResourceGroupName: pulumi.String("myResourceGroup"),
RoutingPreference: pulumi.String(workloads.RoutingPreferenceRouteAll),
Tags: pulumi.StringMap{
"key": pulumi.String("value"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.workloads.Monitor;
import com.pulumi.azurenative.workloads.MonitorArgs;
import com.pulumi.azurenative.workloads.inputs.AppServicePlanConfigurationArgs;
import com.pulumi.azurenative.workloads.inputs.ManagedServiceIdentityArgs;
import com.pulumi.azurenative.workloads.inputs.ManagedResourceGroupConfigurationArgs;
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 monitor = new Monitor("monitor", MonitorArgs.builder()
.appLocation("westus")
.appServicePlanConfiguration(AppServicePlanConfigurationArgs.builder()
.capacity(1)
.tier("ElasticPremium")
.build())
.identity(ManagedServiceIdentityArgs.builder()
.type("SystemAssigned")
.build())
.location("westus")
.logAnalyticsWorkspaceArmId("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/myWorkspace")
.managedResourceGroupConfiguration(ManagedResourceGroupConfigurationArgs.builder()
.name("myManagedRg")
.build())
.monitorName("mySapMonitor")
.monitorSubnet("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet")
.resourceGroupName("myResourceGroup")
.routingPreference("RouteAll")
.tags(Map.of("key", "value"))
.build());
}
}

Import

An existing resource can be imported using its type token, name, and identifier, e.g.

$ pulumi import azure-native:workloads:Monitor mySapMonitor /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Workloads/monitors/{monitorName}

Constructors

Link copied to clipboard
constructor(appLocation: Output<String>? = null, appServicePlanConfiguration: Output<AppServicePlanConfigurationArgs>? = null, identity: Output<ManagedServiceIdentityArgs>? = null, location: Output<String>? = null, logAnalyticsWorkspaceArmId: Output<String>? = null, managedResourceGroupConfiguration: Output<ManagedResourceGroupConfigurationArgs>? = null, monitorName: Output<String>? = null, monitorSubnet: Output<String>? = null, resourceGroupName: Output<String>? = null, routingPreference: Output<Either<String, RoutingPreference>>? = null, tags: Output<Map<String, String>>? = null, zoneRedundancyPreference: Output<String>? = null)

Properties

Link copied to clipboard
val appLocation: Output<String>? = null

The SAP monitor resources will be deployed in the SAP monitoring region. The subnet region should be same as the SAP monitoring region.

Link copied to clipboard

App service plan configuration

Link copied to clipboard

The managed service identities assigned to this resource.

Link copied to clipboard
val location: Output<String>? = null

The geo-location where the resource lives

Link copied to clipboard
val logAnalyticsWorkspaceArmId: Output<String>? = null

The ARM ID of the Log Analytics Workspace that is used for SAP monitoring.

Link copied to clipboard

Managed resource group configuration

Link copied to clipboard
val monitorName: Output<String>? = null

Name of the SAP monitor resource.

Link copied to clipboard
val monitorSubnet: Output<String>? = null

The subnet which the SAP monitor will be deployed in

Link copied to clipboard
val resourceGroupName: Output<String>? = null

The name of the resource group. The name is case insensitive.

Link copied to clipboard
val routingPreference: Output<Either<String, RoutingPreference>>? = null

Sets the routing preference of the SAP monitor. By default only RFC1918 traffic is routed to the customer VNET.

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

Resource tags.

Link copied to clipboard
val zoneRedundancyPreference: Output<String>? = null

Sets the preference for zone redundancy on resources created for the SAP monitor. By default resources will be created which do not support zone redundancy.

Functions

Link copied to clipboard
open override fun toJava(): MonitorArgs