Type: string
Défaut: stderr
Contexte: sighup
Redémarrer: false

PostgreSQL supporte plusieurs méthodes pour la journalisation des messages du serveur, dont stderr, csvlog et syslog. Sur Windows, eventlog est aussi supporté. Ce paramètre se configure avec la liste des destinations souhaitées séparées par des virgules. Par défaut, les traces ne sont dirigées que vers stderr. Ce paramètre ne peut être configuré que dans le fichier postgresql.conf ou indiqué sur la ligne de commande.

Si csvlog est la valeur de log_destination, les entrées du journal applicatif sont enregistrées dans le format CSV (comma separated value), ce qui est bien pratique pour les charger dans des programmes. Voir runtime-config-logging-csvlog pour les détails. logging_collector doit être activé pour produire des journaux applicatifs au format CSV.

Quand soit stderr ou soit csvlog sont inclus, le fichier current_logfiles est créé pour enregistrer l'emplacement du ou des fichiers de traces actuellement utilisés par le collecteur de traces ainsi que la destination de trace associée. Cela fournit un moyen pratique pour trouver le fichier de trace actuellement utilisé par l'instance. Voici un exemple du contenu de ce fichier :stderr log/postgresql.logcsvlog log/postgresql.csvcurrent_logfiles est recréé quand un nouveau fichier de trace est crée du à une rotation, et quand log_destination est rechargé. Il est supprimé quand ni stderr ni csvlog ne sont inclus dans log_destination, et quand le collecteur de traces es désactivé.

Sur la plupart des systèmes Unix, il est nécessaire de modifier la configuration du démon syslog pour utiliser l'option syslog de log_destination. PostgreSQL peut tracer dans les niveaux syslogLOCAL0 à LOCAL7 (voir syslog_facility) mais la configuration par défaut de syslog sur la plupart des plateformes ignore de tels messages. Il faut ajouter une ligne similaire à :local0.* /var/log/postgresql dans le fichier de configuration de syslog pour obtenir ce type de journalisation.

Sur Windows, quand vous utilisez l'option eventlog pour log_destination, vous devez enregistrer une source d'événement et sa bibliothèque avec le système d'exploitation, pour que le visualisateur des événements Windows puisse affiche correctement les traces. Voir event-log-registration pour les détails.

Recommandations [EN]

Your choice of log destination depends on your system administration plans and the status of your server. “syslog” or “eventlog” (Windows) are good choices for most development servers, because they can support centralized log monitors. For development and testing, however, “csvlog” is probably the most useful, as it allows you to run queries against the log contents.

Commentaires