Type: | integer |
Défaut: | -1 (-1) |
Min: | -1 (-1) |
Max: | 2147483647 (2147483647ms) |
Unité: | milliseconds (ms) |
Contexte: | superuser |
Redémarrer: | false |
Trace la durée de toute instruction terminée dont le temps d'exécution égale ou dépasse cette durée. Par exemple, si le paramètre est positionné à 250ms
, alors toutes les instructions SQL dont la durée est supérieure ou égale à 250 ms sont tracées. Il est utile d'activer ce paramètre pour tracer les requêtes non optimisées des applications. If this value is specified without units, it is taken as milliseconds. Setting this to zero prints all statement durations. -1
(the default) disables logging statement durations. Seuls les superutilisateurs peuvent modifier cette configuration.
This overrides log_min_duration_sample, meaning that queries with duration exceeding this setting are not subject to sampling and are always logged.
Pour les clients utilisant le protocole de requêtage étendu, les durées des étapes Parse (analyse), Bind (lien) et Execute (exécution) sont tracées indépendamment.
Lorsque cette option est utilisée avec log_statement, le texte des instructions tracées du fait de log_statement n'est pas répété dans le message de trace de la durée. Si syslog n'est pas utilisé, il est recommandé de tracer le PID ou l'ID de session à l'aide de log_line_prefix de façon à pouvoir lier le message de l'instruction au message de durée par cet identifiant.
Recommandations [EN]
Sur StackOverflow
Sur pgsql-hackers
- Re: filesystem full during vacuum - space recovery issues
- Re: Send duration output to separate log files
- Re: Fix log_line_prefix to display the transaction id (%x) for statements not in a transaction block
- Re: Add a warning message when using unencrypted passwords
- Send duration output to separate log files