<fragment>
    <choose>
        <when condition="@(context.Response.StatusCode == 429)">
            <emit-metric name="AI Throttling" value="1" namespace="throttling-events">
                <!-- ID of the operation being used -->
                <dimension name="Operation ID" />

                <!-- Use case or agentic platform name-->
                <dimension name="productName" value="@(context.Product?.Name?.ToString() ?? "Portal-Admin")" />
                
                <!-- Target model or deployment name -->
                <dimension name="deploymentName" value="@((string)context.Variables.GetValueOrDefault<string>("requestedModel", "NA"))" />
                
                <!-- This can be your agent Id or APIM subscription id-->
                <dimension name="appId" value="@((string)context.Variables.GetValueOrDefault<string>("appId", context.Subscription?.Id ?? "Portal-Admin-Sub"))" />
            </emit-metric>
        </when>
    </choose>
</fragment>