Guest Diagnostics Setting Args
data class GuestDiagnosticsSettingArgs(val dataSources: Output<List<DataSourceArgs>>? = null, val diagnosticSettingsName: Output<String>? = null, val location: Output<String>? = null, val osType: Output<String>? = null, val proxySetting: Output<String>? = null, val resourceGroupName: Output<String>? = null, val tags: Output<Map<String, String>>? = null) : ConvertibleToJava<GuestDiagnosticsSettingArgs>
Virtual machine guest diagnostics settings resource. Uses Azure REST API version 2018-06-01-preview. In version 1.x of the Azure Native provider, it used API version 2018-06-01-preview.
Example Usage
Create or update a guest diagnostic settings
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var guestDiagnosticsSetting = new AzureNative.Insights.GuestDiagnosticsSetting("guestDiagnosticsSetting", new()
{
DataSources = new[]
{
new AzureNative.Insights.Inputs.DataSourceArgs
{
Configuration = new AzureNative.Insights.Inputs.DataSourceConfigurationArgs
{
PerfCounters = new[]
{
new AzureNative.Insights.Inputs.PerformanceCounterConfigurationArgs
{
Name = "\\Process(_Total)\\%Processor Time",
SamplingPeriod = "PT1M",
},
new AzureNative.Insights.Inputs.PerformanceCounterConfigurationArgs
{
Name = "\\Process(_Total)\\Working Set",
SamplingPeriod = "PT1M",
},
},
},
Kind = "PerformanceCounter",
Sinks = new[]
{
new AzureNative.Insights.Inputs.SinkConfigurationArgs
{
Kind = "LogAnalytics",
},
},
},
new AzureNative.Insights.Inputs.DataSourceArgs
{
Configuration = new AzureNative.Insights.Inputs.DataSourceConfigurationArgs
{
Providers = new[]
{
new AzureNative.Insights.Inputs.EtwProviderConfigurationArgs
{
Id = "1",
},
new AzureNative.Insights.Inputs.EtwProviderConfigurationArgs
{
Id = "2",
},
},
},
Kind = "ETWProviders",
Sinks = new[]
{
new AzureNative.Insights.Inputs.SinkConfigurationArgs
{
Kind = "LogAnalytics",
},
},
},
new AzureNative.Insights.Inputs.DataSourceArgs
{
Configuration = new AzureNative.Insights.Inputs.DataSourceConfigurationArgs
{
EventLogs = new[]
{
new AzureNative.Insights.Inputs.EventLogConfigurationArgs
{
Filter = "SourceName == Xyz AND EventId = \"100\" AND $Xpath/Column=\"DCName\" = \"CatWoman\"",
LogName = "Application",
},
new AzureNative.Insights.Inputs.EventLogConfigurationArgs
{
Filter = "SourceName == Xyz AND EventId = \"100\" AND $Xpath/Column=\"DCName\" = \"BatMan\"",
LogName = "Application",
},
},
},
Kind = "WindowsEventLogs",
Sinks = new[]
{
new AzureNative.Insights.Inputs.SinkConfigurationArgs
{
Kind = "LogAnalytics",
},
},
},
},
DiagnosticSettingsName = "SampleDiagSetting",
Location = "Global",
OsType = "Windows",
ResourceGroupName = "Default-ResourceGroup",
Tags = null,
});
});
Content copied to clipboard
package main
import (
insights "github.com/pulumi/pulumi-azure-native-sdk/insights/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := insights.NewGuestDiagnosticsSetting(ctx, "guestDiagnosticsSetting", &insights.GuestDiagnosticsSettingArgs{
DataSources: insights.DataSourceArray{
&insights.DataSourceArgs{
Configuration: &insights.DataSourceConfigurationArgs{
PerfCounters: insights.PerformanceCounterConfigurationArray{
&insights.PerformanceCounterConfigurationArgs{
Name: pulumi.String("\\Process(_Total)\\%Processor Time"),
SamplingPeriod: pulumi.String("PT1M"),
},
&insights.PerformanceCounterConfigurationArgs{
Name: pulumi.String("\\Process(_Total)\\Working Set"),
SamplingPeriod: pulumi.String("PT1M"),
},
},
},
Kind: pulumi.String("PerformanceCounter"),
Sinks: insights.SinkConfigurationArray{
&insights.SinkConfigurationArgs{
Kind: pulumi.String("LogAnalytics"),
},
},
},
&insights.DataSourceArgs{
Configuration: &insights.DataSourceConfigurationArgs{
Providers: insights.EtwProviderConfigurationArray{
&insights.EtwProviderConfigurationArgs{
Id: pulumi.String("1"),
},
&insights.EtwProviderConfigurationArgs{
Id: pulumi.String("2"),
},
},
},
Kind: pulumi.String("ETWProviders"),
Sinks: insights.SinkConfigurationArray{
&insights.SinkConfigurationArgs{
Kind: pulumi.String("LogAnalytics"),
},
},
},
&insights.DataSourceArgs{
Configuration: &insights.DataSourceConfigurationArgs{
EventLogs: insights.EventLogConfigurationArray{
&insights.EventLogConfigurationArgs{
Filter: pulumi.String("SourceName == Xyz AND EventId = \"100\" AND $Xpath/Column=\"DCName\" = \"CatWoman\""),
LogName: pulumi.String("Application"),
},
&insights.EventLogConfigurationArgs{
Filter: pulumi.String("SourceName == Xyz AND EventId = \"100\" AND $Xpath/Column=\"DCName\" = \"BatMan\""),
LogName: pulumi.String("Application"),
},
},
},
Kind: pulumi.String("WindowsEventLogs"),
Sinks: insights.SinkConfigurationArray{
&insights.SinkConfigurationArgs{
Kind: pulumi.String("LogAnalytics"),
},
},
},
},
DiagnosticSettingsName: pulumi.String("SampleDiagSetting"),
Location: pulumi.String("Global"),
OsType: pulumi.String("Windows"),
ResourceGroupName: pulumi.String("Default-ResourceGroup"),
Tags: pulumi.StringMap{},
})
if err != nil {
return err
}
return nil
})
}
Content copied to clipboard
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.insights.GuestDiagnosticsSetting;
import com.pulumi.azurenative.insights.GuestDiagnosticsSettingArgs;
import com.pulumi.azurenative.insights.inputs.DataSourceArgs;
import com.pulumi.azurenative.insights.inputs.DataSourceConfigurationArgs;
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 guestDiagnosticsSetting = new GuestDiagnosticsSetting("guestDiagnosticsSetting", GuestDiagnosticsSettingArgs.builder()
.dataSources(
DataSourceArgs.builder()
.configuration(DataSourceConfigurationArgs.builder()
.perfCounters(
PerformanceCounterConfigurationArgs.builder()
.name("\\Process(_Total)\\%Processor Time")
.samplingPeriod("PT1M")
.build(),
PerformanceCounterConfigurationArgs.builder()
.name("\\Process(_Total)\\Working Set")
.samplingPeriod("PT1M")
.build())
.build())
.kind("PerformanceCounter")
.sinks(SinkConfigurationArgs.builder()
.kind("LogAnalytics")
.build())
.build(),
DataSourceArgs.builder()
.configuration(DataSourceConfigurationArgs.builder()
.providers(
EtwProviderConfigurationArgs.builder()
.id(1)
.build(),
EtwProviderConfigurationArgs.builder()
.id(2)
.build())
.build())
.kind("ETWProviders")
.sinks(SinkConfigurationArgs.builder()
.kind("LogAnalytics")
.build())
.build(),
DataSourceArgs.builder()
.configuration(DataSourceConfigurationArgs.builder()
.eventLogs(
EventLogConfigurationArgs.builder()
.filter("SourceName == Xyz AND EventId = \"100\" AND $Xpath/Column=\"DCName\" = \"CatWoman\"")
.logName("Application")
.build(),
EventLogConfigurationArgs.builder()
.filter("SourceName == Xyz AND EventId = \"100\" AND $Xpath/Column=\"DCName\" = \"BatMan\"")
.logName("Application")
.build())
.build())
.kind("WindowsEventLogs")
.sinks(SinkConfigurationArgs.builder()
.kind("LogAnalytics")
.build())
.build())
.diagnosticSettingsName("SampleDiagSetting")
.location("Global")
.osType("Windows")
.resourceGroupName("Default-ResourceGroup")
.tags()
.build());
}
}
Content copied to clipboard
Import
An existing resource can be imported using its type token, name, and identifier, e.g.
$ pulumi import azure-native:insights:GuestDiagnosticsSetting productionMachineSetting /subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/microsoft.insights/guestDiagnosticSettings/{diagnosticSettingsName}
Content copied to clipboard
Constructors
Link copied to clipboard
constructor(dataSources: Output<List<DataSourceArgs>>? = null, diagnosticSettingsName: Output<String>? = null, location: Output<String>? = null, osType: Output<String>? = null, proxySetting: Output<String>? = null, resourceGroupName: Output<String>? = null, tags: Output<Map<String, String>>? = null)