Registro em log - AWS SDK para Go v2

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á.

Registro em log

O AWS SDK para Go tem recursos de registro em log disponíveis que permitem que a aplicação habilite informações de depuração para depurar e diagnosticar falhas ou problemas de solicitação. A interface Logger e o ClientLogMode são os principais componentes disponíveis para você determinar como e o que deve ser registrado em log pelos clientes.

Logger

Ao construir um Config usando LoadDefaultConfig, um Logger padrão é configurado para enviar mensagens de log ao erro padrão do processo (stderr). Um logger personalizado que satisfaça a interface do Logger pode ser passado como argumento para LoadDefaultConfig encapsulando-o com config.WithLogger.

Por exemplo, para configurar nossos clientes para usar nosso applicationLogger:

cfg, err := config.LoadDefaultConfig(context.TODO(), config.WithLogger(applicationLogger))

Agora, os clientes configurados usando o aws.Config construído enviam mensagens de log para applicationLogger.

Loggers cientes do contexto

Uma implementação do Logger pode implementar a interface opcional ContextLogger. Os loggers que implementam essa interface terão seus métodos WithContext invocados com o contexto atual. Isso permite que as implementações de registro em log retornem um novo Logger que pode gravar metadados de registro em log adicionais com base nos valores presentes no contexto.

ClientLogMode

Por padrão, os clientes do serviço não geram mensagens de log. Para configurar clientes para enviar mensagens de log para fins de depuração, use o membro ClientLogMode em Config. ClientLogMode pode ser configurado para ativar a depuração de mensagens para:

  • Assinatura do Signature Version 4 (SigV4)

  • Novas tentativas de solicitação

  • Solicitações de HTTP

  • Respostas HTTP

Por exemplo, para ativar o registro em log de solicitações HTTP e novas tentativas:

cfg, err := config.LoadDefaultConfig(context.TODO(), config.WithClientLogMode(aws.LogRetries | aws.LogRequest))

Consulte em ClientLogMode os diferentes modos de log em do cliente disponíveis.