全部產品
Search
文件中心

CDN:邊緣指令碼監控

更新時間:Dec 27, 2024

邊緣指令碼EdgeScript是一種在CDN邊緣節點上啟動並執行JavaScript代碼,用於實現自訂的請求處理邏輯。通過監控邊緣指令碼的執行情況,您可以確保自訂邏輯的正確性和效能。

說明

邊緣指令碼的背景介紹,請參見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規則執行的異常情況。