We recommend using Azure Native.
azure.apimanagement.Diagnostic
Explore with Pulumi AI
Manages an API Management Service Diagnostic.
Example Usage
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Azure = Pulumi.Azure;
return await Deployment.RunAsync(() =>
{
var exampleResourceGroup = new Azure.Core.ResourceGroup("exampleResourceGroup", new()
{
Location = "West Europe",
});
var exampleInsights = new Azure.AppInsights.Insights("exampleInsights", new()
{
Location = exampleResourceGroup.Location,
ResourceGroupName = exampleResourceGroup.Name,
ApplicationType = "web",
});
var exampleService = new Azure.ApiManagement.Service("exampleService", new()
{
Location = exampleResourceGroup.Location,
ResourceGroupName = exampleResourceGroup.Name,
PublisherName = "My Company",
PublisherEmail = "company@mycompany.io",
SkuName = "Developer_1",
});
var exampleLogger = new Azure.ApiManagement.Logger("exampleLogger", new()
{
ApiManagementName = exampleService.Name,
ResourceGroupName = exampleResourceGroup.Name,
ApplicationInsights = new Azure.ApiManagement.Inputs.LoggerApplicationInsightsArgs
{
InstrumentationKey = exampleInsights.InstrumentationKey,
},
});
var exampleDiagnostic = new Azure.ApiManagement.Diagnostic("exampleDiagnostic", new()
{
Identifier = "applicationinsights",
ResourceGroupName = exampleResourceGroup.Name,
ApiManagementName = exampleService.Name,
ApiManagementLoggerId = exampleLogger.Id,
SamplingPercentage = 5,
AlwaysLogErrors = true,
LogClientIp = true,
Verbosity = "verbose",
HttpCorrelationProtocol = "W3C",
FrontendRequest = new Azure.ApiManagement.Inputs.DiagnosticFrontendRequestArgs
{
BodyBytes = 32,
HeadersToLogs = new[]
{
"content-type",
"accept",
"origin",
},
},
FrontendResponse = new Azure.ApiManagement.Inputs.DiagnosticFrontendResponseArgs
{
BodyBytes = 32,
HeadersToLogs = new[]
{
"content-type",
"content-length",
"origin",
},
},
BackendRequest = new Azure.ApiManagement.Inputs.DiagnosticBackendRequestArgs
{
BodyBytes = 32,
HeadersToLogs = new[]
{
"content-type",
"accept",
"origin",
},
},
BackendResponse = new Azure.ApiManagement.Inputs.DiagnosticBackendResponseArgs
{
BodyBytes = 32,
HeadersToLogs = new[]
{
"content-type",
"content-length",
"origin",
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/apimanagement"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/appinsights"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
Location: pulumi.String("West Europe"),
})
if err != nil {
return err
}
exampleInsights, err := appinsights.NewInsights(ctx, "exampleInsights", &appinsights.InsightsArgs{
Location: exampleResourceGroup.Location,
ResourceGroupName: exampleResourceGroup.Name,
ApplicationType: pulumi.String("web"),
})
if err != nil {
return err
}
exampleService, err := apimanagement.NewService(ctx, "exampleService", &apimanagement.ServiceArgs{
Location: exampleResourceGroup.Location,
ResourceGroupName: exampleResourceGroup.Name,
PublisherName: pulumi.String("My Company"),
PublisherEmail: pulumi.String("company@mycompany.io"),
SkuName: pulumi.String("Developer_1"),
})
if err != nil {
return err
}
exampleLogger, err := apimanagement.NewLogger(ctx, "exampleLogger", &apimanagement.LoggerArgs{
ApiManagementName: exampleService.Name,
ResourceGroupName: exampleResourceGroup.Name,
ApplicationInsights: &apimanagement.LoggerApplicationInsightsArgs{
InstrumentationKey: exampleInsights.InstrumentationKey,
},
})
if err != nil {
return err
}
_, err = apimanagement.NewDiagnostic(ctx, "exampleDiagnostic", &apimanagement.DiagnosticArgs{
Identifier: pulumi.String("applicationinsights"),
ResourceGroupName: exampleResourceGroup.Name,
ApiManagementName: exampleService.Name,
ApiManagementLoggerId: exampleLogger.ID(),
SamplingPercentage: pulumi.Float64(5),
AlwaysLogErrors: pulumi.Bool(true),
LogClientIp: pulumi.Bool(true),
Verbosity: pulumi.String("verbose"),
HttpCorrelationProtocol: pulumi.String("W3C"),
FrontendRequest: &apimanagement.DiagnosticFrontendRequestArgs{
BodyBytes: pulumi.Int(32),
HeadersToLogs: pulumi.StringArray{
pulumi.String("content-type"),
pulumi.String("accept"),
pulumi.String("origin"),
},
},
FrontendResponse: &apimanagement.DiagnosticFrontendResponseArgs{
BodyBytes: pulumi.Int(32),
HeadersToLogs: pulumi.StringArray{
pulumi.String("content-type"),
pulumi.String("content-length"),
pulumi.String("origin"),
},
},
BackendRequest: &apimanagement.DiagnosticBackendRequestArgs{
BodyBytes: pulumi.Int(32),
HeadersToLogs: pulumi.StringArray{
pulumi.String("content-type"),
pulumi.String("accept"),
pulumi.String("origin"),
},
},
BackendResponse: &apimanagement.DiagnosticBackendResponseArgs{
BodyBytes: pulumi.Int(32),
HeadersToLogs: pulumi.StringArray{
pulumi.String("content-type"),
pulumi.String("content-length"),
pulumi.String("origin"),
},
},
})
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.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.appinsights.Insights;
import com.pulumi.azure.appinsights.InsightsArgs;
import com.pulumi.azure.apimanagement.Service;
import com.pulumi.azure.apimanagement.ServiceArgs;
import com.pulumi.azure.apimanagement.Logger;
import com.pulumi.azure.apimanagement.LoggerArgs;
import com.pulumi.azure.apimanagement.inputs.LoggerApplicationInsightsArgs;
import com.pulumi.azure.apimanagement.Diagnostic;
import com.pulumi.azure.apimanagement.DiagnosticArgs;
import com.pulumi.azure.apimanagement.inputs.DiagnosticFrontendRequestArgs;
import com.pulumi.azure.apimanagement.inputs.DiagnosticFrontendResponseArgs;
import com.pulumi.azure.apimanagement.inputs.DiagnosticBackendRequestArgs;
import com.pulumi.azure.apimanagement.inputs.DiagnosticBackendResponseArgs;
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 exampleResourceGroup = new ResourceGroup("exampleResourceGroup", ResourceGroupArgs.builder()
.location("West Europe")
.build());
var exampleInsights = new Insights("exampleInsights", InsightsArgs.builder()
.location(exampleResourceGroup.location())
.resourceGroupName(exampleResourceGroup.name())
.applicationType("web")
.build());
var exampleService = new Service("exampleService", ServiceArgs.builder()
.location(exampleResourceGroup.location())
.resourceGroupName(exampleResourceGroup.name())
.publisherName("My Company")
.publisherEmail("company@mycompany.io")
.skuName("Developer_1")
.build());
var exampleLogger = new Logger("exampleLogger", LoggerArgs.builder()
.apiManagementName(exampleService.name())
.resourceGroupName(exampleResourceGroup.name())
.applicationInsights(LoggerApplicationInsightsArgs.builder()
.instrumentationKey(exampleInsights.instrumentationKey())
.build())
.build());
var exampleDiagnostic = new Diagnostic("exampleDiagnostic", DiagnosticArgs.builder()
.identifier("applicationinsights")
.resourceGroupName(exampleResourceGroup.name())
.apiManagementName(exampleService.name())
.apiManagementLoggerId(exampleLogger.id())
.samplingPercentage(5)
.alwaysLogErrors(true)
.logClientIp(true)
.verbosity("verbose")
.httpCorrelationProtocol("W3C")
.frontendRequest(DiagnosticFrontendRequestArgs.builder()
.bodyBytes(32)
.headersToLogs(
"content-type",
"accept",
"origin")
.build())
.frontendResponse(DiagnosticFrontendResponseArgs.builder()
.bodyBytes(32)
.headersToLogs(
"content-type",
"content-length",
"origin")
.build())
.backendRequest(DiagnosticBackendRequestArgs.builder()
.bodyBytes(32)
.headersToLogs(
"content-type",
"accept",
"origin")
.build())
.backendResponse(DiagnosticBackendResponseArgs.builder()
.bodyBytes(32)
.headersToLogs(
"content-type",
"content-length",
"origin")
.build())
.build());
}
}
import pulumi
import pulumi_azure as azure
example_resource_group = azure.core.ResourceGroup("exampleResourceGroup", location="West Europe")
example_insights = azure.appinsights.Insights("exampleInsights",
location=example_resource_group.location,
resource_group_name=example_resource_group.name,
application_type="web")
example_service = azure.apimanagement.Service("exampleService",
location=example_resource_group.location,
resource_group_name=example_resource_group.name,
publisher_name="My Company",
publisher_email="company@mycompany.io",
sku_name="Developer_1")
example_logger = azure.apimanagement.Logger("exampleLogger",
api_management_name=example_service.name,
resource_group_name=example_resource_group.name,
application_insights=azure.apimanagement.LoggerApplicationInsightsArgs(
instrumentation_key=example_insights.instrumentation_key,
))
example_diagnostic = azure.apimanagement.Diagnostic("exampleDiagnostic",
identifier="applicationinsights",
resource_group_name=example_resource_group.name,
api_management_name=example_service.name,
api_management_logger_id=example_logger.id,
sampling_percentage=5,
always_log_errors=True,
log_client_ip=True,
verbosity="verbose",
http_correlation_protocol="W3C",
frontend_request=azure.apimanagement.DiagnosticFrontendRequestArgs(
body_bytes=32,
headers_to_logs=[
"content-type",
"accept",
"origin",
],
),
frontend_response=azure.apimanagement.DiagnosticFrontendResponseArgs(
body_bytes=32,
headers_to_logs=[
"content-type",
"content-length",
"origin",
],
),
backend_request=azure.apimanagement.DiagnosticBackendRequestArgs(
body_bytes=32,
headers_to_logs=[
"content-type",
"accept",
"origin",
],
),
backend_response=azure.apimanagement.DiagnosticBackendResponseArgs(
body_bytes=32,
headers_to_logs=[
"content-type",
"content-length",
"origin",
],
))
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const exampleInsights = new azure.appinsights.Insights("exampleInsights", {
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
applicationType: "web",
});
const exampleService = new azure.apimanagement.Service("exampleService", {
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
publisherName: "My Company",
publisherEmail: "company@mycompany.io",
skuName: "Developer_1",
});
const exampleLogger = new azure.apimanagement.Logger("exampleLogger", {
apiManagementName: exampleService.name,
resourceGroupName: exampleResourceGroup.name,
applicationInsights: {
instrumentationKey: exampleInsights.instrumentationKey,
},
});
const exampleDiagnostic = new azure.apimanagement.Diagnostic("exampleDiagnostic", {
identifier: "applicationinsights",
resourceGroupName: exampleResourceGroup.name,
apiManagementName: exampleService.name,
apiManagementLoggerId: exampleLogger.id,
samplingPercentage: 5,
alwaysLogErrors: true,
logClientIp: true,
verbosity: "verbose",
httpCorrelationProtocol: "W3C",
frontendRequest: {
bodyBytes: 32,
headersToLogs: [
"content-type",
"accept",
"origin",
],
},
frontendResponse: {
bodyBytes: 32,
headersToLogs: [
"content-type",
"content-length",
"origin",
],
},
backendRequest: {
bodyBytes: 32,
headersToLogs: [
"content-type",
"accept",
"origin",
],
},
backendResponse: {
bodyBytes: 32,
headersToLogs: [
"content-type",
"content-length",
"origin",
],
},
});
resources:
exampleResourceGroup:
type: azure:core:ResourceGroup
properties:
location: West Europe
exampleInsights:
type: azure:appinsights:Insights
properties:
location: ${exampleResourceGroup.location}
resourceGroupName: ${exampleResourceGroup.name}
applicationType: web
exampleService:
type: azure:apimanagement:Service
properties:
location: ${exampleResourceGroup.location}
resourceGroupName: ${exampleResourceGroup.name}
publisherName: My Company
publisherEmail: company@mycompany.io
skuName: Developer_1
exampleLogger:
type: azure:apimanagement:Logger
properties:
apiManagementName: ${exampleService.name}
resourceGroupName: ${exampleResourceGroup.name}
applicationInsights:
instrumentationKey: ${exampleInsights.instrumentationKey}
exampleDiagnostic:
type: azure:apimanagement:Diagnostic
properties:
identifier: applicationinsights
resourceGroupName: ${exampleResourceGroup.name}
apiManagementName: ${exampleService.name}
apiManagementLoggerId: ${exampleLogger.id}
samplingPercentage: 5
alwaysLogErrors: true
logClientIp: true
verbosity: verbose
httpCorrelationProtocol: W3C
frontendRequest:
bodyBytes: 32
headersToLogs:
- content-type
- accept
- origin
frontendResponse:
bodyBytes: 32
headersToLogs:
- content-type
- content-length
- origin
backendRequest:
bodyBytes: 32
headersToLogs:
- content-type
- accept
- origin
backendResponse:
bodyBytes: 32
headersToLogs:
- content-type
- content-length
- origin
Create Diagnostic Resource
new Diagnostic(name: string, args: DiagnosticArgs, opts?: CustomResourceOptions);
@overload
def Diagnostic(resource_name: str,
opts: Optional[ResourceOptions] = None,
always_log_errors: Optional[bool] = None,
api_management_logger_id: Optional[str] = None,
api_management_name: Optional[str] = None,
backend_request: Optional[DiagnosticBackendRequestArgs] = None,
backend_response: Optional[DiagnosticBackendResponseArgs] = None,
frontend_request: Optional[DiagnosticFrontendRequestArgs] = None,
frontend_response: Optional[DiagnosticFrontendResponseArgs] = None,
http_correlation_protocol: Optional[str] = None,
identifier: Optional[str] = None,
log_client_ip: Optional[bool] = None,
operation_name_format: Optional[str] = None,
resource_group_name: Optional[str] = None,
sampling_percentage: Optional[float] = None,
verbosity: Optional[str] = None)
@overload
def Diagnostic(resource_name: str,
args: DiagnosticArgs,
opts: Optional[ResourceOptions] = None)
func NewDiagnostic(ctx *Context, name string, args DiagnosticArgs, opts ...ResourceOption) (*Diagnostic, error)
public Diagnostic(string name, DiagnosticArgs args, CustomResourceOptions? opts = null)
public Diagnostic(String name, DiagnosticArgs args)
public Diagnostic(String name, DiagnosticArgs args, CustomResourceOptions options)
type: azure:apimanagement:Diagnostic
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args DiagnosticArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args DiagnosticArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args DiagnosticArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args DiagnosticArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args DiagnosticArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Diagnostic Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The Diagnostic resource accepts the following input properties:
- Api
Management stringLogger Id The id of the target API Management Logger where the API Management Diagnostic should be saved.
- Api
Management stringName The Name of the API Management Service where this Diagnostic should be created. Changing this forces a new resource to be created.
- Identifier string
The diagnostic identifier for the API Management Service. At this time the supported values are
applicationinsights
andazuremonitor
. Changing this forces a new resource to be created.- Resource
Group stringName The Name of the Resource Group where the API Management Service exists. Changing this forces a new resource to be created.
- Always
Log boolErrors Always log errors. Send telemetry if there is an erroneous condition, regardless of sampling settings.
- Backend
Request DiagnosticBackend Request A
backend_request
block as defined below.- Backend
Response DiagnosticBackend Response A
backend_response
block as defined below.- Frontend
Request DiagnosticFrontend Request A
frontend_request
block as defined below.- Frontend
Response DiagnosticFrontend Response A
frontend_response
block as defined below.- Http
Correlation stringProtocol The HTTP Correlation Protocol to use. Possible values are
None
,Legacy
orW3C
.- Log
Client boolIp Log client IP address.
- Operation
Name stringFormat The format of the Operation Name for Application Insights telemetries. Possible values are
Name
, andUrl
. Defaults toName
.- Sampling
Percentage double Sampling (%). For high traffic APIs, please read this documentation to understand performance implications and log sampling. Valid values are between
0.0
and100.0
.- Verbosity string
Logging verbosity. Possible values are
verbose
,information
orerror
.
- Api
Management stringLogger Id The id of the target API Management Logger where the API Management Diagnostic should be saved.
- Api
Management stringName The Name of the API Management Service where this Diagnostic should be created. Changing this forces a new resource to be created.
- Identifier string
The diagnostic identifier for the API Management Service. At this time the supported values are
applicationinsights
andazuremonitor
. Changing this forces a new resource to be created.- Resource
Group stringName The Name of the Resource Group where the API Management Service exists. Changing this forces a new resource to be created.
- Always
Log boolErrors Always log errors. Send telemetry if there is an erroneous condition, regardless of sampling settings.
- Backend
Request DiagnosticBackend Request Args A
backend_request
block as defined below.- Backend
Response DiagnosticBackend Response Args A
backend_response
block as defined below.- Frontend
Request DiagnosticFrontend Request Args A
frontend_request
block as defined below.- Frontend
Response DiagnosticFrontend Response Args A
frontend_response
block as defined below.- Http
Correlation stringProtocol The HTTP Correlation Protocol to use. Possible values are
None
,Legacy
orW3C
.- Log
Client boolIp Log client IP address.
- Operation
Name stringFormat The format of the Operation Name for Application Insights telemetries. Possible values are
Name
, andUrl
. Defaults toName
.- Sampling
Percentage float64 Sampling (%). For high traffic APIs, please read this documentation to understand performance implications and log sampling. Valid values are between
0.0
and100.0
.- Verbosity string
Logging verbosity. Possible values are
verbose
,information
orerror
.
- api
Management StringLogger Id The id of the target API Management Logger where the API Management Diagnostic should be saved.
- api
Management StringName The Name of the API Management Service where this Diagnostic should be created. Changing this forces a new resource to be created.
- identifier String
The diagnostic identifier for the API Management Service. At this time the supported values are
applicationinsights
andazuremonitor
. Changing this forces a new resource to be created.- resource
Group StringName The Name of the Resource Group where the API Management Service exists. Changing this forces a new resource to be created.
- always
Log BooleanErrors Always log errors. Send telemetry if there is an erroneous condition, regardless of sampling settings.
- backend
Request DiagnosticBackend Request A
backend_request
block as defined below.- backend
Response DiagnosticBackend Response A
backend_response
block as defined below.- frontend
Request DiagnosticFrontend Request A
frontend_request
block as defined below.- frontend
Response DiagnosticFrontend Response A
frontend_response
block as defined below.- http
Correlation StringProtocol The HTTP Correlation Protocol to use. Possible values are
None
,Legacy
orW3C
.- log
Client BooleanIp Log client IP address.
- operation
Name StringFormat The format of the Operation Name for Application Insights telemetries. Possible values are
Name
, andUrl
. Defaults toName
.- sampling
Percentage Double Sampling (%). For high traffic APIs, please read this documentation to understand performance implications and log sampling. Valid values are between
0.0
and100.0
.- verbosity String
Logging verbosity. Possible values are
verbose
,information
orerror
.
- api
Management stringLogger Id The id of the target API Management Logger where the API Management Diagnostic should be saved.
- api
Management stringName The Name of the API Management Service where this Diagnostic should be created. Changing this forces a new resource to be created.
- identifier string
The diagnostic identifier for the API Management Service. At this time the supported values are
applicationinsights
andazuremonitor
. Changing this forces a new resource to be created.- resource
Group stringName The Name of the Resource Group where the API Management Service exists. Changing this forces a new resource to be created.
- always
Log booleanErrors Always log errors. Send telemetry if there is an erroneous condition, regardless of sampling settings.
- backend
Request DiagnosticBackend Request A
backend_request
block as defined below.- backend
Response DiagnosticBackend Response A
backend_response
block as defined below.- frontend
Request DiagnosticFrontend Request A
frontend_request
block as defined below.- frontend
Response DiagnosticFrontend Response A
frontend_response
block as defined below.- http
Correlation stringProtocol The HTTP Correlation Protocol to use. Possible values are
None
,Legacy
orW3C
.- log
Client booleanIp Log client IP address.
- operation
Name stringFormat The format of the Operation Name for Application Insights telemetries. Possible values are
Name
, andUrl
. Defaults toName
.- sampling
Percentage number Sampling (%). For high traffic APIs, please read this documentation to understand performance implications and log sampling. Valid values are between
0.0
and100.0
.- verbosity string
Logging verbosity. Possible values are
verbose
,information
orerror
.
- api_
management_ strlogger_ id The id of the target API Management Logger where the API Management Diagnostic should be saved.
- api_
management_ strname The Name of the API Management Service where this Diagnostic should be created. Changing this forces a new resource to be created.
- identifier str
The diagnostic identifier for the API Management Service. At this time the supported values are
applicationinsights
andazuremonitor
. Changing this forces a new resource to be created.- resource_
group_ strname The Name of the Resource Group where the API Management Service exists. Changing this forces a new resource to be created.
- always_
log_ boolerrors Always log errors. Send telemetry if there is an erroneous condition, regardless of sampling settings.
- backend_
request DiagnosticBackend Request Args A
backend_request
block as defined below.- backend_
response DiagnosticBackend Response Args A
backend_response
block as defined below.- frontend_
request DiagnosticFrontend Request Args A
frontend_request
block as defined below.- frontend_
response DiagnosticFrontend Response Args A
frontend_response
block as defined below.- http_
correlation_ strprotocol The HTTP Correlation Protocol to use. Possible values are
None
,Legacy
orW3C
.- log_
client_ boolip Log client IP address.
- operation_
name_ strformat The format of the Operation Name for Application Insights telemetries. Possible values are
Name
, andUrl
. Defaults toName
.- sampling_
percentage float Sampling (%). For high traffic APIs, please read this documentation to understand performance implications and log sampling. Valid values are between
0.0
and100.0
.- verbosity str
Logging verbosity. Possible values are
verbose
,information
orerror
.
- api
Management StringLogger Id The id of the target API Management Logger where the API Management Diagnostic should be saved.
- api
Management StringName The Name of the API Management Service where this Diagnostic should be created. Changing this forces a new resource to be created.
- identifier String
The diagnostic identifier for the API Management Service. At this time the supported values are
applicationinsights
andazuremonitor
. Changing this forces a new resource to be created.- resource
Group StringName The Name of the Resource Group where the API Management Service exists. Changing this forces a new resource to be created.
- always
Log BooleanErrors Always log errors. Send telemetry if there is an erroneous condition, regardless of sampling settings.
- backend
Request Property Map A
backend_request
block as defined below.- backend
Response Property Map A
backend_response
block as defined below.- frontend
Request Property Map A
frontend_request
block as defined below.- frontend
Response Property Map A
frontend_response
block as defined below.- http
Correlation StringProtocol The HTTP Correlation Protocol to use. Possible values are
None
,Legacy
orW3C
.- log
Client BooleanIp Log client IP address.
- operation
Name StringFormat The format of the Operation Name for Application Insights telemetries. Possible values are
Name
, andUrl
. Defaults toName
.- sampling
Percentage Number Sampling (%). For high traffic APIs, please read this documentation to understand performance implications and log sampling. Valid values are between
0.0
and100.0
.- verbosity String
Logging verbosity. Possible values are
verbose
,information
orerror
.
Outputs
All input properties are implicitly available as output properties. Additionally, the Diagnostic resource produces the following output properties:
- Id string
The provider-assigned unique ID for this managed resource.
- Id string
The provider-assigned unique ID for this managed resource.
- id String
The provider-assigned unique ID for this managed resource.
- id string
The provider-assigned unique ID for this managed resource.
- id str
The provider-assigned unique ID for this managed resource.
- id String
The provider-assigned unique ID for this managed resource.
Look up Existing Diagnostic Resource
Get an existing Diagnostic resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: DiagnosticState, opts?: CustomResourceOptions): Diagnostic
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
always_log_errors: Optional[bool] = None,
api_management_logger_id: Optional[str] = None,
api_management_name: Optional[str] = None,
backend_request: Optional[DiagnosticBackendRequestArgs] = None,
backend_response: Optional[DiagnosticBackendResponseArgs] = None,
frontend_request: Optional[DiagnosticFrontendRequestArgs] = None,
frontend_response: Optional[DiagnosticFrontendResponseArgs] = None,
http_correlation_protocol: Optional[str] = None,
identifier: Optional[str] = None,
log_client_ip: Optional[bool] = None,
operation_name_format: Optional[str] = None,
resource_group_name: Optional[str] = None,
sampling_percentage: Optional[float] = None,
verbosity: Optional[str] = None) -> Diagnostic
func GetDiagnostic(ctx *Context, name string, id IDInput, state *DiagnosticState, opts ...ResourceOption) (*Diagnostic, error)
public static Diagnostic Get(string name, Input<string> id, DiagnosticState? state, CustomResourceOptions? opts = null)
public static Diagnostic get(String name, Output<String> id, DiagnosticState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Always
Log boolErrors Always log errors. Send telemetry if there is an erroneous condition, regardless of sampling settings.
- Api
Management stringLogger Id The id of the target API Management Logger where the API Management Diagnostic should be saved.
- Api
Management stringName The Name of the API Management Service where this Diagnostic should be created. Changing this forces a new resource to be created.
- Backend
Request DiagnosticBackend Request A
backend_request
block as defined below.- Backend
Response DiagnosticBackend Response A
backend_response
block as defined below.- Frontend
Request DiagnosticFrontend Request A
frontend_request
block as defined below.- Frontend
Response DiagnosticFrontend Response A
frontend_response
block as defined below.- Http
Correlation stringProtocol The HTTP Correlation Protocol to use. Possible values are
None
,Legacy
orW3C
.- Identifier string
The diagnostic identifier for the API Management Service. At this time the supported values are
applicationinsights
andazuremonitor
. Changing this forces a new resource to be created.- Log
Client boolIp Log client IP address.
- Operation
Name stringFormat The format of the Operation Name for Application Insights telemetries. Possible values are
Name
, andUrl
. Defaults toName
.- Resource
Group stringName The Name of the Resource Group where the API Management Service exists. Changing this forces a new resource to be created.
- Sampling
Percentage double Sampling (%). For high traffic APIs, please read this documentation to understand performance implications and log sampling. Valid values are between
0.0
and100.0
.- Verbosity string
Logging verbosity. Possible values are
verbose
,information
orerror
.
- Always
Log boolErrors Always log errors. Send telemetry if there is an erroneous condition, regardless of sampling settings.
- Api
Management stringLogger Id The id of the target API Management Logger where the API Management Diagnostic should be saved.
- Api
Management stringName The Name of the API Management Service where this Diagnostic should be created. Changing this forces a new resource to be created.
- Backend
Request DiagnosticBackend Request Args A
backend_request
block as defined below.- Backend
Response DiagnosticBackend Response Args A
backend_response
block as defined below.- Frontend
Request DiagnosticFrontend Request Args A
frontend_request
block as defined below.- Frontend
Response DiagnosticFrontend Response Args A
frontend_response
block as defined below.- Http
Correlation stringProtocol The HTTP Correlation Protocol to use. Possible values are
None
,Legacy
orW3C
.- Identifier string
The diagnostic identifier for the API Management Service. At this time the supported values are
applicationinsights
andazuremonitor
. Changing this forces a new resource to be created.- Log
Client boolIp Log client IP address.
- Operation
Name stringFormat The format of the Operation Name for Application Insights telemetries. Possible values are
Name
, andUrl
. Defaults toName
.- Resource
Group stringName The Name of the Resource Group where the API Management Service exists. Changing this forces a new resource to be created.
- Sampling
Percentage float64 Sampling (%). For high traffic APIs, please read this documentation to understand performance implications and log sampling. Valid values are between
0.0
and100.0
.- Verbosity string
Logging verbosity. Possible values are
verbose
,information
orerror
.
- always
Log BooleanErrors Always log errors. Send telemetry if there is an erroneous condition, regardless of sampling settings.
- api
Management StringLogger Id The id of the target API Management Logger where the API Management Diagnostic should be saved.
- api
Management StringName The Name of the API Management Service where this Diagnostic should be created. Changing this forces a new resource to be created.
- backend
Request DiagnosticBackend Request A
backend_request
block as defined below.- backend
Response DiagnosticBackend Response A
backend_response
block as defined below.- frontend
Request DiagnosticFrontend Request A
frontend_request
block as defined below.- frontend
Response DiagnosticFrontend Response A
frontend_response
block as defined below.- http
Correlation StringProtocol The HTTP Correlation Protocol to use. Possible values are
None
,Legacy
orW3C
.- identifier String
The diagnostic identifier for the API Management Service. At this time the supported values are
applicationinsights
andazuremonitor
. Changing this forces a new resource to be created.- log
Client BooleanIp Log client IP address.
- operation
Name StringFormat The format of the Operation Name for Application Insights telemetries. Possible values are
Name
, andUrl
. Defaults toName
.- resource
Group StringName The Name of the Resource Group where the API Management Service exists. Changing this forces a new resource to be created.
- sampling
Percentage Double Sampling (%). For high traffic APIs, please read this documentation to understand performance implications and log sampling. Valid values are between
0.0
and100.0
.- verbosity String
Logging verbosity. Possible values are
verbose
,information
orerror
.
- always
Log booleanErrors Always log errors. Send telemetry if there is an erroneous condition, regardless of sampling settings.
- api
Management stringLogger Id The id of the target API Management Logger where the API Management Diagnostic should be saved.
- api
Management stringName The Name of the API Management Service where this Diagnostic should be created. Changing this forces a new resource to be created.
- backend
Request DiagnosticBackend Request A
backend_request
block as defined below.- backend
Response DiagnosticBackend Response A
backend_response
block as defined below.- frontend
Request DiagnosticFrontend Request A
frontend_request
block as defined below.- frontend
Response DiagnosticFrontend Response A
frontend_response
block as defined below.- http
Correlation stringProtocol The HTTP Correlation Protocol to use. Possible values are
None
,Legacy
orW3C
.- identifier string
The diagnostic identifier for the API Management Service. At this time the supported values are
applicationinsights
andazuremonitor
. Changing this forces a new resource to be created.- log
Client booleanIp Log client IP address.
- operation
Name stringFormat The format of the Operation Name for Application Insights telemetries. Possible values are
Name
, andUrl
. Defaults toName
.- resource
Group stringName The Name of the Resource Group where the API Management Service exists. Changing this forces a new resource to be created.
- sampling
Percentage number Sampling (%). For high traffic APIs, please read this documentation to understand performance implications and log sampling. Valid values are between
0.0
and100.0
.- verbosity string
Logging verbosity. Possible values are
verbose
,information
orerror
.
- always_
log_ boolerrors Always log errors. Send telemetry if there is an erroneous condition, regardless of sampling settings.
- api_
management_ strlogger_ id The id of the target API Management Logger where the API Management Diagnostic should be saved.
- api_
management_ strname The Name of the API Management Service where this Diagnostic should be created. Changing this forces a new resource to be created.
- backend_
request DiagnosticBackend Request Args A
backend_request
block as defined below.- backend_
response DiagnosticBackend Response Args A
backend_response
block as defined below.- frontend_
request DiagnosticFrontend Request Args A
frontend_request
block as defined below.- frontend_
response DiagnosticFrontend Response Args A
frontend_response
block as defined below.- http_
correlation_ strprotocol The HTTP Correlation Protocol to use. Possible values are
None
,Legacy
orW3C
.- identifier str
The diagnostic identifier for the API Management Service. At this time the supported values are
applicationinsights
andazuremonitor
. Changing this forces a new resource to be created.- log_
client_ boolip Log client IP address.
- operation_
name_ strformat The format of the Operation Name for Application Insights telemetries. Possible values are
Name
, andUrl
. Defaults toName
.- resource_
group_ strname The Name of the Resource Group where the API Management Service exists. Changing this forces a new resource to be created.
- sampling_
percentage float Sampling (%). For high traffic APIs, please read this documentation to understand performance implications and log sampling. Valid values are between
0.0
and100.0
.- verbosity str
Logging verbosity. Possible values are
verbose
,information
orerror
.
- always
Log BooleanErrors Always log errors. Send telemetry if there is an erroneous condition, regardless of sampling settings.
- api
Management StringLogger Id The id of the target API Management Logger where the API Management Diagnostic should be saved.
- api
Management StringName The Name of the API Management Service where this Diagnostic should be created. Changing this forces a new resource to be created.
- backend
Request Property Map A
backend_request
block as defined below.- backend
Response Property Map A
backend_response
block as defined below.- frontend
Request Property Map A
frontend_request
block as defined below.- frontend
Response Property Map A
frontend_response
block as defined below.- http
Correlation StringProtocol The HTTP Correlation Protocol to use. Possible values are
None
,Legacy
orW3C
.- identifier String
The diagnostic identifier for the API Management Service. At this time the supported values are
applicationinsights
andazuremonitor
. Changing this forces a new resource to be created.- log
Client BooleanIp Log client IP address.
- operation
Name StringFormat The format of the Operation Name for Application Insights telemetries. Possible values are
Name
, andUrl
. Defaults toName
.- resource
Group StringName The Name of the Resource Group where the API Management Service exists. Changing this forces a new resource to be created.
- sampling
Percentage Number Sampling (%). For high traffic APIs, please read this documentation to understand performance implications and log sampling. Valid values are between
0.0
and100.0
.- verbosity String
Logging verbosity. Possible values are
verbose
,information
orerror
.
Supporting Types
DiagnosticBackendRequest, DiagnosticBackendRequestArgs
- Body
Bytes int Number of payload bytes to log (up to 8192).
- Data
Masking DiagnosticBackend Request Data Masking A
data_masking
block as defined below.- Headers
To List<string>Logs Specifies a list of headers to log.
- Body
Bytes int Number of payload bytes to log (up to 8192).
- Data
Masking DiagnosticBackend Request Data Masking A
data_masking
block as defined below.- Headers
To []stringLogs Specifies a list of headers to log.
- body
Bytes Integer Number of payload bytes to log (up to 8192).
- data
Masking DiagnosticBackend Request Data Masking A
data_masking
block as defined below.- headers
To List<String>Logs Specifies a list of headers to log.
- body
Bytes number Number of payload bytes to log (up to 8192).
- data
Masking DiagnosticBackend Request Data Masking A
data_masking
block as defined below.- headers
To string[]Logs Specifies a list of headers to log.
- body_
bytes int Number of payload bytes to log (up to 8192).
- data_
masking DiagnosticBackend Request Data Masking A
data_masking
block as defined below.- headers_
to_ Sequence[str]logs Specifies a list of headers to log.
- body
Bytes Number Number of payload bytes to log (up to 8192).
- data
Masking Property Map A
data_masking
block as defined below.- headers
To List<String>Logs Specifies a list of headers to log.
DiagnosticBackendRequestDataMasking, DiagnosticBackendRequestDataMaskingArgs
- Headers
List<Diagnostic
Backend Request Data Masking Header> A
headers
block as defined below.- Query
Params List<DiagnosticBackend Request Data Masking Query Param> A
query_params
block as defined below.
- Headers
[]Diagnostic
Backend Request Data Masking Header A
headers
block as defined below.- Query
Params []DiagnosticBackend Request Data Masking Query Param A
query_params
block as defined below.
- headers
List<Diagnostic
Backend Request Data Masking Header> A
headers
block as defined below.- query
Params List<DiagnosticBackend Request Data Masking Query Param> A
query_params
block as defined below.
- headers
Diagnostic
Backend Request Data Masking Header[] A
headers
block as defined below.- query
Params DiagnosticBackend Request Data Masking Query Param[] A
query_params
block as defined below.
- headers
Sequence[Diagnostic
Backend Request Data Masking Header] A
headers
block as defined below.- query_
params Sequence[DiagnosticBackend Request Data Masking Query Param] A
query_params
block as defined below.
- headers List<Property Map>
A
headers
block as defined below.- query
Params List<Property Map> A
query_params
block as defined below.
DiagnosticBackendRequestDataMaskingHeader, DiagnosticBackendRequestDataMaskingHeaderArgs
DiagnosticBackendRequestDataMaskingQueryParam, DiagnosticBackendRequestDataMaskingQueryParamArgs
DiagnosticBackendResponse, DiagnosticBackendResponseArgs
- Body
Bytes int Number of payload bytes to log (up to 8192).
- Data
Masking DiagnosticBackend Response Data Masking A
data_masking
block as defined below.- Headers
To List<string>Logs Specifies a list of headers to log.
- Body
Bytes int Number of payload bytes to log (up to 8192).
- Data
Masking DiagnosticBackend Response Data Masking A
data_masking
block as defined below.- Headers
To []stringLogs Specifies a list of headers to log.
- body
Bytes Integer Number of payload bytes to log (up to 8192).
- data
Masking DiagnosticBackend Response Data Masking A
data_masking
block as defined below.- headers
To List<String>Logs Specifies a list of headers to log.
- body
Bytes number Number of payload bytes to log (up to 8192).
- data
Masking DiagnosticBackend Response Data Masking A
data_masking
block as defined below.- headers
To string[]Logs Specifies a list of headers to log.
- body_
bytes int Number of payload bytes to log (up to 8192).
- data_
masking DiagnosticBackend Response Data Masking A
data_masking
block as defined below.- headers_
to_ Sequence[str]logs Specifies a list of headers to log.
- body
Bytes Number Number of payload bytes to log (up to 8192).
- data
Masking Property Map A
data_masking
block as defined below.- headers
To List<String>Logs Specifies a list of headers to log.
DiagnosticBackendResponseDataMasking, DiagnosticBackendResponseDataMaskingArgs
- Headers
List<Diagnostic
Backend Response Data Masking Header> A
headers
block as defined below.- Query
Params List<DiagnosticBackend Response Data Masking Query Param> A
query_params
block as defined below.
- Headers
[]Diagnostic
Backend Response Data Masking Header A
headers
block as defined below.- Query
Params []DiagnosticBackend Response Data Masking Query Param A
query_params
block as defined below.
- headers
List<Diagnostic
Backend Response Data Masking Header> A
headers
block as defined below.- query
Params List<DiagnosticBackend Response Data Masking Query Param> A
query_params
block as defined below.
- headers
Diagnostic
Backend Response Data Masking Header[] A
headers
block as defined below.- query
Params DiagnosticBackend Response Data Masking Query Param[] A
query_params
block as defined below.
- headers
Sequence[Diagnostic
Backend Response Data Masking Header] A
headers
block as defined below.- query_
params Sequence[DiagnosticBackend Response Data Masking Query Param] A
query_params
block as defined below.
- headers List<Property Map>
A
headers
block as defined below.- query
Params List<Property Map> A
query_params
block as defined below.
DiagnosticBackendResponseDataMaskingHeader, DiagnosticBackendResponseDataMaskingHeaderArgs
DiagnosticBackendResponseDataMaskingQueryParam, DiagnosticBackendResponseDataMaskingQueryParamArgs
DiagnosticFrontendRequest, DiagnosticFrontendRequestArgs
- Body
Bytes int Number of payload bytes to log (up to 8192).
- Data
Masking DiagnosticFrontend Request Data Masking A
data_masking
block as defined below.- Headers
To List<string>Logs Specifies a list of headers to log.
- Body
Bytes int Number of payload bytes to log (up to 8192).
- Data
Masking DiagnosticFrontend Request Data Masking A
data_masking
block as defined below.- Headers
To []stringLogs Specifies a list of headers to log.
- body
Bytes Integer Number of payload bytes to log (up to 8192).
- data
Masking DiagnosticFrontend Request Data Masking A
data_masking
block as defined below.- headers
To List<String>Logs Specifies a list of headers to log.
- body
Bytes number Number of payload bytes to log (up to 8192).
- data
Masking DiagnosticFrontend Request Data Masking A
data_masking
block as defined below.- headers
To string[]Logs Specifies a list of headers to log.
- body_
bytes int Number of payload bytes to log (up to 8192).
- data_
masking DiagnosticFrontend Request Data Masking A
data_masking
block as defined below.- headers_
to_ Sequence[str]logs Specifies a list of headers to log.
- body
Bytes Number Number of payload bytes to log (up to 8192).
- data
Masking Property Map A
data_masking
block as defined below.- headers
To List<String>Logs Specifies a list of headers to log.
DiagnosticFrontendRequestDataMasking, DiagnosticFrontendRequestDataMaskingArgs
- Headers
List<Diagnostic
Frontend Request Data Masking Header> A
headers
block as defined below.- Query
Params List<DiagnosticFrontend Request Data Masking Query Param> A
query_params
block as defined below.
- Headers
[]Diagnostic
Frontend Request Data Masking Header A
headers
block as defined below.- Query
Params []DiagnosticFrontend Request Data Masking Query Param A
query_params
block as defined below.
- headers
List<Diagnostic
Frontend Request Data Masking Header> A
headers
block as defined below.- query
Params List<DiagnosticFrontend Request Data Masking Query Param> A
query_params
block as defined below.
- headers
Diagnostic
Frontend Request Data Masking Header[] A
headers
block as defined below.- query
Params DiagnosticFrontend Request Data Masking Query Param[] A
query_params
block as defined below.
- headers
Sequence[Diagnostic
Frontend Request Data Masking Header] A
headers
block as defined below.- query_
params Sequence[DiagnosticFrontend Request Data Masking Query Param] A
query_params
block as defined below.
- headers List<Property Map>
A
headers
block as defined below.- query
Params List<Property Map> A
query_params
block as defined below.
DiagnosticFrontendRequestDataMaskingHeader, DiagnosticFrontendRequestDataMaskingHeaderArgs
DiagnosticFrontendRequestDataMaskingQueryParam, DiagnosticFrontendRequestDataMaskingQueryParamArgs
DiagnosticFrontendResponse, DiagnosticFrontendResponseArgs
- Body
Bytes int Number of payload bytes to log (up to 8192).
- Data
Masking DiagnosticFrontend Response Data Masking A
data_masking
block as defined below.- Headers
To List<string>Logs Specifies a list of headers to log.
- Body
Bytes int Number of payload bytes to log (up to 8192).
- Data
Masking DiagnosticFrontend Response Data Masking A
data_masking
block as defined below.- Headers
To []stringLogs Specifies a list of headers to log.
- body
Bytes Integer Number of payload bytes to log (up to 8192).
- data
Masking DiagnosticFrontend Response Data Masking A
data_masking
block as defined below.- headers
To List<String>Logs Specifies a list of headers to log.
- body
Bytes number Number of payload bytes to log (up to 8192).
- data
Masking DiagnosticFrontend Response Data Masking A
data_masking
block as defined below.- headers
To string[]Logs Specifies a list of headers to log.
- body_
bytes int Number of payload bytes to log (up to 8192).
- data_
masking DiagnosticFrontend Response Data Masking A
data_masking
block as defined below.- headers_
to_ Sequence[str]logs Specifies a list of headers to log.
- body
Bytes Number Number of payload bytes to log (up to 8192).
- data
Masking Property Map A
data_masking
block as defined below.- headers
To List<String>Logs Specifies a list of headers to log.
DiagnosticFrontendResponseDataMasking, DiagnosticFrontendResponseDataMaskingArgs
- Headers
List<Diagnostic
Frontend Response Data Masking Header> A
headers
block as defined below.- Query
Params List<DiagnosticFrontend Response Data Masking Query Param> A
query_params
block as defined below.
- Headers
[]Diagnostic
Frontend Response Data Masking Header A
headers
block as defined below.- Query
Params []DiagnosticFrontend Response Data Masking Query Param A
query_params
block as defined below.
- headers
List<Diagnostic
Frontend Response Data Masking Header> A
headers
block as defined below.- query
Params List<DiagnosticFrontend Response Data Masking Query Param> A
query_params
block as defined below.
- headers
Diagnostic
Frontend Response Data Masking Header[] A
headers
block as defined below.- query
Params DiagnosticFrontend Response Data Masking Query Param[] A
query_params
block as defined below.
- headers
Sequence[Diagnostic
Frontend Response Data Masking Header] A
headers
block as defined below.- query_
params Sequence[DiagnosticFrontend Response Data Masking Query Param] A
query_params
block as defined below.
- headers List<Property Map>
A
headers
block as defined below.- query
Params List<Property Map> A
query_params
block as defined below.
DiagnosticFrontendResponseDataMaskingHeader, DiagnosticFrontendResponseDataMaskingHeaderArgs
DiagnosticFrontendResponseDataMaskingQueryParam, DiagnosticFrontendResponseDataMaskingQueryParamArgs
Import
API Management Diagnostics can be imported using the resource id
, e.g.
$ pulumi import azure:apimanagement/diagnostic:Diagnostic example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.ApiManagement/service/instance1/diagnostics/applicationinsights
Package Details
- Repository
- Azure Classic pulumi/pulumi-azure
- License
- Apache-2.0
- Notes
This Pulumi package is based on the
azurerm
Terraform Provider.