Mis a jour configuration log pour pgbadger + ajout option exclude

This commit is contained in:
emorino 2024-01-08 14:49:44 +01:00
parent 23f38ee5f7
commit f063cbd4fb

View file

@ -1173,16 +1173,13 @@ Avant tout, il faut définir le `log_min_duration_statement` dans la configurati
En résumé voici ce à quoi la configuration de PostgreSQL devrait ressembler :
~~~
log_min_duration_statement = 200 // 200 ms
log_min_duration_statement = 1s
log_checkpoints = on
log_connections = on
log_disconnections = on
log_lock_waits = on
log_temp_files = 0
log_autovacuum_min_duration = 0
log_error_verbosity = default
log_line_prefix = '%t [%p]: [%l-1] user=%u,db=%d '
lc_messages='C'
log_temp_files = 5MB
log_autovacuum_min_duration = 1s
log_line_prefix = '%t [%p]: user=%u,db=%d,app=%a,client=%h '
lc_messages = 'C'
~~~
Installation :
@ -1194,7 +1191,7 @@ Installation :
Exécution :
~~~
# /usr/bin/pgbadger -I -q /var/log/postgresql/postgresql.log.1 -O /var/www/pg_reports/
# /usr/bin/pgbadger -I -q /var/log/postgresql/postgresql.log -O /var/www/pg_reports/
~~~
Plusieurs autres options peuvent être spécifiées, voir l'aide de la commande pour plus d'informations.
@ -1202,9 +1199,14 @@ Plusieurs autres options peuvent être spécifiées, voir l'aide de la commande
On peux mettre l'analyse des logs avec pgBadger dans la crontab comme ceci, avec un umask pour avoir les droits corrects pour nginx ou Apache :
~~~
0 4 * * * umask 022 ; /usr/bin/pgbadger -I -q /var/log/postgresql/postgresql-9.6-main.log.1 -O /var/www/pg_reports/
0 4 * * * umask 022 ; /usr/bin/pgbadger -I -q /var/log/postgresql/postgresql-9.6-main.log -O /var/www/pg_reports/
~~~
On peux également exclure des requêtes avec les options suivantes :
* `--exclude-query` toute requête correspondant à l'expression régulière donnée sera exclue du rapport, exemple : `"^(VACUUM|COMMIT)"`
* `--exclude-file` chemin du fichier qui contient toutes les regex vers utiliser pour exclure les requêtes du rapport. Une expression régulière par ligne.
Vérifier aussi le logrotate des logs de posgresql, si on veux avoir un rapport journalier ou hebdomadaire.
## phpPgAdmin / pgAdmin III