PipelineGroup

class PipelineGroup : KotlinCustomResource

A pipeline group definition. Uses Azure REST API version 2024-10-01-preview. In version 2.x of the Azure Native provider, it used API version 2023-10-01-preview. Other available API versions: 2023-10-01-preview. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native monitor [ApiVersion]. See the ../../../version-guide/#accessing-any-api-version-via-local-packages for details.

Example Usage

Create a PipelineGroup instance using UDP receiver

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var pipelineGroup = new AzureNative.Monitor.PipelineGroup("pipelineGroup", new()
{
ExtendedLocation = new AzureNative.Monitor.Inputs.AzureResourceManagerCommonTypesExtendedLocationArgs
{
Name = "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.extendedlocation/customlocations/myTestCustomLocation",
Type = AzureNative.Monitor.ExtendedLocationType.CustomLocation,
},
Location = "eastus2",
PipelineGroupName = "plGroup1",
Properties = new AzureNative.Monitor.Inputs.PipelineGroupPropertiesArgs
{
Exporters = new[]
{
new AzureNative.Monitor.Inputs.ExporterArgs
{
AzureMonitorWorkspaceLogs = new AzureNative.Monitor.Inputs.AzureMonitorWorkspaceLogsExporterArgs
{
Api = new AzureNative.Monitor.Inputs.AzureMonitorWorkspaceLogsApiConfigArgs
{
DataCollectionEndpointUrl = "https://logs-myingestion-eb0s.eastus-1.ingest.monitor.azure.com",
DataCollectionRule = "dcr-00000000000000000000000000000000",
Schema = new AzureNative.Monitor.Inputs.SchemaMapArgs
{
RecordMap = new[]
{
new AzureNative.Monitor.Inputs.RecordMapArgs
{
From = "body",
To = "Body",
},
new AzureNative.Monitor.Inputs.RecordMapArgs
{
From = "severity_text",
To = "SeverityText",
},
new AzureNative.Monitor.Inputs.RecordMapArgs
{
From = "time_unix_nano",
To = "TimeGenerated",
},
},
},
Stream = "Custom-MyTableRawData_CL",
},
Concurrency = new AzureNative.Monitor.Inputs.ConcurrencyConfigurationArgs
{
BatchQueueSize = 100,
WorkerCount = 4,
},
},
Name = "my-workspace-logs-exporter1",
Type = AzureNative.Monitor.ExporterType.AzureMonitorWorkspaceLogs,
},
},
Processors = new() { },
Receivers = new[]
{
new AzureNative.Monitor.Inputs.ReceiverArgs
{
Name = "udp-receiver1",
Type = AzureNative.Monitor.ReceiverType.UDP,
Udp = new AzureNative.Monitor.Inputs.UdpReceiverArgs
{
Encoding = AzureNative.Monitor.StreamEncodingType.Utf_8,
Endpoint = "0.0.0.0:518",
},
},
},
Service = new AzureNative.Monitor.Inputs.ServiceArgs
{
Pipelines = new[]
{
new AzureNative.Monitor.Inputs.PipelineArgs
{
Exporters = new[]
{
"my-workspace-logs-exporter1",
},
Name = "MyPipelineForLogs1",
Processors = new() { },
Receivers = new[]
{
"udp-receiver1",
},
Type = AzureNative.Monitor.PipelineType.Logs,
},
},
},
},
ResourceGroupName = "myResourceGroup",
Tags =
{
{ "tag1", "A" },
{ "tag2", "B" },
},
});
});
package main
import (
monitor "github.com/pulumi/pulumi-azure-native-sdk/monitor/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := monitor.NewPipelineGroup(ctx, "pipelineGroup", &monitor.PipelineGroupArgs{
ExtendedLocation: &monitor.AzureResourceManagerCommonTypesExtendedLocationArgs{
Name: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.extendedlocation/customlocations/myTestCustomLocation"),
Type: pulumi.String(monitor.ExtendedLocationTypeCustomLocation),
},
Location: pulumi.String("eastus2"),
PipelineGroupName: pulumi.String("plGroup1"),
Properties: &monitor.PipelineGroupPropertiesArgs{
Exporters: monitor.ExporterArray{
&monitor.ExporterArgs{
AzureMonitorWorkspaceLogs: &monitor.AzureMonitorWorkspaceLogsExporterArgs{
Api: &monitor.AzureMonitorWorkspaceLogsApiConfigArgs{
DataCollectionEndpointUrl: pulumi.String("https://logs-myingestion-eb0s.eastus-1.ingest.monitor.azure.com"),
DataCollectionRule: pulumi.String("dcr-00000000000000000000000000000000"),
Schema: &monitor.SchemaMapArgs{
RecordMap: monitor.RecordMapArray{
&monitor.RecordMapArgs{
From: pulumi.String("body"),
To: pulumi.String("Body"),
},
&monitor.RecordMapArgs{
From: pulumi.String("severity_text"),
To: pulumi.String("SeverityText"),
},
&monitor.RecordMapArgs{
From: pulumi.String("time_unix_nano"),
To: pulumi.String("TimeGenerated"),
},
},
},
Stream: pulumi.String("Custom-MyTableRawData_CL"),
},
Concurrency: &monitor.ConcurrencyConfigurationArgs{
BatchQueueSize: pulumi.Int(100),
WorkerCount: pulumi.Int(4),
},
},
Name: pulumi.String("my-workspace-logs-exporter1"),
Type: pulumi.String(monitor.ExporterTypeAzureMonitorWorkspaceLogs),
},
},
Processors: monitor.ProcessorArray{},
Receivers: monitor.ReceiverArray{
&monitor.ReceiverArgs{
Name: pulumi.String("udp-receiver1"),
Type: pulumi.String(monitor.ReceiverTypeUDP),
Udp: &monitor.UdpReceiverArgs{
Encoding: pulumi.String(monitor.StreamEncodingType_Utf_8),
Endpoint: pulumi.String("0.0.0.0:518"),
},
},
},
Service: &monitor.ServiceArgs{
Pipelines: monitor.PipelineArray{
&monitor.PipelineArgs{
Exporters: pulumi.StringArray{
pulumi.String("my-workspace-logs-exporter1"),
},
Name: pulumi.String("MyPipelineForLogs1"),
Processors: pulumi.StringArray{},
Receivers: pulumi.StringArray{
pulumi.String("udp-receiver1"),
},
Type: pulumi.String(monitor.PipelineTypeLogs),
},
},
},
},
ResourceGroupName: pulumi.String("myResourceGroup"),
Tags: pulumi.StringMap{
"tag1": pulumi.String("A"),
"tag2": pulumi.String("B"),
},
})
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.monitor.PipelineGroup;
import com.pulumi.azurenative.monitor.PipelineGroupArgs;
import com.pulumi.azurenative.monitor.inputs.AzureResourceManagerCommonTypesExtendedLocationArgs;
import com.pulumi.azurenative.monitor.inputs.PipelineGroupPropertiesArgs;
import com.pulumi.azurenative.monitor.inputs.ServiceArgs;
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 pipelineGroup = new PipelineGroup("pipelineGroup", PipelineGroupArgs.builder()
.extendedLocation(AzureResourceManagerCommonTypesExtendedLocationArgs.builder()
.name("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.extendedlocation/customlocations/myTestCustomLocation")
.type("CustomLocation")
.build())
.location("eastus2")
.pipelineGroupName("plGroup1")
.properties(PipelineGroupPropertiesArgs.builder()
.exporters(ExporterArgs.builder()
.azureMonitorWorkspaceLogs(AzureMonitorWorkspaceLogsExporterArgs.builder()
.api(AzureMonitorWorkspaceLogsApiConfigArgs.builder()
.dataCollectionEndpointUrl("https://logs-myingestion-eb0s.eastus-1.ingest.monitor.azure.com")
.dataCollectionRule("dcr-00000000000000000000000000000000")
.schema(SchemaMapArgs.builder()
.recordMap(
RecordMapArgs.builder()
.from("body")
.to("Body")
.build(),
RecordMapArgs.builder()
.from("severity_text")
.to("SeverityText")
.build(),
RecordMapArgs.builder()
.from("time_unix_nano")
.to("TimeGenerated")
.build())
.build())
.stream("Custom-MyTableRawData_CL")
.build())
.concurrency(ConcurrencyConfigurationArgs.builder()
.batchQueueSize(100)
.workerCount(4)
.build())
.build())
.name("my-workspace-logs-exporter1")
.type("AzureMonitorWorkspaceLogs")
.build())
.processors()
.receivers(ReceiverArgs.builder()
.name("udp-receiver1")
.type("UDP")
.udp(UdpReceiverArgs.builder()
.encoding("utf-8")
.endpoint("0.0.0.0:518")
.build())
.build())
.service(ServiceArgs.builder()
.pipelines(PipelineArgs.builder()
.exporters("my-workspace-logs-exporter1")
.name("MyPipelineForLogs1")
.processors()
.receivers("udp-receiver1")
.type("Logs")
.build())
.build())
.build())
.resourceGroupName("myResourceGroup")
.tags(Map.ofEntries(
Map.entry("tag1", "A"),
Map.entry("tag2", "B")
))
.build());
}
}

