Todos los productos
Search
Centro de documentos

Function Compute:Contexto

Última actualización: Sep 06, 2026

Este tema describe el objeto de contexto disponible cuando escribe código en el entorno de ejecución PHP de Function Compute.

Cuando Function Compute ejecuta su función, el entorno de ejecución pasa un parámetro $context a su handler. Este arreglo contiene metadatos sobre la invocación actual, la configuración de su función y las credenciales temporales que puede usar para llamar a otros servicios de Alibaba Cloud.

Estructura del objeto de contexto

A continuación se muestra un ejemplo de la estructura del arreglo $context en el entorno de ejecución PHP:

[
  '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': []
  }
]

Campos del contexto

Campos de nivel superior

Campo

Tipo

Descripción

requestId

String

El identificador único de la invocación actual. Registre este ID para rastrear problemas cuando ocurran errores.

credentials

Array

El par de AccessKey temporal que Function Compute obtiene al asumir su rol vinculado al servicio. Tiene una vigencia de 36 horas. Use estas credenciales para llamar a otros servicios de Alibaba Cloud, como Object Storage Service (OSS), sin codificar de forma fija su par de AccessKey en el código de la función. Para más detalles, consulte Grant Function Compute permissions to access other Alibaba Cloud services.

function

Array

La configuración de la función invocada.

service

Array

Información sobre el servicio al que pertenece la función.

region

String

El identificador de la región donde se ejecuta la función. Por ejemplo, cn-shanghai para la región China (Shanghai). Para consultar todos los identificadores de región, consulte Service endpoints.

accountId

String

El identificador de la cuenta de Alibaba Cloud propietaria de la función.

tracing

Object

Contexto de seguimiento distribuido basado en el estándar OpenTracing. Se completa cuando el seguimiento está habilitado.

Campos de credentials

Campo

Tipo

Descripción

accessKeyId

String

El AccessKey ID de la credencial temporal.

accessKeySecret

String

El AccessKey secret de la credencial temporal.

securityToken

String

El token de seguridad asociado a la credencial temporal.

Campos de function

Campo

Tipo

Descripción

name

String

El nombre de la función.

handler

String

El handler de la función, con el formato <file>.<method>.

memory

Integer

El tamaño de memoria configurado para la función, en MB.

timeout

Integer

El tiempo máximo de ejecución configurado para la función, en segundos.

initializer

String

El inicializador de la función, con el formato <file>.<method>.

initializationTimeout

Integer

El tiempo máximo de inicialización configurado para la función, en segundos.

Campos de service

Campo

Tipo

Descripción

logProject

String

El Log Project de Simple Log Service asociado a este servicio.

logStore

String

El logstore de Simple Log Service asociado a este servicio.

qualifier

String

La versión o el alias especificados al invocar la función.

versionId

String

La versión del servicio que se invocó realmente.

Campos de tracing

Campo

Tipo

Descripción

openTracingSpanContext

String

El contexto de span de OpenTracing para la invocación actual. Se utiliza para propagar el seguimiento distribuido.

jaegerEndpoint

String

El endpoint del colector de Jaeger para enviar los datos de seguimiento.

openTracingSpanBaggages

Array

Los elementos de baggage de OpenTracing adjuntos al span actual.

Acceder a los campos del contexto en su función

El siguiente ejemplo muestra cómo acceder a los campos comunes del contexto dentro de un handler PHP:

<?php

function handler($event, $context) {
    // Use requestId to correlate logs with a specific invocation
    $requestId = $context['requestId'];
    error_log("Request ID: " . $requestId);

    // Use temporary credentials to call other Alibaba Cloud services
    $accessKeyId     = $context['credentials']['accessKeyId'];
    $accessKeySecret = $context['credentials']['accessKeySecret'];
    $securityToken   = $context['credentials']['securityToken'];

    // Read function configuration
    $functionName = $context['function']['name'];
    $memoryLimit  = $context['function']['memory'];   // in MB
    $timeoutLimit = $context['function']['timeout'];  // in seconds

    // Identify which version or alias was invoked
    $qualifier = $context['service']['qualifier'];
    $versionId = $context['service']['versionId'];

    return "OK";
}
Nota

Las credenciales del contexto son temporales y caducan después de 36 horas. No las almacene en caché fuera de la invocación de la función.