通过边缘脚本的监控功能,您可以查询加速域名下每个脚本的执行情况,帮助您了解脚本是否正常运行。

背景信息

EdgeScript即边缘脚本,简称ES,用于支持CDN的可编程化配置。当CDN控制台上的标准化功能无法满足您的配置需求时,可使用EdgeScript自助编程实现您的配置需求,以实现对客户端请求进行较复杂的逻辑处理。EdgeScript提供了大量的预置函数,您不需要有专业的开发能力,只需要通过简单的ES语法和简单的逻辑判断调用预置函数即可完成自助编程。详细信息,请参见EdgeScript概述

功能介绍

边缘脚本的监控页面可供您查询每个脚本的执行情况,目前支持查询脚本的运行情况和异常情况,最长可以查询近3个月中某1个月的数据。
监控项 说明
运行情况 ES脚本的运行情况。当您为CDN加速域名配置了EdgeScript时,则一个客户端请求到达CDN节点后有以下四种状态:
  • 未执行(NonExecution)

    脚本没有被执行。例如您的ES脚本执行位置为foot,即在CDN控制台上的其他配置后面执行ES脚本,如果请求被其他配置(例如防盗链、重定向等)直接结束了,此时将不会再执行foot阶段的脚本。

  • 执行且命中(ExecutedAndHit)

    脚本被执行并命中了代码逻辑,且正常以return true结束了脚本代码。

  • 执行未命中(ExecutedButNotHit)

    脚本被正常执行完毕,但没有命中代码逻辑,即没有以return true结束脚本代码。例如您的代码中没有return true语句或脚本代码主动return false

  • 执行异常(Exception)
    脚本执行过程中出现了异常。常见于您的脚本代码中出现了逻辑错误或超时,例如传入的参数错误、执行时间超过了50ms等。您可以在ES配置的扩展项中增加_es_dbg配置,并通过CDN控制台EdgeScript页面右上角的调试工具查看代码调试信息,具体定位异常代码。增加_es_dbg配置,请参见EdgeScript快速入门
    说明 _es_dbg=任意值,客户端请求时需携带相同的值。例如,您在CDN控制台上设置了_es_dbg=123,客户端请求时也需要携带参数_es_dbg=123。
异常情况 脚本执行过程中出现了异常并返回了错误码。错误码如下:
  • 400:含不支持的函数。
  • 401:函数期望的参数个数错误。
  • 402:函数参数未匹配的字符串类型。
  • 403:函数参数未匹配的数字类型。
  • 404:函数参数未匹配的字典类型。
  • 405:函数参数未匹配的布尔类型。
  • 406:函数参数未匹配的函数类型。
  • 407:规则执行超时。
  • 408:超过最大调用次数。
  • 409:超过最大循环次数。
  • 410:超过最大循环次数。
  • 499:未知类型错误。

操作步骤

  1. 登录CDN控制台
  2. 在左侧导航栏,选择监控查询 > 边缘脚本监控
  3. 边缘脚本页面,单击运行情况异常情况页签。
  4. 选择域名和查询时间,单击查询
    系统会根据您选择的查询条件,显示ES在运行情况下的四种状态或异常情况下的错误码信息。
    • 运行情况查询结果运行情况图
    • 异常情况查询结果异常情况图

相关API

API 描述
DescribeEsExecuteData 查询ES规则的运行情况。
DescribeEsExceptionData 查询ES规则执行的异常情况。