Postgres Café : Développez vos capacités de surveillance avec StatsMgr
L’année 2025 a commencé et nous sommes ravis de publier le deuxième épisode de Postgres Café, une série de blogs et de vidéos de nos équipes chez Data Bene et Xata, réalisée dans le but d’explorer le monde de l’open source et de découvrir ses liens avec l’extensibilité de PostgreSQL. Tout au long de cette série, nous discutons de différentes extensions et des outils qui facilitent la vie des développeurs lorsqu’ils travaillent avec PostgreSQL. Dans notre deuxième épisode, nous explorons une toute nouvelle extension PostgreSQL appelée StatsMgr qui exploite les processus en tâche de fond (background workers) et la mémoire partagée pour capturer, gérer et interroger diverses statistiques pour WAL, SLRU, IO, checkpointing, etc.
Épisode 2: StatsMgr
Dans cet épisode nous présentons l’extension open source StatsMgr, récemment publiée, créée pour surveiller et suivre en continu les événements sur PostgreSQL et le système sous-jacent. Voici un aperçu de ce que cet épisode a couvert :
Traitement personnalisé des métriques
À l’origine, l’idée était de fournir une interface simplifiée pour les métriques, tout en les enrichissant avec une grande variété de types disponibles. Cette fonctionnalité a ensuite été étendue pour résoudre des problèmes tels que :
- Rendre les statistiques disponibles pour la collecte à partir de systèmes externes, sans interruption même lorsque ces systèmes externes sont en panne.
- Fournir une vue immédiate des statistiques PostgreSQL avec suivi historique, y compris les vues et fonctions pg_stat.
- Augmenter et réduire la quantité d’enregistrements historiques en cas de besoin grâce à l’allocation de mémoire tampon dynamique.
- Déboguer des instances PostgreSQL avec analyse historique et sans redémarrages requis.
Cette extension est aussi très bien pour gérer des situations telles que lorsque…
- …votre agent de surveillance est en panne ; l’utilisation de StatsMgr comme sauvegarde vous permet de vous assurer que vous ne perdrez pas de statistiques dans cet événement, car les événements sont capturés indépendamment et stockés pour être collectés ultérieurement par votre agent de surveillance.
- …vous avez des pics ou un comportement inhabituel sur votre système de production. Cette extension vous permet d’obtenir un aperçu de l’activité pour des informations de débogage utiles.
Collection étendue et historique de mesures
Actuellement, les types de statistiques pris en charge incluent :
- WAL
- SLRU
- BGWriter
- Checkpointer
- Archiver
- IO
Chacun est enregistré auprès d’un gestionnaire qui vous permet de récupérer et de gérer ces statistiques, et est également accompagné de structures de mémoire partagée pour stocker des instantanés historiques.
Certaines des prochaines étapes du projet comprendront l’ajout de statistiques dynamiques telles que pg_stat_user_tables, entre autres.
Il reste encore beaucoup de choses à faire, des améliorations subtiles aux nouvelles fonctionnalités majeures. Il existe donc bien sûr de nombreuses opportunités de contribuer au projet, que vous soyez un nouveau venu ou un développeur PostgreSQL confirmé. Vous souhaitez participer à l’effort ? Consultez CONTRIBUTING.md dans le projet.
Regardez l’épisode complet
Pour une exploration approfondie de StatsMgr et de ses capacités, regardez l’épisode complet ici :
Restez à l’écoute pour plus d’outils Postgres
Il y a encore beaucoup à venir sur Postgres Café. Abonnez-vous à la playlist pour découvrir des épisodes qui présentent d’autres outils open source comme pgroll pour les migrations de schémas sans interruption de service, ou Citus Data une extension pour des bases PostgreSQL distribuées et évolutives, et bien plus encore. Restez en contact pour découvrir comment chaque outil peut rendre le travail avec Postgres plus fluide et plus efficace.