You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure APIMS配置:忽略OperationNotFound错误并阻止写入Application Insights

解决Azure APIMS中忽略特定错误(OperationNotFound)写入Application Insights的问题

你的原策略无效的核心原因是:仅设置logError变量不会自动阻止APIMS将错误日志发送到Application Insights,需要显式通过日志控制策略来抑制,同时需确保错误条件判断准确。

正确的策略配置

以下是经过验证的有效策略,会在匹配到OperationNotFound错误时,抑制日志写入AI,并返回自定义响应:

<policies>
    <inbound>
        <!-- 可选:初始化日志开关变量 -->
        <set-variable name="shouldLogError" value="true" />
    </inbound>
    <backend>
        <!-- Backend policies go here -->
    </backend>
    <outbound>
        <!-- Outbound policies go here -->
    </outbound>
    <on-error>
        <choose>
            <when condition="@(context.LastError?.Reason == "OperationNotFound")">
                <!-- 禁用日志写入AI -->
                <set-logging enabled="false" />
                <!-- 返回自定义404响应 -->
                <return-response>
                    <set-status code="404" reason="Not Found" />
                    <set-body>Operation not found.</set-body>
                </return-response>
            </when>
            <otherwise>
                <!-- 保留默认错误日志和响应 -->
                <return-response>
                    <set-status code="500" reason="Internal Server Error" />
                    <set-body>Internal server error occurred.</set-body>
                </return-response>
            </otherwise>
        </choose>
    </on-error>
</policies>

关键修改说明

  • 使用<set-logging enabled="false" />:这是直接抑制APIMS将当前请求的日志(包括错误)发送到Application Insights的核心策略,原策略中的logError变量无内置生效逻辑,必须用此显式控制。
  • 确认错误条件准确性:确保context.LastError?.Reason的值确实是OperationNotFound,如果不确定,可以临时添加<return-response>输出@(context.LastError)的完整内容来验证:
    <return-response>
        <set-status code="404" />
        <set-body>@(context.LastError.ToString())</set-body>
    </return-response>
    
  • 策略作用范围:确保该策略应用在正确的范围(全局、产品或API级别),如果仅针对特定API,需将策略绑定到对应API而非全局。

额外验证步骤

  1. 部署策略后,触发OperationNotFound错误请求
  2. 查看Application Insights的traces或exceptions表,确认该错误未被记录
  3. 验证其他错误仍正常写入AI,确保不会影响正常日志

内容的提问来源于stack exchange,提问作者Jakub Holovsky

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 07:33:11