Create a PipelineGroup instance using a UDP receiver with json array mapper

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var pipelineGroup = new AzureNative.Monitor.PipelineGroup("pipelineGroup", new()
{
ExtendedLocation = new AzureNative.Monitor.Inputs.AzureResourceManagerCommonTypesExtendedLocationArgs
{
Name = "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.extendedlocation/customlocations/myTestCustomLocation",
Type = AzureNative.Monitor.ExtendedLocationType.CustomLocation,
},
Location = "eastus2",
PipelineGroupName = "plGroup1",
Properties = new AzureNative.Monitor.Inputs.PipelineGroupPropertiesArgs
{
Exporters = new[]
{
new AzureNative.Monitor.Inputs.ExporterArgs
{
AzureMonitorWorkspaceLogs = new AzureNative.Monitor.Inputs.AzureMonitorWorkspaceLogsExporterArgs
{
Api = new AzureNative.Monitor.Inputs.AzureMonitorWorkspaceLogsApiConfigArgs
{
DataCollectionEndpointUrl = "https://logs-myingestion-eb0s.eastus-1.ingest.monitor.azure.com",
DataCollectionRule = "dcr-00000000000000000000000000000000",
Schema = new AzureNative.Monitor.Inputs.SchemaMapArgs
{
RecordMap = new[]
{
new AzureNative.Monitor.Inputs.RecordMapArgs
{
From = "body",
To = "Body",
},
new AzureNative.Monitor.Inputs.RecordMapArgs
{
From = "severity_text",
To = "SeverityText",
},
new AzureNative.Monitor.Inputs.RecordMapArgs
{
From = "time_unix_nano",
To = "TimeGenerated",
},
},
},
Stream = "Custom-MyTableRawData_CL",
},
Concurrency = new AzureNative.Monitor.Inputs.ConcurrencyConfigurationArgs
{
BatchQueueSize = 100,
WorkerCount = 4,
},
},
Name = "my-workspace-logs-exporter1",
Type = AzureNative.Monitor.ExporterType.AzureMonitorWorkspaceLogs,
},
},
Processors = new() { },
Receivers = new[]
{
new AzureNative.Monitor.Inputs.ReceiverArgs
{
Name = "udp-receiver1",
Type = AzureNative.Monitor.ReceiverType.UDP,
Udp = new AzureNative.Monitor.Inputs.UdpReceiverArgs
{
Encoding = AzureNative.Monitor.StreamEncodingType.Utf_8,
Endpoint = "0.0.0.0:518",
JsonArrayMapper = new AzureNative.Monitor.Inputs.JsonArrayMapperArgs
{
DestinationField = new AzureNative.Monitor.Inputs.JsonMapperDestinationFieldArgs
{
Destination = AzureNative.Monitor.JsonMapperElement.Attributes,
},
Keys = new[]
{
"key1",
"key2",
"key3",
},
SourceField = new AzureNative.Monitor.Inputs.JsonMapperSourceFieldArgs
{
FieldName = "field1",
},
},
},
},
},
Service = new AzureNative.Monitor.Inputs.ServiceArgs
{
Pipelines = new[]
{
new AzureNative.Monitor.Inputs.PipelineArgs
{
Exporters = new[]
{
"my-workspace-logs-exporter1",
},
Name = "MyPipelineForLogs1",
Processors = new() { },
Receivers = new[]
{
"udp-receiver1",
},
Type = AzureNative.Monitor.PipelineType.Logs,
},
},
},
},
ResourceGroupName = "myResourceGroup",
Tags =
{
{ "tag1", "A" },
{ "tag2", "B" },
},
});
});
package main
import (
monitor "github.com/pulumi/pulumi-azure-native-sdk/monitor/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := monitor.NewPipelineGroup(ctx, "pipelineGroup", &monitor.PipelineGroupArgs{
ExtendedLocation: &monitor.AzureResourceManagerCommonTypesExtendedLocationArgs{
Name: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.extendedlocation/customlocations/myTestCustomLocation"),
Type: pulumi.String(monitor.ExtendedLocationTypeCustomLocation),
},
Location: pulumi.String("eastus2"),
PipelineGroupName: pulumi.String("plGroup1"),
Properties: &monitor.PipelineGroupPropertiesArgs{
Exporters: monitor.ExporterArray{
&monitor.ExporterArgs{
AzureMonitorWorkspaceLogs: &monitor.AzureMonitorWorkspaceLogsExporterArgs{
Api: &monitor.AzureMonitorWorkspaceLogsApiConfigArgs{
DataCollectionEndpointUrl: pulumi.String("https://logs-myingestion-eb0s.eastus-1.ingest.monitor.azure.com"),
DataCollectionRule: pulumi.String("dcr-00000000000000000000000000000000"),
Schema: &monitor.SchemaMapArgs{
RecordMap: monitor.RecordMapArray{
&monitor.RecordMapArgs{
From: pulumi.String("body"),
To: pulumi.String("Body"),
},
&monitor.RecordMapArgs{
From: pulumi.String("severity_text"),
To: pulumi.String("SeverityText"),
},
&monitor.RecordMapArgs{
From: pulumi.String("time_unix_nano"),
To: pulumi.String("TimeGenerated"),
},
},
},
Stream: pulumi.String("Custom-MyTableRawData_CL"),
},
Concurrency: &monitor.ConcurrencyConfigurationArgs{
BatchQueueSize: pulumi.Int(100),
WorkerCount: pulumi.Int(4),
},
},
Name: pulumi.String("my-workspace-logs-exporter1"),
Type: pulumi.String(monitor.ExporterTypeAzureMonitorWorkspaceLogs),
},
},
Processors: monitor.ProcessorArray{},
Receivers: monitor.ReceiverArray{
&monitor.ReceiverArgs{
Name: pulumi.String("udp-receiver1"),
Type: pulumi.String(monitor.ReceiverTypeUDP),
Udp: &monitor.UdpReceiverArgs{
Encoding: pulumi.String(monitor.StreamEncodingType_Utf_8),
Endpoint: pulumi.String("0.0.0.0:518"),
JsonArrayMapper: &monitor.JsonArrayMapperArgs{
DestinationField: &monitor.JsonMapperDestinationFieldArgs{
Destination: pulumi.String(monitor.JsonMapperElementAttributes),
},
Keys: pulumi.StringArray{
pulumi.String("key1"),
pulumi.String("key2"),
pulumi.String("key3"),
},
SourceField: &monitor.JsonMapperSourceFieldArgs{
FieldName: pulumi.String("field1"),
},
},
},
},
},
Service: &monitor.ServiceArgs{
Pipelines: monitor.PipelineArray{
&monitor.PipelineArgs{
Exporters: pulumi.StringArray{
pulumi.String("my-workspace-logs-exporter1"),
},
Name: pulumi.String("MyPipelineForLogs1"),
Processors: pulumi.StringArray{},
Receivers: pulumi.StringArray{
pulumi.String("udp-receiver1"),
},
Type: pulumi.String(monitor.PipelineTypeLogs),
},
},
},
},
ResourceGroupName: pulumi.String("myResourceGroup"),
Tags: pulumi.StringMap{
"tag1": pulumi.String("A"),
"tag2": pulumi.String("B"),
},
})
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.monitor.PipelineGroup;
import com.pulumi.azurenative.monitor.PipelineGroupArgs;
import com.pulumi.azurenative.monitor.inputs.AzureResourceManagerCommonTypesExtendedLocationArgs;
import com.pulumi.azurenative.monitor.inputs.PipelineGroupPropertiesArgs;
import com.pulumi.azurenative.monitor.inputs.ServiceArgs;
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 pipelineGroup = new PipelineGroup("pipelineGroup", PipelineGroupArgs.builder()
.extendedLocation(AzureResourceManagerCommonTypesExtendedLocationArgs.builder()
.name("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.extendedlocation/customlocations/myTestCustomLocation")
.type("CustomLocation")
.build())
.location("eastus2")
.pipelineGroupName("plGroup1")
.properties(PipelineGroupPropertiesArgs.builder()
.exporters(ExporterArgs.builder()
.azureMonitorWorkspaceLogs(AzureMonitorWorkspaceLogsExporterArgs.builder()
.api(AzureMonitorWorkspaceLogsApiConfigArgs.builder()
.dataCollectionEndpointUrl("https://logs-myingestion-eb0s.eastus-1.ingest.monitor.azure.com")
.dataCollectionRule("dcr-00000000000000000000000000000000")
.schema(SchemaMapArgs.builder()
.recordMap(
RecordMapArgs.builder()
.from("body")
.to("Body")
.build(),
RecordMapArgs.builder()
.from("severity_text")
.to("SeverityText")
.build(),
RecordMapArgs.builder()
.from("time_unix_nano")
.to("TimeGenerated")
.build())
.build())
.stream("Custom-MyTableRawData_CL")
.build())
.concurrency(ConcurrencyConfigurationArgs.builder()
.batchQueueSize(100)
.workerCount(4)
.build())
.build())
.name("my-workspace-logs-exporter1")
.type("AzureMonitorWorkspaceLogs")
.build())
.processors()
.receivers(ReceiverArgs.builder()
.name("udp-receiver1")
.type("UDP")
.udp(UdpReceiverArgs.builder()
.encoding("utf-8")
.endpoint("0.0.0.0:518")
.jsonArrayMapper(JsonArrayMapperArgs.builder()
.destinationField(JsonMapperDestinationFieldArgs.builder()
.destination("attributes")
.build())
.keys(
"key1",
"key2",
"key3")
.sourceField(JsonMapperSourceFieldArgs.builder()
.fieldName("field1")
.build())
.build())
.build())
.build())
.service(ServiceArgs.builder()
.pipelines(PipelineArgs.builder()
.exporters("my-workspace-logs-exporter1")
.name("MyPipelineForLogs1")
.processors()
.receivers("udp-receiver1")
.type("Logs")
.build())
.build())
.build())
.resourceGroupName("myResourceGroup")
.tags(Map.ofEntries(
Map.entry("tag1", "A"),
Map.entry("tag2", "B")
))
.build());
}
}

