Creo un Pulumi.AzureNative.OperationalInsights.Workspace con lo siguiente:
name = "workspace"; var workspace = new Workspace ( name, new WorkspaceArgs { Location = resourceGroup.Location, ResourceGroupName = resourceGroup.Name, RetentionInDays = 30, Sku = new WorkspaceSkuArgs { Name = WorkspaceSkuNameEnum.PerGB2018, }, Tags = { { "tag1", "val1" }, }, WorkspaceName = name, } ); Más tarde quiero conectar mi ContainerGroup a este espacio de trabajo y necesito WorkspaceId y WorkspaceKey .
Donde puedo conseguir esos valores?
El WorkspaceId se deriva del workspace.CustomerId
WorkspaceKey no es devuelto directamente por el espacio de trabajo, debe recuperarlo usando GetSharedKeys
Aquí hay un ejemplo de trabajo completo que provisiones con éxito para mí
using Pulumi; using Pulumi.AzureNative.ContainerInstance; using Pulumi.AzureNative.ContainerInstance.Inputs; using Pulumi.AzureNative.Resources; using Pulumi.AzureNative.OperationalInsights; using Pulumi.AzureNative.OperationalInsights.Inputs; class MyStack : Stack { public MyStack() { // Create an Azure Resource Group var resourceGroup = new ResourceGroup("example"); // create the operational insights workspace var workspace = new Workspace ( "example", new WorkspaceArgs { Location = resourceGroup.Location, ResourceGroupName = resourceGroup.Name, RetentionInDays = 30, Sku = new WorkspaceSkuArgs { Name = WorkspaceSkuNameEnum.PerGB2018, }, WorkspaceName = "example", } ); // retrieve the workspace shared key // you may want to make this a secret var workspaceSharedKeys = Output.Tuple(resourceGroup.Name, workspace.Name).Apply(items => GetSharedKeys.InvokeAsync(new GetSharedKeysArgs { ResourceGroupName = items.Item1, WorkspaceName = items.Item2, })); // provision the containergroup var containerGroup = new ContainerGroup("example", new ContainerGroupArgs { ContainerGroupName = "example", Containers = { new ContainerArgs { Image = "nginx", Name = "example", Ports = { new ContainerPortArgs { Port = 80, }, }, Resources = new ResourceRequirementsArgs { Requests = new ResourceRequestsArgs { Cpu = 1, MemoryInGB = 1.5, }, }, }, }, Diagnostics = new ContainerGroupDiagnosticsArgs { LogAnalytics = new LogAnalyticsArgs { LogType = "ContainerInsights", WorkspaceId = workspace.CustomerId, WorkspaceKey = workspaceSharedKeys.Apply(key => key.PrimarySharedKey!), }, }, Location = "WestUS", OsType = "Linux", ResourceGroupName = resourceGroup.Name, }); } }