

 O [Guia de referência da API do AWS SDK para JavaScript V3](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/) descreve em detalhes todas as operações da API para o AWS SDK para JavaScript versão 3 (V3). 

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Registrando AWS SDK para JavaScript chamadas
<a name="logging-sdk-calls"></a>

O AWS SDK para JavaScript é instrumentado com um registrador integrado para que você possa registrar as chamadas de API feitas com o SDK para. JavaScript

Para ativar o registrador e imprimir entradas de registro no console, configure o cliente de serviço usando o parâmetro opcional `logger`. O exemplo abaixo habilita o registro do cliente enquanto ignora as saídas de rastreamento e depuração.

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

## Usar um middleware para registrar solicitações
<a name="middleware-logger"></a>

O AWS SDK para JavaScript usa uma pilha de middleware para controlar o ciclo de vida de uma chamada de operação. Cada middleware na pilha chama o próximo middleware após fazer qualquer alteração no objeto de solicitação. Isso também facilita a depuração de problemas na pilha, porque você pode ver exatamente qual middleware foi chamado antes de um erro. Veja o seguinte exemplo de solicitações de registro em log usando um 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({});
```

No exemplo acima, um middleware é adicionado à pilha de middleware do cliente DynamoDB. O primeiro argumento é uma função que aceita `next`, o próximo middleware na pilha a ser chamado, e `context`, um objeto que contém algumas informações sobre a operação que está sendo chamada. Ele retorna uma função que aceita `args`, um objeto que contém os parâmetros passados para a operação e a solicitação, e retorna o resultado da chamada do próximo middleware com `args`.