title | description | services | author | ms.service | ms.topic | ms.date | ms.author | ms.custom |
---|---|---|---|---|---|---|---|---|
Azure API Management policy reference - emit-metric | Microsoft Docs |
Reference for the emit-metric policy available for use in Azure API Management. Provides policy usage, settings, and examples. |
api-management |
dlepow |
api-management |
article |
03/18/2024 |
danlep |
engagement-fy23 |
[!INCLUDE api-management-availability-all-tiers]
The emit-metric
policy sends custom metrics in the specified format to Application Insights.
Note
- Custom metrics are a preview feature of Azure Monitor and subject to limitations.
- For more information about the API Management data added to Application Insights, see How to integrate Azure API Management with Azure Application Insights.
[!INCLUDE api-management-policy-generic-alert]
<emit-metric name="name of custom metric" value="value of custom metric" namespace="metric namespace">
<dimension name="dimension name" value="dimension value" />
</emit-metric>
Attribute | Description | Required | Default value |
---|---|---|---|
name | A string. Name of custom metric. Policy expressions aren't allowed. | Yes | N/A |
namespace | A string. Namespace of custom metric. Policy expressions aren't allowed. | No | API Management |
value | Value of custom metric expressed as a double. Policy expressions are allowed. | No | 1 |
Element | Description | Required |
---|---|---|
dimension | Add one or more of these elements for each dimension included in the custom metric. | Yes |
Attribute | Description | Required | Default value |
---|---|---|---|
name | A string or policy expression. Name of dimension. | Yes | N/A |
value | A string or policy expression. Value of dimension. Can only be omitted if name matches one of the default dimensions. If so, value is provided as per dimension name. |
No | N/A |
- API ID
- Operation ID
- Product ID
- User ID
- Subscription ID
- Location ID
- Gateway ID
- Policy sections: inbound, outbound, backend, on-error
- Policy scopes: global, workspace, product, API, operation
- Gateways: classic, v2, consumption, self-hosted
-
You can configure at most 10 custom dimensions for this policy.
-
Invoking the
emit-metric
policy counts toward the usage limits for custom metrics per region in a subscription. Learn more
The following example sends a custom metric to count the number of API requests along with user ID, client IP, and API ID as custom dimensions.
<policies>
<inbound>
<emit-metric name="Request" value="1" namespace="my-metrics">
<dimension name="User ID" />
<dimension name="Client IP" value="@(context.Request.IpAddress)" />
<dimension name="API ID" />
</emit-metric>
</inbound>
<outbound>
</outbound>
</policies>
[!INCLUDE api-management-policy-ref-next-steps]