このトピックでは、コードを記述するFunction ComputeにPHPランタイムを使用するときに含まれるコンテキストについて説明します。
コンテキストとは何ですか?
Function Compute が関数を実行すると、システムは関数の実行に使用されるメソッドにコンテキストオブジェクトを渡します。 オブジェクトには、呼び出し、サービス、関数、トレース分析、および実行環境に関する情報が含まれます。
コンテキストオブジェクトは、イベントハンドラーとHTTPハンドラーの入力パラメーターとして使用できます。 イベントハンドラーとHTTPハンドラーのコンテキスト入力パラメーターの形式と内容は同じです。 PHPランタイムでは、$contextパラメーターの値はArray型です。 次のサンプルコードでは、$contextパラメーターを定義します。
[
'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' =>[
'name' => 'my-service',
'logProject' => 'my-log-project',
'logStore' => 'my-log-store',
'qualifier' => 'qualifier',
'versionId' => '1'
],
'region' => 'cn-shanghai',
'accountId' => '123456',
'tracing': {
'openTracingSpanContext': 'xxxxxxxxxxxx',
'jaegerEndpoint': 'xxxxxxxx',
'openTracingSpanBaggages': []
}
]
The following table describes the information contained in the $context parameter.
パラメーター | データ型 | 説明 |
requestId | String | 関数を呼び出すために使用されるリクエストの一意のID。 エラーが発生した場合のトラブルシューティング用のIDを記録できます。 |
資格情報 | 配列タイプ。次のフィールドが含まれます。
| サービスにリンクされたロールを引き受けることによってFunction Computeが取得する一時的なAccessKeyペア。 一時的なAccessKeyペアは5分間有効です。 コードで |
関数 | 配列タイプ。次のフィールドが含まれます。
| 関数の名前、ハンドラー、メモリ、タイムアウト期間など、呼び出された関数に関する基本情報。 |
service | 配列タイプ。次のフィールドが含まれます。
| 関数が属するサービスに関する情報 (Log serviceの名前、関連するプロジェクト、Logstore、バージョン、サービスのエイリアスなど) 。 |
region | String | 関数が呼び出されるリージョンのID。 たとえば、関数が中国 (上海) リージョンで呼び出された場合、リージョンIDはcn-Shanghaiです。 詳細については、「エンドポイント」をご参照ください。 |
accountId | String | 関数が属するAlibaba CloudアカウントのID。 |
トレース | 配列タイプ。次のフィールドが含まれます。
| Tracing Analysisに関連するパラメーター。 詳細については、「概要」をご参照ください。 |