1. Packages
  2. Azure Classic
  3. API Docs
  4. monitoring
  5. getDiagnosticCategories

We recommend using Azure Native.

Viewing docs for Azure v4.42.0 (Older version)
published on Monday, Mar 9, 2026 by Pulumi
azure logo

We recommend using Azure Native.

Viewing docs for Azure v4.42.0 (Older version)
published on Monday, Mar 9, 2026 by Pulumi

    Use this data source to access information about the Monitor Diagnostics Categories supported by an existing Resource.

    Example Usage

    using Pulumi;
    using Azure = Pulumi.Azure;
    
    class MyStack : Stack
    {
        public MyStack()
        {
            var exampleKeyVault = Output.Create(Azure.KeyVault.GetKeyVault.InvokeAsync(new Azure.KeyVault.GetKeyVaultArgs
            {
                Name = azurerm_key_vault.Example.Name,
                ResourceGroupName = azurerm_key_vault.Example.Resource_group_name,
            }));
            var exampleDiagnosticCategories = exampleKeyVault.Apply(exampleKeyVault => Output.Create(Azure.Monitoring.GetDiagnosticCategories.InvokeAsync(new Azure.Monitoring.GetDiagnosticCategoriesArgs
            {
                ResourceId = exampleKeyVault.Id,
            })));
        }
    
    }
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/keyvault"
    	"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/monitoring"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		exampleKeyVault, err := keyvault.LookupKeyVault(ctx, &keyvault.LookupKeyVaultArgs{
    			Name:              azurerm_key_vault.Example.Name,
    			ResourceGroupName: azurerm_key_vault.Example.Resource_group_name,
    		}, nil)
    		if err != nil {
    			return err
    		}
    		_, err = monitoring.GetDiagnosticCategories(ctx, &monitoring.GetDiagnosticCategoriesArgs{
    			ResourceId: exampleKeyVault.Id,
    		}, nil)
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    

    Example coming soon!

    import * as pulumi from "@pulumi/pulumi";
    import * as azure from "@pulumi/azure";
    
    const exampleKeyVault = azure.keyvault.getKeyVault({
        name: azurerm_key_vault.example.name,
        resourceGroupName: azurerm_key_vault.example.resource_group_name,
    });
    const exampleDiagnosticCategories = exampleKeyVault.then(exampleKeyVault => azure.monitoring.getDiagnosticCategories({
        resourceId: exampleKeyVault.id,
    }));
    
    import pulumi
    import pulumi_azure as azure
    
    example_key_vault = azure.keyvault.get_key_vault(name=azurerm_key_vault["example"]["name"],
        resource_group_name=azurerm_key_vault["example"]["resource_group_name"])
    example_diagnostic_categories = azure.monitoring.get_diagnostic_categories(resource_id=example_key_vault.id)
    

    Example coming soon!

    Using getDiagnosticCategories

    Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

    function getDiagnosticCategories(args: GetDiagnosticCategoriesArgs, opts?: InvokeOptions): Promise<GetDiagnosticCategoriesResult>
    function getDiagnosticCategoriesOutput(args: GetDiagnosticCategoriesOutputArgs, opts?: InvokeOptions): Output<GetDiagnosticCategoriesResult>
    def get_diagnostic_categories(resource_id: Optional[str] = None,
                                  opts: Optional[InvokeOptions] = None) -> GetDiagnosticCategoriesResult
    def get_diagnostic_categories_output(resource_id: Optional[pulumi.Input[str]] = None,
                                  opts: Optional[InvokeOptions] = None) -> Output[GetDiagnosticCategoriesResult]
    func GetDiagnosticCategories(ctx *Context, args *GetDiagnosticCategoriesArgs, opts ...InvokeOption) (*GetDiagnosticCategoriesResult, error)
    func GetDiagnosticCategoriesOutput(ctx *Context, args *GetDiagnosticCategoriesOutputArgs, opts ...InvokeOption) GetDiagnosticCategoriesResultOutput

    > Note: This function is named GetDiagnosticCategories in the Go SDK.

    public static class GetDiagnosticCategories 
    {
        public static Task<GetDiagnosticCategoriesResult> InvokeAsync(GetDiagnosticCategoriesArgs args, InvokeOptions? opts = null)
        public static Output<GetDiagnosticCategoriesResult> Invoke(GetDiagnosticCategoriesInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetDiagnosticCategoriesResult> getDiagnosticCategories(GetDiagnosticCategoriesArgs args, InvokeOptions options)
    public static Output<GetDiagnosticCategoriesResult> getDiagnosticCategories(GetDiagnosticCategoriesArgs args, InvokeOptions options)
    
    fn::invoke:
      function: azure:monitoring/getDiagnosticCategories:getDiagnosticCategories
      arguments:
        # arguments dictionary

    The following arguments are supported:

    ResourceId string
    The ID of an existing Resource which Monitor Diagnostics Categories should be retrieved for.
    ResourceId string
    The ID of an existing Resource which Monitor Diagnostics Categories should be retrieved for.
    resourceId String
    The ID of an existing Resource which Monitor Diagnostics Categories should be retrieved for.
    resourceId string
    The ID of an existing Resource which Monitor Diagnostics Categories should be retrieved for.
    resource_id str
    The ID of an existing Resource which Monitor Diagnostics Categories should be retrieved for.
    resourceId String
    The ID of an existing Resource which Monitor Diagnostics Categories should be retrieved for.

    getDiagnosticCategories Result

    The following output properties are available:

    Id string
    The provider-assigned unique ID for this managed resource.
    Logs List<string>
    A list of the Log Categories supported for this Resource.
    Metrics List<string>
    A list of the Metric Categories supported for this Resource.
    ResourceId string
    Id string
    The provider-assigned unique ID for this managed resource.
    Logs []string
    A list of the Log Categories supported for this Resource.
    Metrics []string
    A list of the Metric Categories supported for this Resource.
    ResourceId string
    id String
    The provider-assigned unique ID for this managed resource.
    logs List<String>
    A list of the Log Categories supported for this Resource.
    metrics List<String>
    A list of the Metric Categories supported for this Resource.
    resourceId String
    id string
    The provider-assigned unique ID for this managed resource.
    logs string[]
    A list of the Log Categories supported for this Resource.
    metrics string[]
    A list of the Metric Categories supported for this Resource.
    resourceId string
    id str
    The provider-assigned unique ID for this managed resource.
    logs Sequence[str]
    A list of the Log Categories supported for this Resource.
    metrics Sequence[str]
    A list of the Metric Categories supported for this Resource.
    resource_id str
    id String
    The provider-assigned unique ID for this managed resource.
    logs List<String>
    A list of the Log Categories supported for this Resource.
    metrics List<String>
    A list of the Metric Categories supported for this Resource.
    resourceId String

    Package Details

    Repository
    Azure Classic pulumi/pulumi-azure
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the azurerm Terraform Provider.
    azure logo

    We recommend using Azure Native.

    Viewing docs for Azure v4.42.0 (Older version)
    published on Monday, Mar 9, 2026 by Pulumi
      Try Pulumi Cloud free. Your team will thank you.