Create a PipelineGroup instance using a syslog receiver

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var pipelineGroup = new AzureNative.Monitor.PipelineGroup("pipelineGroup", new()
{
ExtendedLocation = new AzureNative.Monitor.Inputs.AzureResourceManagerCommonTypesExtendedLocationArgs
{
Name = "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.extendedlocation/customlocations/myTestCustomLocation",
Type = AzureNative.Monitor.ExtendedLocationType.CustomLocation,
},
Location = "eastus2",
PipelineGroupName = "plGroup1",
Properties = new AzureNative.Monitor.Inputs.PipelineGroupPropertiesArgs
{
Exporters = new[]
{
new AzureNative.Monitor.Inputs.ExporterArgs
{
AzureMonitorWorkspaceLogs = new AzureNative.Monitor.Inputs.AzureMonitorWorkspaceLogsExporterArgs
{
Api = new AzureNative.Monitor.Inputs.AzureMonitorWorkspaceLogsApiConfigArgs
{
DataCollectionEndpointUrl = "https://logs-myingestion-eb0s.eastus-1.ingest.monitor.azure.com",
DataCollectionRule = "dcr-00000000000000000000000000000000",
Schema = new AzureNative.Monitor.Inputs.SchemaMapArgs
{
RecordMap = new[]
{
new AzureNative.Monitor.Inputs.RecordMapArgs
{
From = "body",
To = "Body",
},
new AzureNative.Monitor.Inputs.RecordMapArgs
{
From = "severity_text",
To = "SeverityText",
},
new AzureNative.Monitor.Inputs.RecordMapArgs
{
From = "time_unix_nano",
To = "TimeGenerated",
},
},
},
Stream = "Custom-MyTableRawData_CL",
},
Concurrency = new AzureNative.Monitor.Inputs.ConcurrencyConfigurationArgs
{
BatchQueueSize = 100,
WorkerCount = 4,
},
},
Name = "my-workspace-logs-exporter1",
Type = AzureNative.Monitor.ExporterType.AzureMonitorWorkspaceLogs,
},
},
Processors = new[]
{
new AzureNative.Monitor.Inputs.ProcessorArgs
{
Name = "batch-processor1",
Type = AzureNative.Monitor.ProcessorType.Batch,
},
},
Receivers = new[]
{
new AzureNative.Monitor.Inputs.ReceiverArgs
{
Name = "syslog-receiver1",
Syslog = new AzureNative.Monitor.Inputs.SyslogReceiverArgs
{
Endpoint = "0.0.0.0:514",
},
Type = AzureNative.Monitor.ReceiverType.Syslog,
},
},
Service = new AzureNative.Monitor.Inputs.ServiceArgs
{
Pipelines = new[]
{
new AzureNative.Monitor.Inputs.PipelineArgs
{
Exporters = new[]
{
"my-workspace-logs-exporter1",
},
Name = "MyPipelineForLogs1",
Processors = new[]
{
"batch-processor1",
},
Receivers = new[]
{
"syslog-receiver1",
},
Type = AzureNative.Monitor.PipelineType.Logs,
},
},
},
},
ResourceGroupName = "myResourceGroup",
Tags =
{
{ "tag1", "A" },
{ "tag2", "B" },
},
});
});
package main
import (
monitor "github.com/pulumi/pulumi-azure-native-sdk/monitor/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := monitor.NewPipelineGroup(ctx, "pipelineGroup", &monitor.PipelineGroupArgs{
ExtendedLocation: &monitor.AzureResourceManagerCommonTypesExtendedLocationArgs{
Name: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.extendedlocation/customlocations/myTestCustomLocation"),
Type: pulumi.String(monitor.ExtendedLocationTypeCustomLocation),
},
Location: pulumi.String("eastus2"),
PipelineGroupName: pulumi.String("plGroup1"),
Properties: &monitor.PipelineGroupPropertiesArgs{
Exporters: monitor.ExporterArray{
&monitor.ExporterArgs{
AzureMonitorWorkspaceLogs: &monitor.AzureMonitorWorkspaceLogsExporterArgs{
Api: &monitor.AzureMonitorWorkspaceLogsApiConfigArgs{
DataCollectionEndpointUrl: pulumi.String("https://logs-myingestion-eb0s.eastus-1.ingest.monitor.azure.com"),
DataCollectionRule: pulumi.String("dcr-00000000000000000000000000000000"),
Schema: &monitor.SchemaMapArgs{
RecordMap: monitor.RecordMapArray{
&monitor.RecordMapArgs{
From: pulumi.String("body"),
To: pulumi.String("Body"),
},
&monitor.RecordMapArgs{
From: pulumi.String("severity_text"),
To: pulumi.String("SeverityText"),
},
&monitor.RecordMapArgs{
From: pulumi.String("time_unix_nano"),
To: pulumi.String("TimeGenerated"),
},
},
},
Stream: pulumi.String("Custom-MyTableRawData_CL"),
},
Concurrency: &monitor.ConcurrencyConfigurationArgs{
BatchQueueSize: pulumi.Int(100),
WorkerCount: pulumi.Int(4),
},
},
Name: pulumi.String("my-workspace-logs-exporter1"),
Type: pulumi.String(monitor.ExporterTypeAzureMonitorWorkspaceLogs),
},
},
Processors: monitor.ProcessorArray{
&monitor.ProcessorArgs{
Name: pulumi.String("batch-processor1"),
Type: pulumi.String(monitor.ProcessorTypeBatch),
},
},
Receivers: monitor.ReceiverArray{
&monitor.ReceiverArgs{
Name: pulumi.String("syslog-receiver1"),
Syslog: &monitor.SyslogReceiverArgs{
Endpoint: pulumi.String("0.0.0.0:514"),
},
Type: pulumi.String(monitor.ReceiverTypeSyslog),
},
},
Service: &monitor.ServiceArgs{
Pipelines: monitor.PipelineArray{
&monitor.PipelineArgs{
Exporters: pulumi.StringArray{
pulumi.String("my-workspace-logs-exporter1"),
},
Name: pulumi.String("MyPipelineForLogs1"),
Processors: pulumi.StringArray{
pulumi.String("batch-processor1"),
},
Receivers: pulumi.StringArray{
pulumi.String("syslog-receiver1"),
},
Type: pulumi.String(monitor.PipelineTypeLogs),
},
},
},
},
ResourceGroupName: pulumi.String("myResourceGroup"),
Tags: pulumi.StringMap{
"tag1": pulumi.String("A"),
"tag2": pulumi.String("B"),
},
})
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.monitor.PipelineGroup;
import com.pulumi.azurenative.monitor.PipelineGroupArgs;
import com.pulumi.azurenative.monitor.inputs.AzureResourceManagerCommonTypesExtendedLocationArgs;
import com.pulumi.azurenative.monitor.inputs.PipelineGroupPropertiesArgs;
import com.pulumi.azurenative.monitor.inputs.ServiceArgs;
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 pipelineGroup = new PipelineGroup("pipelineGroup", PipelineGroupArgs.builder()
.extendedLocation(AzureResourceManagerCommonTypesExtendedLocationArgs.builder()
.name("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.extendedlocation/customlocations/myTestCustomLocation")
.type("CustomLocation")
.build())
.location("eastus2")
.pipelineGroupName("plGroup1")
.properties(PipelineGroupPropertiesArgs.builder()
.exporters(ExporterArgs.builder()
.azureMonitorWorkspaceLogs(AzureMonitorWorkspaceLogsExporterArgs.builder()
.api(AzureMonitorWorkspaceLogsApiConfigArgs.builder()
.dataCollectionEndpointUrl("https://logs-myingestion-eb0s.eastus-1.ingest.monitor.azure.com")
.dataCollectionRule("dcr-00000000000000000000000000000000")
.schema(SchemaMapArgs.builder()
.recordMap(
RecordMapArgs.builder()
.from("body")
.to("Body")
.build(),
RecordMapArgs.builder()
.from("severity_text")
.to("SeverityText")
.build(),
RecordMapArgs.builder()
.from("time_unix_nano")
.to("TimeGenerated")
.build())
.build())
.stream("Custom-MyTableRawData_CL")
.build())
.concurrency(ConcurrencyConfigurationArgs.builder()
.batchQueueSize(100)
.workerCount(4)
.build())
.build())
.name("my-workspace-logs-exporter1")
.type("AzureMonitorWorkspaceLogs")
.build())
.processors(ProcessorArgs.builder()
.name("batch-processor1")
.type("Batch")
.build())
.receivers(ReceiverArgs.builder()
.name("syslog-receiver1")
.syslog(SyslogReceiverArgs.builder()
.endpoint("0.0.0.0:514")
.build())
.type("Syslog")
.build())
.service(ServiceArgs.builder()
.pipelines(PipelineArgs.builder()
.exporters("my-workspace-logs-exporter1")
.name("MyPipelineForLogs1")
.processors("batch-processor1")
.receivers("syslog-receiver1")
.type("Logs")
.build())
.build())
.build())
.resourceGroupName("myResourceGroup")
.tags(Map.ofEntries(
Map.entry("tag1", "A"),
Map.entry("tag2", "B")
))
.build());
}
}

