日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

請求級別指標日志

請求級別指標幫助您更好地洞察每一次函數調用,掌握函數執行情況。您可以基于請求指標快速發現并定位問題,分析應用瓶頸。開啟請求級別指標,您將能夠更好地管理和優化您的函數應用。

什么是請求級別指標

請求級別指標是函數請求級別的執行狀態匯總。開啟請求級別指標后,系統會收集函數每次執行的指標信息,包括性能指標、異常指標及追蹤指標,并將這些指標信息投遞到您在日志配置時選擇的日志倉庫中。

  • 性能指標:內存使用情況、函數執行時間、初始化時間及冷啟動信息等。

  • 異常指標:是否執行失敗、錯誤詳情等。

  • 追蹤指標:系統關鍵鏈路執行耗時、集成的鏈路追蹤是否采樣以及HTTP函數的Path、狀態碼和客戶端IP等。

開啟請求級別指標后,函數計算會將每次請求的執行指標投遞到您的日志庫中,具體形式如下。

image

使用場景

  • 基于請求指標查看函數執行詳情、性能指標及錯誤信息等。

    控制臺基于請求級別指標提供請求列表,您可以通過該界面查看每個請求的詳細信息,包含請求執行情況、請求對應的實例ID、執行耗時、占用內存和請求日志等信息。如下圖所示。

    image

    說明

    不開啟請求級別指標也可以查看請求列表,但是請求列表在以下場景可能不準確。

    • 多個相同RequestId反復出現時,無法定位指定請求的日志,多見于異步調用的重試場景。

    • Custom Runtime與Custom Container運行時中如果打印了FC Invoke Start RequestId: xxxFC Invoke End RequestId: xxx,會出現一次調用在請求列表中出現兩次的情況。

  • 基于請求指標進行自定義搜索,創建自定義大盤。

    請求指標以key:val的形式投遞到您的日志庫中,您可以基于業務訴求創建自定義儀表盤。具體操作,請參見創建儀表盤

注意事項

  • 生效范圍

    請求級別指標日志是服務的配置項,開啟后對服務下的所有函數生效,每個函數的每次執行都會記錄一條日志。

  • 費用

    日志投遞到日志服務中,會產生一定的日志存儲費用。關于日志服務定價,請參見產品定價

開啟請求級別指標

通過控制臺開啟請求級別指標

前提條件

操作步驟

  1. 登錄函數計算控制臺,在左側導航欄,單擊服務及函數
  2. 在頂部菜單欄,選擇地域,然后在服務列表頁面,單擊目標服務操作列的配置
  3. 在編輯服務頁面的日志配置區域,按需設置以下配置項,然后單擊保存

    主要配置項說明如下,其余配置項保持默認值即可。

    配置項

    說明

    示例值

    日志功能

    是否支持將函數調用執行的日志存儲至日志服務SLS。關于日志功能的詳細信息,請參見配置日志

    啟用

    日志項目

    選擇已配置的日志項目。

    aliyun-fc-hangzhou-2238f0df-a742-524f-9f90-976ba*******

    日志庫

    選擇已配置的日志庫。

    function-log

    請求級別指標

    是否查看請求級別指標。啟用后,函數每次調用執行的指標信息將被收集,并被投遞到您在日志配置時選擇的Logstore。

    啟用

通過ServerlessDevs工具開啟請求級別指標

前提條件

操作步驟

  1. 創建代碼目錄,目錄結構如下所示。

    .
    ├── code
    │   └── index.js
    └── s.yaml

    s.yaml文件示例如下。

    示例中字段enableRequestMetrics用于配置請求級別指標功能,開啟請求級別指標前需先開啟日志功能,并設置logstore和project為您賬號下已存在的日志項目和日志庫。

    edition: 1.0.0
    name: hello-world-app
    access: "default"
    
    vars: 
      region: "cn-hangzhou"
      service:
        name: "hello-world-service"
        description: 'hello world by serverless devs'
        logConfig: # logstore和project需按照實際修改,您也可以使用logConfig:auto,自動創建project和logstore
          project: 'your-project'
          logstore: 'your-logstore'
          enableRequestMetrics: true  # 請求級別指標開關,開啟后系統會收集函數每次執行的指標信息
          enableInstanceMetrics: true
        role: 'acs:ram::<accountID>:role/aliyunfcdefaultrole' # 請將<accountID>替換為您的阿里云賬號ID
    
    services:
      helloworld:
        component: fc 
        props:
          region: ${vars.region} 
          service: ${vars.service}
          function:
            name: "hello-world"
            description: 'hello world by serverless devs'
            runtime: nodejs14
            codeUri: ./code
            handler: index.handler
            memorySize: 128
            timeout: 60
  2. 執行以下命令部署應用。

    sudo s deploy -y

    執行成功后,您可以登錄函數計算控制臺查看已部署函數所屬服務的請求級別指標功能已經啟用。

日志查詢

日志格式

請求級別指標日志主題遵循以下格式:FCRequestMetrics:serviceName/functionName。您可以在日志服務中通過查詢條件 __topic__: "FCRequestMetrics:serviceName/functionName" 篩選出所有請求級別指標日志。更多信息,請參見查詢和分析日志

