Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Centro de ayuda/ FunctionGraph/ Guía del usuario/ Configuración de la función/ Configuración de la notificación de ejecución asincrónica
Actualización más reciente 2022-11-07 GMT+08:00

Configuración de la notificación de ejecución asincrónica

Después de crear una función, configure la notificación de ejecución asíncrona para enviar los resultados de la ejecución al servicio de destino.

  1. Si se muestra un mensaje que indica permisos insuficientes al configurar la notificación de ejecución asincrónica, agregue el permiso de FunctionGraph Administrator. Para obtener más información, consulte Creación de un usuario y concesión de permisos.
  2. Establezca una delegación que permita a FunctionGraph acceder al servicio de destino.
  3. Para evitar la invocación cíclica, no establezca dos funciones como objetivos de ejecución asincrónica entre sí.

Procedimiento

  1. Inicie sesión en la consola de FunctionGraph. En el panel de navegación, seleccione Functions > Function List.
  2. Haga clic en la función que se va a configurar para ir a la página de detalles de la función.
  3. Seleccione Configuration > Configure Async Notification. En la página mostrada, haga clic en Edit junto a Asynchronous Notification Policy.

    Figura 1 Configuración de una política de notificación asincrónica

  4. Establezca los parámetros haciendo referencia a Tabla 1. Por ejemplo, especifique FunctionGraph para el Target Service.

    Figura 2 Configuración de parámetros
    Tabla 1 Descripción del parámetro

    Parámetro

    Descripción

    Asynchronous Execution Notification Policy

    • Max. Retries: número máximo de reintentos cuando falla la invocación asincrónica. Rango de valores: 0–3. Valor predeterminado: 1.
    • Max. Período de validez (s): duración máxima de un mensaje en segundos. Rango de valores: 1–86,400.

    Success Notification

    Target Service: al que se enviará una notificación si una función se ejecuta correctamente.

    1. FunctionGraph
    2. OBS
    3. DIS
    4. SMN

    Failure Notification

    Target Service: al que se enviará una notificación si una función no se ejecuta.

    1. FunctionGraph
    2. OBS
    3. DIS
    4. SMN

  5. Haz clic en OK.

Descripción de la configuración

Para obtener detalles sobre cómo establecer el destino para la invocación asincrónica, consulte Tabla 2. A continuación se muestra un ejemplo:

{
        "timestamp": "2020-08-20T12:00:00.000Z",
	"request_context": {
	        "request_id": "1167bf8c-87b0-43ab-8f5f-26b16c64f252",
	        "function_urn": "urn:fss:xx-xxxx-x:xxxxxxx:function:xxxx:xxxx:latest",
	        "condition": "",
	        "approximate_invoke_count": 0
	 },
	    "request_payload": "",
	    "response_context": {
	        "status_code": 200,
	        "function_error": ""
	  },
	 "response_payload": "hello world!"
}
Tabla 2 Descripción del parámetro

Parámetro

Descripción

timestamp

Hora en que comienza la invocación.

request_context

Contexto de solicitud.

request_context.request_id

ID de una solicitud de invocación asincrónica.

request_context. function_urn

URN de la función que se va a ejecutar asincrónicamente.

request_context.condition

Tipo de error de invocación.

request_context. approximate_invoke_count

Número de tiempos de invocación asíncrona. Si el valor es mayor que 1, se ha reintentado la ejecución de la función.

request_payload

Carga útil de solicitud original.

response_context

Contexto de respuesta.

response_context.statusCode

Código devuelto después de la invocación de la función. Si el código no es 200, se produjo un error del sistema.

response_context.function_error

Información de error de invocación.

response_payload

Carga útil devuelta después de la ejecución de la función.