title | description | services | author | ms.service | ms.topic | ms.date | ms.author | ms.custom |
---|---|---|---|---|---|---|---|---|
Diagnostic logs settings reference | Azure API Management | Reference for settings to define the API data collected from Azure API Management and sent to Azure Monitor logs or Application Insights. | api-management | dlepow | azure-api-management | reference | 05/15/2024 | danlep | engagement-fy23 |
[!INCLUDE api-management-availability-all-tiers]
This reference describes settings for API diagnostics logging from an API Management instance. To enable logging of API requests, see the following guidance:
Note
Certain settings, where noted, apply only to logging to Application Insights.
Setting | Type | Description |
---|---|---|
Enable | boolean | Specifies whether logging of this API is enabled. Logging can be enabled for all APIs or for an individual API. Settings for an individual API override settings for all APIs, if enabled. |
Destination | Azure Application Insights logger | Specifies logger to be used for Application Insights logging. |
Sampling (%) | decimal | Values from 0 to 100 (percent). Specifies the percentage of requests that are logged. 0% sampling means zero requests logged, while 100% sampling means all requests logged. Default: 100 For performance impacts of Application Insights logging, see Performance implications and log sampling. |
Always log errors | boolean | If this setting is enabled, all failures are logged, regardless of the Sampling setting. |
Log client IP address | boolean | If this setting is enabled, the client IP address for API requests is logged. |
Verbosity | Specifies the verbosity of the logs and whether custom traces that are configured in trace policies are logged. * Error - failed requests, and custom traces of severity error * Information - failed and successful requests, and custom traces of severity error and information * Verbose - failed and successful requests, and custom traces of severity error , information , and verbose Default: Information | |
Correlation protocol | Specifies the protocol used to correlate telemetry sent by multiple components to Application Insights. Default: Legacy For information, see Telemetry correlation in Application Insights. | |
Headers to log | list | Specifies the headers that are logged for requests and responses. Default: no headers are logged. |
Number of payload (body) bytes to log | integer | Specifies the number of initial bytes of the frontend or backend request or response body that are logged. Maximum: 8,192. Default: 0 |
Frontend Request | Specifies whether and how frontend requests (requests incoming to the API Management gateway) are logged. If this setting is enabled, specify Headers to log, Number of payload bytes to log, or both. | |
Frontend Response | Specifies whether and how frontend responses (responses outgoing from the API Management gateway) are logged. If this setting is enabled, specify Headers to log, Number of payload bytes to log, or both. | |
Backend Request | Specifies whether and how backend requests (requests outgoing from the API Management gateway) are logged. If this setting is enabled, specify Headers to log, Number of payload bytes to log, or both. | |
Backend Response | Specifies whether and how backend responses (responses incoming to the API Management gateway) are logged. If this setting is enabled, specify Headers to log, Number of payload bytes to log, or both. |
[!INCLUDE api-management-log-entry-size-limit]
- For more information, see the reference for the Diagnostic entity in the API Management REST API.
- Use the trace policy to add custom traces to Application Insights telemetry, resource logs, or request tracing.