指標字段

請求級別指標會記錄以下信息。

指標名稱

描述

示例值

是否每次調用都會記錄

serviceName

服務名稱。

my-service

functionName

函數名稱。

my-function

versionId

版本名稱。

12

qualifier

服務別名。默認為LATEST。

prod

requestId

請求ID。

db72ce53-ccbe-4216-af55-642622e01494

operation

操作名稱。

InvokeFunction

invocationType

調用類型,包含以下兩種。

Sync:同步調用

Async:異步調用

Sync

memoryMB

函數的內存上限。

512

memoryUsageMB

函數執行消耗的內存。

410

durationMs

請求執行時間。

20.20

isColdStart

是否為冷啟動。

說明

當請求抵達函數計算時,函數計算系統沒有已經啟動的函數實例執行請求,需要重新創建實例、下載代碼、啟動執行環境。

請求生命周期內經歷了完整的創建實例、下載代碼、啟動執行環境過程的請求我們稱之為冷啟動請求。

函數計算平臺對冷啟動做了很多優化,為避免冷啟動,平臺會提前創建實例,請求抵達函數計算平臺后創建實例過程中,可能會等到一個已經創建好的實例,這種請求我們不稱之為冷啟動請求。

false

instanceEvent

實例事件。目前只有ColdStart,在冷啟動請求時記錄。

ColdStart

hasFunctionError

函數執行是否出現函數錯誤。

false

errorType

函數錯誤類型,包含以下三種:

  • FunctionOOMError:內存溢出。

  • FunctionTimeoutError:執行時間超限。

  • FunctionUnhandledError:未捕獲的其他異常。

FunctionUnhandledError

否。僅在函數執行出現錯誤即hasFunctionError:true時記錄。

invokeFunctionLatencyMs

函數執行時間。

99.00

是。每次都會記錄。

traceContext

鏈路追蹤上下文信息。

371d3ff242fcee9:371d3ff242fcee9:0:1

否。僅當配置鏈路追蹤時記錄。

isSampled

請求是否被鏈路追蹤采樣。

true

否。僅當配置鏈路追蹤時記錄。

resourceMode

執行請求的實例類型。取值如下:

  • OnDemand:表示按量實例。

  • Provision:表示預留實例。

OnDemand

instanceID

實例ID。

c-65603d8c-37e1bf7123054a77****

hostname

實例Host。

c-65603d8c-37e1bf7123054a77****

ipAddress

實例IP地址。

說明:此IP為實例內部IP,用于區分不同實例,不是實例公網IP地址。

21.0.XX.XX

activeInstances

活躍實例數。

1

activeInstancesPerFunction

當前函數活躍實例數。

1

scheduleLatencyMs

調度耗時。請求冷啟動時,調度延時相對比較長。

10.07

coldStartStartTimestamp

冷啟動開始時間戳。

1700806029167

否。僅當發生冷啟動時有記錄。

coldStartLatencyMs

冷啟動耗時。

487.65

否。僅當發生冷啟動時有記錄。

prepareCodeStartTimestamp

下載代碼開始時間戳。13位時間戳,精確到毫秒。

1700806029167

否。僅當發生冷啟動時有記錄。

prepareCodeLatencyMs

下載代碼耗時。

0.18

否。僅當發生冷啟動時有記錄。

runtimeInitializationStartTimestamp

運行時初始化開始時間戳。

1700806029168

否。僅當發生冷啟動時有記錄。

runtimeInitializationMs

運行時初始化耗時。

487.37

否。僅當發生冷啟動時有記錄。

asyncAttemptStartTimestamp

異步調用函數執行失敗默認重試3次

此參數為第${retryCount}次重試的開始時間戳。

1700806028084

否。僅當異步調用時有記錄。

asyncAttemptLatencyMs

異步調用函數執行失敗默認重試3次

此參數為第${retryCount}次重試的開始時間戳。

1688.74

否。僅當異步調用時有記錄。

asyncMode

異步調用模式。取值說明如下:

  • Stateless:無狀態異步調用

  • Stateful:有狀態異步調用

Stateful

否。僅當異步調用時有記錄。

retryCount

重試次數。

0

否。僅當異步調用時有記錄。

檢索日志

檢索日志需要配上索引,函數計算控制臺會自動幫您配置索引。配置索引后,您可以在日志服務控制臺對應的日志庫中使用SQL語句來進行請求檢索和請求篩選。您可以通過指定topic來限制查找范圍為請求級別指標日志。

例如,您需要查詢執行時間超過10s的請求列表,可以使用以下SQL語句。

__topic__: "FCRequestMetrics:s1/f1" AND qualifier: q1 and operation: InvokeFunction and durationMs>1000

更多復雜的查詢語法,請參見查詢和分析日志

制作自定義大盤

如果您想制作橫坐標為t,縱坐標為指標值的圖標,可以參考以下SQL語句。

__topic__: "FCRequestMetrics:s1/f1" AND qualifier: q1 and operation: InvokeFunction | select __time__ - __time__ % 60 as t, count(*) as invocations, avg(durationMs) as avgDurationMs group by t order by t 

更多創建自定義儀表盤的信息,請參見創建儀表盤