

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Journalisation
<a name="configure-logging"></a>

 AWS SDK pour Go Il dispose de fonctionnalités de journalisation qui permettent à votre application d'activer les informations de débogage pour le débogage et le diagnostic des problèmes ou des échecs liés aux demandes. L'interface [Logger](https://pkg.go.dev/github.com/aws/smithy-go/logging#Logger) et ce [ClientLogMode](https://pkg.go.dev/github.com/aws/aws-sdk-go-v2/aws#ClientLogMode)sont les principaux composants à votre disposition pour déterminer comment et ce qui doit être enregistré par les clients. 

## Logger
<a name="logger"></a>

 Lors de la construction d'une [Config](https://pkg.go.dev/github.com/aws/aws-sdk-go-v2/aws#Config), [LoadDefaultConfig](https://pkg.go.dev/github.com/aws/aws-sdk-go-v2/config#LoadDefaultConfig)une configuration par défaut `Logger` est configurée pour envoyer des messages de journal à l'erreur standard du processus (stderr). [Un enregistreur personnalisé qui répond à l'interface [Logger](https://pkg.go.dev/github.com/aws/smithy-go/logging#Logger) peut être transmis en tant qu'argument en l'`LoadDefaultConfig`enveloppant avec config. WithLogger](https://pkg.go.dev/github.com/aws/aws-sdk-go-v2/config#WithLogger). 

 Par exemple, pour configurer nos clients afin qu'ils utilisent notre `applicationLogger` : 

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

 Désormais, les clients configurés à l'aide de la construction `aws.Config` enverront des messages de journal à`applicationLogger`. 

### Enregistreurs sensibles au contexte
<a name="context-aware-loggers"></a>

 Une implémentation de Logger peut implémenter l'[ContextLogger](https://pkg.go.dev/github.com/aws/smithy-go/logging#ContextLogger)interface optionnelle. Les `WithContext` méthodes des enregistreurs qui implémentent cette interface seront invoquées dans le contexte actuel. Cela permet à vos implémentations de journalisation de renvoyer un nouveau `Logger` qui peut écrire des métadonnées de journalisation supplémentaires en fonction des valeurs présentes dans le contexte. 

## ClientLogMode
<a name="clientlogmode"></a>

 Par défaut, les clients du service ne produisent pas de messages de journal. Pour configurer les clients afin qu'ils envoient des messages de journal à des fins de débogage, utilisez le [ClientLogMode](https://pkg.go.dev/github.com/aws/aws-sdk-go-v2/aws#ClientLogMode)membre on`Config`. `ClientLogMode`peut être configuré pour activer les messages de débogage pour : 
+  Signature version 4 (SigV4) 
+  Demander de nouvelles tentatives 
+  Requêtes HTTP 
+  Réponses HTTP 

 Par exemple, pour activer la journalisation des requêtes et des tentatives HTTP : 

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

 Consultez [ClientLogMode](https://pkg.go.dev/github.com/aws/aws-sdk-go-v2/aws#ClientLogMode)les différents modes de journalisation des clients disponibles. 