Create a PipelineGroup instance using a syslog receiver and cache.

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var pipelineGroup = new AzureNative.Monitor.PipelineGroup("pipelineGroup", new()
{
ExtendedLocation = new AzureNative.Monitor.Inputs.AzureResourceManagerCommonTypesExtendedLocationArgs
{
Name = "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.extendedlocation/customlocations/myTestCustomLocation",
Type = AzureNative.Monitor.ExtendedLocationType.CustomLocation,
},
Location = "eastus2",
PipelineGroupName = "plGroup1",
Properties = new AzureNative.Monitor.Inputs.PipelineGroupPropertiesArgs
{
Exporters = new[]
{
new AzureNative.Monitor.Inputs.ExporterArgs
{
AzureMonitorWorkspaceLogs = new AzureNative.Monitor.Inputs.AzureMonitorWorkspaceLogsExporterArgs
{
Api = new AzureNative.Monitor.Inputs.AzureMonitorWorkspaceLogsApiConfigArgs
{
DataCollectionEndpointUrl = "https://logs-myingestion-eb0s.eastus-1.ingest.monitor.azure.com",
DataCollectionRule = "dcr-00000000000000000000000000000000",
Schema = new AzureNative.Monitor.Inputs.SchemaMapArgs
{
RecordMap = new[]
{
new AzureNative.Monitor.Inputs.RecordMapArgs
{
From = "body",
To = "Body",
},
new AzureNative.Monitor.Inputs.RecordMapArgs
{
From = "severity_text",
To = "SeverityText",
},
new AzureNative.Monitor.Inputs.RecordMapArgs
{
From = "time_unix_nano",
To = "TimeGenerated",
},
},
},
Stream = "Custom-MyTableRawData_CL",
},
Cache = new AzureNative.Monitor.Inputs.CacheConfigurationArgs
{
MaxStorageUsage = 100,
RetentionPeriod = 10,
},
Concurrency = new AzureNative.Monitor.Inputs.ConcurrencyConfigurationArgs
{
BatchQueueSize = 100,
WorkerCount = 4,
},
},
Name = "my-workspace-logs-exporter1",
Type = AzureNative.Monitor.ExporterType.AzureMonitorWorkspaceLogs,
},
},
Processors = new[]
{
new AzureNative.Monitor.Inputs.ProcessorArgs
{
Name = "batch-processor1",
Type = AzureNative.Monitor.ProcessorType.Batch,
},
},
Receivers = new[]
{
new AzureNative.Monitor.Inputs.ReceiverArgs
{
Name = "syslog-receiver1",
Syslog = new AzureNative.Monitor.Inputs.SyslogReceiverArgs
{
Endpoint = "0.0.0.0:514",
},
Type = AzureNative.Monitor.ReceiverType.Syslog,
},
},
Service = new AzureNative.Monitor.Inputs.ServiceArgs
{
Pipelines = new[]
{
new AzureNative.Monitor.Inputs.PipelineArgs
{
Exporters = new[]
{
"my-workspace-logs-exporter1",
},
Name = "MyPipelineForLogs1",
Processors = new[]
{
"batch-processor1",
},
Receivers = new[]
{
"syslog-receiver1",
},
Type = AzureNative.Monitor.PipelineType.Logs,
},
},
},
},
ResourceGroupName = "myResourceGroup",
Tags =
{
{ "tag1", "A" },
{ "tag2", "B" },
},
});
});
package main
import (
monitor "github.com/pulumi/pulumi-azure-native-sdk/monitor/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := monitor.NewPipelineGroup(ctx, "pipelineGroup", &monitor.PipelineGroupArgs{
ExtendedLocation: &monitor.AzureResourceManagerCommonTypesExtendedLocationArgs{
Name: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.extendedlocation/customlocations/myTestCustomLocation"),
Type: pulumi.String(monitor.ExtendedLocationTypeCustomLocation),
},
Location: pulumi.String("eastus2"),
PipelineGroupName: pulumi.String("plGroup1"),
Properties: &monitor.PipelineGroupPropertiesArgs{
Exporters: monitor.ExporterArray{
&monitor.ExporterArgs{
AzureMonitorWorkspaceLogs: &monitor.AzureMonitorWorkspaceLogsExporterArgs{
Api: &monitor.AzureMonitorWorkspaceLogsApiConfigArgs{
DataCollectionEndpointUrl: pulumi.String("https://logs-myingestion-eb0s.eastus-1.ingest.monitor.azure.com"),
DataCollectionRule: pulumi.String("dcr-00000000000000000000000000000000"),
Schema: &monitor.SchemaMapArgs{
RecordMap: monitor.RecordMapArray{
&monitor.RecordMapArgs{
From: pulumi.String("body"),
To: pulumi.String("Body"),
},
&monitor.RecordMapArgs{
From: pulumi.String("severity_text"),
To: pulumi.String("SeverityText"),
},
&monitor.RecordMapArgs{
From: pulumi.String("time_unix_nano"),
To: pulumi.String("TimeGenerated"),
},
},
},
Stream: pulumi.String("Custom-MyTableRawData_CL"),
},
Cache: &monitor.CacheConfigurationArgs{
MaxStorageUsage: pulumi.Int(100),
RetentionPeriod: pulumi.Int(10),
},
Concurrency: &monitor.ConcurrencyConfigurationArgs{
BatchQueueSize: pulumi.Int(100),
WorkerCount: pulumi.Int(4),
},
},
Name: pulumi.String("my-workspace-logs-exporter1"),
Type: pulumi.String(monitor.ExporterTypeAzureMonitorWorkspaceLogs),
},
},
Processors: monitor.ProcessorArray{
&monitor.ProcessorArgs{
Name: pulumi.String("batch-processor1"),
Type: pulumi.String(monitor.ProcessorTypeBatch),
},
},
Receivers: monitor.ReceiverArray{
&monitor.ReceiverArgs{
Name: pulumi.String("syslog-receiver1"),
Syslog: &monitor.SyslogReceiverArgs{
Endpoint: pulumi.String("0.0.0.0:514"),
},
Type: pulumi.String(monitor.ReceiverTypeSyslog),
},
},
Service: &monitor.ServiceArgs{
Pipelines: monitor.PipelineArray{
&monitor.PipelineArgs{
Exporters: pulumi.StringArray{
pulumi.String("my-workspace-logs-exporter1"),
},
Name: pulumi.String("MyPipelineForLogs1"),
Processors: pulumi.StringArray{
pulumi.String("batch-processor1"),
},
Receivers: pulumi.StringArray{
pulumi.String("syslog-receiver1"),
},
Type: pulumi.String(monitor.PipelineTypeLogs),
},
},
},
},
ResourceGroupName: pulumi.String("myResourceGroup"),
Tags: pulumi.StringMap{
"tag1": pulumi.String("A"),
"tag2": pulumi.String("B"),
},
})
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.monitor.PipelineGroup;
import com.pulumi.azurenative.monitor.PipelineGroupArgs;
import com.pulumi.azurenative.monitor.inputs.AzureResourceManagerCommonTypesExtendedLocationArgs;
import com.pulumi.azurenative.monitor.inputs.PipelineGroupPropertiesArgs;
import com.pulumi.azurenative.monitor.inputs.ServiceArgs;
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 pipelineGroup = new PipelineGroup("pipelineGroup", PipelineGroupArgs.builder()
.extendedLocation(AzureResourceManagerCommonTypesExtendedLocationArgs.builder()
.name("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.extendedlocation/customlocations/myTestCustomLocation")
.type("CustomLocation")
.build())
.location("eastus2")
.pipelineGroupName("plGroup1")
.properties(PipelineGroupPropertiesArgs.builder()
.exporters(ExporterArgs.builder()
.azureMonitorWorkspaceLogs(AzureMonitorWorkspaceLogsExporterArgs.builder()
.api(AzureMonitorWorkspaceLogsApiConfigArgs.builder()
.dataCollectionEndpointUrl("https://logs-myingestion-eb0s.eastus-1.ingest.monitor.azure.com")
.dataCollectionRule("dcr-00000000000000000000000000000000")
.schema(SchemaMapArgs.builder()
.recordMap(
RecordMapArgs.builder()
.from("body")
.to("Body")
.build(),
RecordMapArgs.builder()
.from("severity_text")
.to("SeverityText")
.build(),
RecordMapArgs.builder()
.from("time_unix_nano")
.to("TimeGenerated")
.build())
.build())
.stream("Custom-MyTableRawData_CL")
.build())
.cache(CacheConfigurationArgs.builder()
.maxStorageUsage(100)
.retentionPeriod(10)
.build())
.concurrency(ConcurrencyConfigurationArgs.builder()
.batchQueueSize(100)
.workerCount(4)
.build())
.build())
.name("my-workspace-logs-exporter1")
.type("AzureMonitorWorkspaceLogs")
.build())
.processors(ProcessorArgs.builder()
.name("batch-processor1")
.type("Batch")
.build())
.receivers(ReceiverArgs.builder()
.name("syslog-receiver1")
.syslog(SyslogReceiverArgs.builder()
.endpoint("0.0.0.0:514")
.build())
.type("Syslog")
.build())
.service(ServiceArgs.builder()
.pipelines(PipelineArgs.builder()
.exporters("my-workspace-logs-exporter1")
.name("MyPipelineForLogs1")
.processors("batch-processor1")
.receivers("syslog-receiver1")
.type("Logs")
.build())
.build())
.build())
.resourceGroupName("myResourceGroup")
.tags(Map.ofEntries(
Map.entry("tag1", "A"),
Map.entry("tag2", "B")
))
.build());
}
}

