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.
Paramètres de journalisation dans Aurora PostgreSQL
Vous pouvez personnaliser le comportement de journalisation de votre cluster de bases de données Aurora PostgreSQL en modifiant divers paramètres. Dans le tableau suivant, vous trouverez les paramètres qui affectent combien de temps les journaux sont stockés, quand effectuer la rotation du journal et s’il convient de fournir en sortie le journal au format CSV (valeurs séparées par des virgules). Vous pouvez également trouver le texte de sortie envoyé à STDERR, entre autres paramètres. Pour modifier les valeurs des paramètres modifiables, utilisez un groupe de paramètres de cluster de bases de données pour votre cluster de bases de données Aurora PostgreSQL. Pour plus d’informations, consultez Groupes de paramètres pour Amazon Aurora.
| Paramètre | Par défaut | Description |
|---|---|---|
log_destination |
stderr |
Définit le format de sortie pour le journal. La valeur par défaut est |
log_filename |
postgresql.log.%Y-%m-%d-%H%M |
Spécifie le modèle du nom de fichier journal. Outre la valeur par défaut, ce paramètre prend en charge |
log_line_prefix |
%t:%r:%u@%d:[%p]: |
Définit le préfixe pour chaque ligne de journal qui est écrite sur |
log_rotation_age |
60 |
Minutes après lesquelles la rotation automatique du fichier journal est effectuée. Vous pouvez remplacer cette valeur par toute valeur comprise entre 1 et 1 440 minutes. Pour plus d’informations, consultez Définition de la rotation des fichiers journaux. |
log_rotation_size |
– |
Taille (en Ko) à laquelle la rotation automatique du fichier journal est effectuée. Vous pouvez modifier cette valeur dans une plage comprise entre 50 000 et 1 000 000 kilo-octets. Pour en savoir plus, consultez Définition de la rotation des fichiers journaux. |
rds.log_retention_period |
4 320 |
Les journaux PostgreSQL plus anciens que le nombre de minutes spécifié sont supprimés. La valeur par défaut de 4 320 minutes supprime les fichiers journaux après trois jours. Pour plus d’informations, consultez Définition de la période de conservation des journaux. |
Pour identifier les problèmes d’application, vous pouvez rechercher dans le journal les échecs de requête, les échecs de connexion, les interblocages et les erreurs fatales du serveur. Par exemple, supposons que vous avez converti une application héritée d’Oracle vers Aurora, mais que certaines requêtes n’ont pas été converties correctement. Ces requêtes mal formatées génèrent des messages d’erreur que vous pouvez trouver dans les journaux pour aider à identifier les problèmes. Pour plus d’informations sur la journalisation des requêtes, consultez Activer la journalisation des requêtes pour votre cluster de bases de données Aurora PostgreSQL..
Dans les rubriques suivantes, vous pouvez trouver des informations sur la manière de définir les différents paramètres qui contrôlent les détails de base de vos journaux PostgreSQL.
Rubriques
Définition de la période de conservation des journaux
Le paramètre rds.log_retention_period indique la durée pendant laquelle votre cluster de bases de données Aurora PostgreSQL conserve ses fichiers journaux. La valeur par défaut est de 3 jours (4 320 minutes), mais vous pouvez définir une valeur comprise entre 1 jour (1 440 minutes) et 7 jours (10 080 minutes). Assurez-vous que votre instance de base de données Aurora PostgreSQL dispose d’un espace de stockage suffisant pour contenir les fichiers journaux pendant cette période.
Nous vous recommandons de publier régulièrement vos journaux dans Amazon CloudWatch Logs, afin de pouvoir visualiser et analyser les données système longtemps après que les journaux ont été supprimés de votre cluster de bases de données Aurora PostgreSQL. Pour plus d’informations, consultez Publication de journaux Aurora PostgreSQL sur Amazon CloudWatch Logs. Une fois que vous avez configuré la publication CloudWatch, Aurora ne supprime pas un journal tant qu’il n’a pas été publié dans CloudWatch Logs.
Quand la capacité de stockage de l’instance de base de données atteint un seuil, Amazon Aurora compresse les journaux PostgreSQL plus anciens. Aurora compresse les fichiers en utilisant l’utilitaire de compression gzip. Pour plus d’informations, consultez le site Web de gzip
Lorsque le stockage de l’instance de base de données est faible et que tous les journaux disponibles sont compressés, vous obtenez un avertissement qui ressemble à l’exemple suivant :
Warning: local storage for PostgreSQL log files is critically low for
this Aurora PostgreSQL instance, and could lead to a database outage.
S’il n’y a pas assez de stockage, Aurora peut supprimer les journaux PostgreSQL compressés avant la fin de la période de conservation spécifiée. Si c’est le cas, vous verrez apparaître un message similaire au suivant :
The oldest PostgreSQL log files were deleted due to local storage constraints.
Définition de la rotation des fichiers journaux
Aurora crée de nouveaux fichiers journaux toutes les heures, par défaut. Le timing est contrôlé par le paramètre log_rotation_age. Ce paramètre a une valeur par défaut de 60 (minutes), mais vous pouvez le régler sur une valeur comprise entre 1 minute et 24 heures (1 440 minutes). Au moment de la rotation, un fichier journal distinct est créé. Le fichier est nommé selon le modèle spécifié par le paramètre log_filename.
Les fichiers journaux peuvent également faire l’objet d’une rotation en fonction de leur taille, comme indiqué dans le paramètre log_rotation_size. Ce paramètre indique que le journal doit faire l’objet d’une rotation lorsqu’il atteint la taille spécifiée (en kilo-octets). La valeur log_rotation_size par défaut est de 100 000 Ko (kilo-octets) pour un cluster de bases de données Aurora PostgreSQL, mais vous pouvez la définir entre 50 000 et 1 000 000 de kilo-octets.
Les noms de fichier journal sont basés sur le modèle de nom de fichier spécifié dans le paramètre log_filename. Les valeurs disponibles pour ce paramètre sont les suivantes :
-
postgresql.log.%Y-%m-%d: format par défaut du nom de fichier journal. Inclut l’année, le mois et la date dans le nom du fichier journal. -
postgresql.log.%Y-%m-%d-%H– Inclut l’heure dans le format du nom de fichier journal. -
postgresql.log.%Y-%m-%d-%H%M– Inclut l’heure:minute dans le format du nom de fichier journal.
Si vous définissez le paramètre log_rotation_age sur une valeur inférieure à 60 minutes, définissez également le paramètre log_filename au format minute.
Pour plus d’informations, consultez log_rotation_agelog_rotation_size
Définition de la destination du journal (stderr, csvlog)
Par défaut, Aurora PostgreSQL génère des journaux au format d’erreur standard (stderr). Ce format correspond au réglage par défaut du paramètre log_destination. Chaque message est préfixé selon le modèle spécifié dans le paramètre log_line_prefix. Pour plus d’informations, consultez Compréhension du paramètre log_line_prefix.
Aurora PostgreSQL peut également générer les journaux au format csvlog. La valeur csvlog permet d’analyser les données du journal en tant que données CSV (valeurs séparées par des virgules). Par exemple, supposons que vous utilisez l’extension log_fdw pour travailler avec vos journaux en tant que tables externes. La table externe créée sur les fichiers journaux stderr contient une seule colonne avec les données des événements de journal. En ajoutant csvlog au paramètre log_destination, vous obtenez le fichier journal au format CSV avec des démarcations pour les différentes colonnes de la table externe. Vous pouvez désormais trier et analyser vos journaux plus facilement.
Si vous spécifiez csvlog pour ce paramètre, sachez que les deux fichiers stderr et csvlog sont générés. Assurez-vous de surveiller le stockage consommé par les journaux, en tenant compte de rds.log_retention_period et des autres paramètres qui affectent le stockage et la rotation des journaux. Utiliser stderr et csvlog fait plus que doubler le stockage consommé par les journaux.
Si vous ajoutez csvlog à log_destination et que vous souhaitez revenir au paramètre stderr seul, vous devez réinitialiser le paramètre. Pour ce faire, ouvrez la console Amazon RDS, puis ouvrez le groupe de paramètres personnalisé du cluster de bases de données pour votre instance. Choisissez le paramètre log_destination, choisissez Edit parameter (Modifier le paramètre), puis Reset (Réinitialiser).
Pour plus d’informations sur la configuration de la journalisation, consultez Working with Amazon RDS and Aurora PostgreSQL logs: Part 1
Compréhension du paramètre log_line_prefix
Le format du journal stderr précède chaque message du journal des détails spécifiés par le paramètre log_line_prefix. La valeur par défaut est :
%t:%r:%u@%d:[%p]:t
À partir de la version 16 d’Aurora PostgreSQL, vous pouvez également choisir :
%m:%r:%u@%d:[%p]:%l:%e:%s:%v:%x:%c:%q%a
Chaque entrée de journal envoyée à stderr inclut les informations suivantes en fonction de la valeur sélectionnée :
-
%t: heure de l’entrée du journal sans millisecondes -
%m: heure de l’entrée du journal, en millisecondes -
%r: adresse de l’hôte distant -
%u@%d: nom d’utilisateur @ nom de base de données -
[%p]: ID de processus si disponible -
%l: numéro de ligne de journal par session -
%e: code d’erreur SQL -
%s: horodatage de début du processus -
%v: identifiant de transaction virtuel -
%x: ID de transaction -
%c: ID de session -
%q: délimiteur non session -
%a: nom de l’application