Ces paramètres contrôlent la collecte de statistiques de niveau serveur. Lorsque celle-ci est activée, les données produites peuvent être visualisées à travers la famille de vues systèmes pg_stat et pg_statio. On peut se reporter à Chapitre 27, Surveiller l'activité de la base de données pour plus d'informations.
Active la collecte d'informations sur la commande en cours d'exécution dans chaque session, avec l'heure de démarrage de la commande. Ce paramètre est activé par défaut. Même si le paramètre est activé, cette information n'est pas visible par tous les utilisateurs, mais uniquement par les superutilisateurs et l'utilisateur possédant la session traitée ; de ce fait, cela ne représente pas une faille de sécurité. Seuls les superutilisateurs peuvent modifier ce paramètre.
Spécifie le nombre d'octets réservés pour suivre la commande en cours d'exécution pour chaque session active, pour le champ pg_stat_activity.query. La valeur par défaut est 1024. Ce paramètre ne peut être positionné qu'au démarrage du serveur.
Active la récupération de statistiques sur l'activité de la base de données. Ce paramètre est activé par défaut car le processus autovacuum utilise les informations ainsi récupérées. Seuls les super-utilisateurs peuvent modifier ce paramètre.
Active le chronométrage des appels d'entrées/sorties de la base de données. Ce paramètre est désactivé par défaut car il demandera sans cesse l'heure courante au système d'exploitation, ce qui peut causer une surcharge significative sur certaines plateformes. Vous pouvez utiliser l'outil pg_test_timing(1) pour mesurer la surcharge causée par le chronométrage sur votre système. Les informations de chronométrage des entrées/sorties sont affichées dans pg_stat_database, dans la sortie de EXPLAIN(7) quand l'option BUFFERS est utilisée, et par pg_stat_statements. Seuls les superutilisateurs peuvent modifier ce paramètre.
Active le suivi du nombre et de la durée des appels aux fonctions. Précisez pl pour ne tracer que les fonctions de langages procéduraux, ou all pour suivre aussi les fonctions SQL et C. La valeur par défaut est none, qui désactive le suivi des statistiques de fonctions. Seuls les superutilisateurs peuvent modifier ce paramètre.
Les fonctions en langage SQL qui sont assez simples pour être « inlined », c'est à dire substituées dans le code de la requête appelante, ne seront pas suivies, quelle que soit la valeur de ce paramètre.
Active la mise à jour du titre du processus à chaque fois qu'une nouvelle commande SQL est reçue par le serveur. Le titre du processus est visible typiquement avec la commande ps sur Unix ou en utilisant l'explorateur de processus sur Windows. Seuls les superutilisateurs peuvent modifier ce paramètre.
Précise le répertoire dans lequel stocker les données temporaires de statistiques. Cela peut être un chemin relatif au répertoire de données ou un chemin absolu. La valeur par défaut est pg_stat_tmp. Faire pointer ceci vers un système de fichiers mémoire diminuera les entrées/sorties physiques et peut améliorer les performances. Ce paramètre ne peut être positionné que dans le fichier postgresql.conf ou sur la ligne de commande.
Écrivent, pour chaque requête, les statistiques de performance du module respectif dans les traces du serveur. C'est un outil de profilage très simpliste, similaire aux possibilités de l'appel getrusage() du système d'exploitation Unix. log_statement_stats rapporte les statistiques d'instructions globales, tandis que les autres fournissent un rapport par module. log_statement_stats ne peut pas être activé conjointement à une option de module. Par défaut, toutes ces options sont désactivées. Seuls les superutilisateurs peuvent modifier ces paramètres.