Create a PipelineGroup instance using a syslog receiver and networking configurations.

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var pipelineGroup = new AzureNative.Monitor.PipelineGroup("pipelineGroup", new()
{
ExtendedLocation = new AzureNative.Monitor.Inputs.AzureResourceManagerCommonTypesExtendedLocationArgs
{
Name = "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.extendedlocation/customlocations/myTestCustomLocation",
Type = AzureNative.Monitor.ExtendedLocationType.CustomLocation,
},
Location = "eastus2",
PipelineGroupName = "plGroup1",
Properties = new AzureNative.Monitor.Inputs.PipelineGroupPropertiesArgs
{
Exporters = new[]
{
new AzureNative.Monitor.Inputs.ExporterArgs
{
AzureMonitorWorkspaceLogs = new AzureNative.Monitor.Inputs.AzureMonitorWorkspaceLogsExporterArgs
{
Api = new AzureNative.Monitor.Inputs.AzureMonitorWorkspaceLogsApiConfigArgs
{
DataCollectionEndpointUrl = "https://logs-myingestion-eb0s.eastus-1.ingest.monitor.azure.com",
DataCollectionRule = "dcr-00000000000000000000000000000000",
Schema = new AzureNative.Monitor.Inputs.SchemaMapArgs
{
RecordMap = new[]
{
new AzureNative.Monitor.Inputs.RecordMapArgs
{
From = "body",
To = "Body",
},
new AzureNative.Monitor.Inputs.RecordMapArgs
{
From = "severity_text",
To = "SeverityText",
},
new AzureNative.Monitor.Inputs.RecordMapArgs
{
From = "time_unix_nano",
To = "TimeGenerated",
},
},
},
Stream = "Custom-MyTableRawData_CL",
},
Concurrency = new AzureNative.Monitor.Inputs.ConcurrencyConfigurationArgs
{
BatchQueueSize = 100,
WorkerCount = 4,
},
},
Name = "my-workspace-logs-exporter1",
Type = AzureNative.Monitor.ExporterType.AzureMonitorWorkspaceLogs,
},
},
NetworkingConfigurations = new[]
{
new AzureNative.Monitor.Inputs.NetworkingConfigurationArgs
{
ExternalNetworkingMode = AzureNative.Monitor.ExternalNetworkingMode.LoadBalancerOnly,
Host = "azuremonitorpipeline.contoso.com",
Routes = new[]
{
new AzureNative.Monitor.Inputs.NetworkingRouteArgs
{
Receiver = "syslog-receiver1",
},
},
},
},
Processors = new() { },
Receivers = new[]
{
new AzureNative.Monitor.Inputs.ReceiverArgs
{
Name = "syslog-receiver1",
Syslog = new AzureNative.Monitor.Inputs.SyslogReceiverArgs
{
Endpoint = "0.0.0.0:514",
},
Type = AzureNative.Monitor.ReceiverType.Syslog,
},
},
Service = new AzureNative.Monitor.Inputs.ServiceArgs
{
Pipelines = new[]
{
new AzureNative.Monitor.Inputs.PipelineArgs
{
Exporters = new[]
{
"my-workspace-logs-exporter1",
},
Name = "MyPipelineForLogs1",
Processors = new() { },
Receivers = new[]
{
"syslog-receiver1",
},
Type = AzureNative.Monitor.PipelineType.Logs,
},
},
},
},
ResourceGroupName = "myResourceGroup",
Tags =
{
{ "tag1", "A" },
{ "tag2", "B" },
},
});
});
package main
import (
monitor "github.com/pulumi/pulumi-azure-native-sdk/monitor/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := monitor.NewPipelineGroup(ctx, "pipelineGroup", &monitor.PipelineGroupArgs{
ExtendedLocation: &monitor.AzureResourceManagerCommonTypesExtendedLocationArgs{
Name: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.extendedlocation/customlocations/myTestCustomLocation"),
Type: pulumi.String(monitor.ExtendedLocationTypeCustomLocation),
},
Location: pulumi.String("eastus2"),
PipelineGroupName: pulumi.String("plGroup1"),
Properties: &monitor.PipelineGroupPropertiesArgs{
Exporters: monitor.ExporterArray{
&monitor.ExporterArgs{
AzureMonitorWorkspaceLogs: &monitor.AzureMonitorWorkspaceLogsExporterArgs{
Api: &monitor.AzureMonitorWorkspaceLogsApiConfigArgs{
DataCollectionEndpointUrl: pulumi.String("https://logs-myingestion-eb0s.eastus-1.ingest.monitor.azure.com"),
DataCollectionRule: pulumi.String("dcr-00000000000000000000000000000000"),
Schema: &monitor.SchemaMapArgs{
RecordMap: monitor.RecordMapArray{
&monitor.RecordMapArgs{
From: pulumi.String("body"),
To: pulumi.String("Body"),
},
&monitor.RecordMapArgs{
From: pulumi.String("severity_text"),
To: pulumi.String("SeverityText"),
},
&monitor.RecordMapArgs{
From: pulumi.String("time_unix_nano"),
To: pulumi.String("TimeGenerated"),
},
},
},
Stream: pulumi.String("Custom-MyTableRawData_CL"),
},
Concurrency: &monitor.ConcurrencyConfigurationArgs{
BatchQueueSize: pulumi.Int(100),
WorkerCount: pulumi.Int(4),
},
},
Name: pulumi.String("my-workspace-logs-exporter1"),
Type: pulumi.String(monitor.ExporterTypeAzureMonitorWorkspaceLogs),
},
},
NetworkingConfigurations: monitor.NetworkingConfigurationArray{
&monitor.NetworkingConfigurationArgs{
ExternalNetworkingMode: pulumi.String(monitor.ExternalNetworkingModeLoadBalancerOnly),
Host: pulumi.String("azuremonitorpipeline.contoso.com"),
Routes: monitor.NetworkingRouteArray{
&monitor.NetworkingRouteArgs{
Receiver: pulumi.String("syslog-receiver1"),
},
},
},
},
Processors: monitor.ProcessorArray{},
Receivers: monitor.ReceiverArray{
&monitor.ReceiverArgs{
Name: pulumi.String("syslog-receiver1"),
Syslog: &monitor.SyslogReceiverArgs{
Endpoint: pulumi.String("0.0.0.0:514"),
},
Type: pulumi.String(monitor.ReceiverTypeSyslog),
},
},
Service: &monitor.ServiceArgs{
Pipelines: monitor.PipelineArray{
&monitor.PipelineArgs{
Exporters: pulumi.StringArray{
pulumi.String("my-workspace-logs-exporter1"),
},
Name: pulumi.String("MyPipelineForLogs1"),
Processors: pulumi.StringArray{},
Receivers: pulumi.StringArray{
pulumi.String("syslog-receiver1"),
},
Type: pulumi.String(monitor.PipelineTypeLogs),
},
},
},
},
ResourceGroupName: pulumi.String("myResourceGroup"),
Tags: pulumi.StringMap{
"tag1": pulumi.String("A"),
"tag2": pulumi.String("B"),
},
})
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.monitor.PipelineGroup;
import com.pulumi.azurenative.monitor.PipelineGroupArgs;
import com.pulumi.azurenative.monitor.inputs.AzureResourceManagerCommonTypesExtendedLocationArgs;
import com.pulumi.azurenative.monitor.inputs.PipelineGroupPropertiesArgs;
import com.pulumi.azurenative.monitor.inputs.ServiceArgs;
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 pipelineGroup = new PipelineGroup("pipelineGroup", PipelineGroupArgs.builder()
.extendedLocation(AzureResourceManagerCommonTypesExtendedLocationArgs.builder()
.name("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.extendedlocation/customlocations/myTestCustomLocation")
.type("CustomLocation")
.build())
.location("eastus2")
.pipelineGroupName("plGroup1")
.properties(PipelineGroupPropertiesArgs.builder()
.exporters(ExporterArgs.builder()
.azureMonitorWorkspaceLogs(AzureMonitorWorkspaceLogsExporterArgs.builder()
.api(AzureMonitorWorkspaceLogsApiConfigArgs.builder()
.dataCollectionEndpointUrl("https://logs-myingestion-eb0s.eastus-1.ingest.monitor.azure.com")
.dataCollectionRule("dcr-00000000000000000000000000000000")
.schema(SchemaMapArgs.builder()
.recordMap(
RecordMapArgs.builder()
.from("body")
.to("Body")
.build(),
RecordMapArgs.builder()
.from("severity_text")
.to("SeverityText")
.build(),
RecordMapArgs.builder()
.from("time_unix_nano")
.to("TimeGenerated")
.build())
.build())
.stream("Custom-MyTableRawData_CL")
.build())
.concurrency(ConcurrencyConfigurationArgs.builder()
.batchQueueSize(100)
.workerCount(4)
.build())
.build())
.name("my-workspace-logs-exporter1")
.type("AzureMonitorWorkspaceLogs")
.build())
.networkingConfigurations(NetworkingConfigurationArgs.builder()
.externalNetworkingMode("LoadBalancerOnly")
.host("azuremonitorpipeline.contoso.com")
.routes(NetworkingRouteArgs.builder()
.receiver("syslog-receiver1")
.build())
.build())
.processors()
.receivers(ReceiverArgs.builder()
.name("syslog-receiver1")
.syslog(SyslogReceiverArgs.builder()
.endpoint("0.0.0.0:514")
.build())
.type("Syslog")
.build())
.service(ServiceArgs.builder()
.pipelines(PipelineArgs.builder()
.exporters("my-workspace-logs-exporter1")
.name("MyPipelineForLogs1")
.processors()
.receivers("syslog-receiver1")
.type("Logs")
.build())
.build())
.build())
.resourceGroupName("myResourceGroup")
.tags(Map.ofEntries(
Map.entry("tag1", "A"),
Map.entry("tag2", "B")
))
.build());
}
}

Import

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

$ pulumi import azure-native:monitor:PipelineGroup plGroup1 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Monitor/pipelineGroups/{pipelineGroupName}

Properties

Link copied to clipboard
val azureApiVersion: Output<String>

The Azure API version of the resource.

Link copied to clipboard

The complex type of the extended location.

Link copied to clipboard
val id: Output<String>
Link copied to clipboard
val location: Output<String>

The geo-location where the resource lives

Link copied to clipboard
val name: Output<String>

The name of the resource

Link copied to clipboard

The resource-specific properties for this resource.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Azure Resource Manager metadata containing createdBy and modifiedBy information.

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

Resource tags.

Link copied to clipboard
val type: Output<String>

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

Link copied to clipboard
val urn: Output<String>