本文介紹在Function Compute中使用Node.js運行時開發代碼時,所涉及的Context(上下文)的相關概念。
什麼是上下文
當Function Compute運行您的函數時,會將內容物件傳遞到執行方法中。該對象包含有關調用、服務、函數、鏈路追蹤和執行環境等資訊。
事件請求處理常式(Event Handler)和HTTP請求處理常式(HTTP Handler)都支援內容物件作為傳入參數,且格式和內容相同。內容物件主要提供了以下參數。
欄位 | 類型 | 說明 |
requestId | String | 本次調用請求的唯一ID。您可以記錄該ID,當函數調用出現問題時方便查詢。 |
credentials | Credentials結構,包含以下欄位:
| Function Compute服務通過扮演服務角色而擷取的一組臨時密鑰,其有效時間是36小時。您可以在代碼中使用 |
function | FunctionMeta結構,包含以下欄位:
| 當前調用的函數的一些基本資料,例如函數名、函數入口、函數記憶體和逾時時間。 |
service | ServiceMeta結構,包含以下欄位:
| 當前調用的函數所在的服務資訊,包含服務名稱、接入的Log ServiceSLS的Project和Logstore資訊,以及服務的版本和別名資訊。其中 |
region | String | 當前調用的函數所在地區ID,例如在華東2(上海)地區調用,則地區ID為cn-shanghai。詳細資料,請參見服務接入地址。 |
accountId | String | 函數所屬的阿里雲帳號ID(主帳號ID)。 |
tracing | Tracing結構,包含以下欄位:
| 鏈路追蹤相關參數。具體資訊,請參考鏈路追蹤簡介。 |
logger | Function Compute定義的ContextLog結構,包含以下欄位:
| 日誌對象,用於列印日誌。會格式化輸出日誌,格式為日期 請求ID [層級] 日誌內容 ,例如2022-04-01T10:04:19.024Z 19b394a3-4fff-480c-9b5c-cbdfd6952f4e [info] hello,fc 。 |