Registro de llamadas del AWS SDK para JavaScript - AWS SDK para JavaScript

La Guía de referencia de la API de AWS SDK for JavaScript V3 describe en detalle todas las operaciones de la API para la versión 3 (V3) de AWS SDK for JavaScript.

Registro de llamadas del AWS SDK para JavaScript

El AWS SDK para JavaScript dispone de un registrador integrado, por lo que puede registrar las llamadas a la API que realiza con el SDK para JavaScript.

Para activar el registrador e imprimir las entradas de registro en la consola, configure el cliente de servicio mediante el parámetro opcional logger. El ejemplo siguiente permite el registro del cliente y, al mismo tiempo, omite las salidas de rastreo y depuración.

new S3Client({ logger: { ...console, debug(...args) {}, trace(...args) {}, }, });

Uso de middleware para registrar solicitudes

El AWS SDK para JavaScript utiliza una pila de middleware para controlar el ciclo de vida de una llamada a una operación. Cada middleware de la pila llama al siguiente middleware después de realizar cualquier cambio en el objeto de solicitud. Esto también facilita mucho la depuración de problemas en la pila, ya que permite ver exactamente a qué middleware se llamó antes de que se produjera el error. A continuación, se muestra un ejemplo de registro de solicitudes mediante middleware:

const client = new DynamoDB({ region: "us-west-2" }); client.middlewareStack.add( (next, context) => async (args) => { console.log("AWS SDK context", context.clientName, context.commandName); console.log("AWS SDK request input", args.input); const result = await next(args); console.log("AWS SDK request output:", result.output); return result; }, { name: "MyMiddleware", step: "build", override: true, } ); await client.listTables({});

En el ejemplo anterior, se añade un middleware a la pila de middleware del cliente de DynamoDB. El primer argumento es una función que acepta next, que es el siguiente middleware de la pila al que se debe llamar, y context, que es un objeto que contiene información sobre la operación a la que se está llamando. Devuelve una función que acepta args, que es un objeto que contiene los parámetros transferidos a la operación y la solicitud, y devuelve el resultado de llamar al siguiente middleware con args.