本文介紹在Function Compute中使用PHP運行時開發代碼時,所涉及的Context(上下文)的相關概念。
什麼是上下文
當Function Compute運行您的函數時,會將內容物件傳遞到執行方法中。該對象包含有關調用、服務、函數和執行環境等資訊。
在PHP運行時中,$context參數的資料類型是數組Array類型,定義如下所示。
[
'requestId' => 'b1c5100f-819d-c421-3a5e-7782a27d8a33',
'credentials' => [
'accessKeyId' => 'STS.access_key_id',
'accessKeySecret' => 'access_key_secret',
'securityToken' => 'security_token',
],
'function' => [
'name' => 'my-func',
'handler' => 'index.handler',
'memory' => 128,
'timeout' => 10,
'initializer' => 'index.initializer',
'initializationTimeout' => 10,
],
'service' =>[
'logProject' => 'my-log-project',
'logStore' => 'my-log-store',
'qualifier' => 'qualifier',
'versionId' => '1'
],
'region' => 'cn-shanghai',
'accountId' => '123456',
'tracing': {
'openTracingSpanContext': 'xxxxxxxxxxxx',
'jaegerEndpoint': 'xxxxxxxx',
'openTracingSpanBaggages': []
}
]
$context中包含了以下資訊。
欄位 | 類型 | 說明 |
requestId | String | 本次調用請求的唯一ID。您可以記錄該ID,當函數調用出現問題時方便查詢。 |
credentials | Array類型,包含以下欄位:
| Function Compute服務通過扮演服務角色而擷取的一組臨時密鑰,其有效時間是36小時。您可以在代碼中使用 |
function | Array類型,包含以下欄位:
| 當前調用的函數的一些基本資料,例如函數名、函數入口、函數記憶體和逾時時間。 |
service | Array類型,包含以下欄位:
| 當前調用的函數所在的服務資訊,包含接入的Log ServiceSLS的Project和Logstore資訊,以及版本和別名資訊。其中 |
region | String | 當前調用的函數所在地區ID,例如在華東2(上海)地區調用,則地區ID為cn-shanghai。詳細資料,請參見服務接入地址。 |
accountId | String | 函數所屬的阿里雲帳號ID(主帳號ID)。 |