PGBouncer

Supported OS Linux Mac OS

Présentation

Le check PgBouncer surveille les métriques du pool de connexions et vous permet de mesurer le trafic entrant et sortant de votre application.

Configuration

Installation

Le check PgBouncer est inclus dans le paquet de l’Agent Datadog : vous n’avez donc rien d’autre à installer sur vos nœuds PgBouncer.

Ce check nécessite un utilisateur associé afin d’interroger votre instance PgBouncer :

  1. Créez un utilisateur Datadog dans votre fichier pgbouncer.ini PgBouncer :

    stats_users = datadog
    
  2. Ajoutez un mot de passe associé pour l’utilisateur datadog dans votre fichier userlist.txt PgBouncer :

    "datadog" "<PASSWORD>"
    
  3. Pour vérifier les identifiants, exécutez la commande suivante :

    psql -h localhost -U datadog -p 6432 pgbouncer -c \
    "SHOW VERSION;" \
    && echo -e "\e[0;32mpgBouncer connection - OK\e[0m" \
    || echo -e "\e[0;31mCannot connect to pgBouncer\e[0m"
    

    Une fois invité à saisir un mot de passe, indiquez celui que vous avez ajouté au fichier userlist.txt.

Configuration

Host

Pour configurer ce check lorsque l’Agent est exécuté sur un host :

Collecte de métriques
  1. Modifiez le fichier pgbouncer.d/conf.yaml dans le dossier conf.d/ à la racine du répertoire de configuration de votre Agent. Consultez le fichier d’exemple pgbouncer.d/conf.yaml pour découvrir toutes les options de configuration disponibles :

    init_config:
    
    instances:
      ## @param database_url - string - required
      ## `database_url` parameter should point to PgBouncer stats database url (ie. "pgbouncer")
      #
      - database_url: "postgresql://datadog:<PASSWORD>@<HOSTNAME>:<PORT>/<DATABASE_URL>?sslmode=require"
    

    Remarque : si votre instance de PgBouncer ne prend pas en charge la technologie SSL, remplacez sslmode=require par sslmode=allow pour éviter d’engendrer des erreurs de serveur. Pour en savoir plus sur la prise en charge de SSL, consultez la documentation de Postgres (en anglais).

  2. Redémarrez l’Agent.

Collecte de logs

Disponible à partir des versions > 6.0 de l’Agent

  1. La collecte de logs est désactivée par défaut dans l’Agent Datadog. Vous devez l’activer dans datadog.yaml :

    logs_enabled: true
    
  2. Ajoutez ce bloc de configuration à votre fichier pgbouncer.d/conf.yaml pour commencer à recueillir vos logs Pgbouncer :

    logs:
      - type: file
        path: /var/log/postgresql/pgbouncer.log
        source: pgbouncer
        service: "<SERVICE_NAME>"
    

    Modifiez les valeurs des paramètres path et service et configurez-les pour votre environnement. Consultez le fichier d’exemple pgbouncer.d/conf.yaml pour découvrir toutes les options de configuration disponibles.

  3. Redémarrez l’Agent.

Environnement conteneurisé

Consultez la documentation relative aux modèles d’intégration Autodiscovery pour découvrir comment appliquer les paramètres ci-dessous à un environnement conteneurisé.

Collecte de métriques
ParamètreValeur
<NOM_INTÉGRATION>pgbouncer
<CONFIG_INIT>vide ou {}
<CONFIG_INSTANCE>{"database_url": "postgresql://datadog:<MOTDEPASSE>@%%host%%:%%port%%/<URL_BASEDEDONNÉES>?sslmode=require"}
Collecte de logs

Disponible à partir des versions > 6.0 de l’Agent

La collecte des logs est désactivée par défaut dans l’Agent Datadog. Pour l’activer, consultez la section Collecte de logs avec Kubernetes.

ParamètreValeur
<CONFIG_LOG>{“source”: “pgbouncer”, “service”: “pgbouncer”}

Validation

Lancez la sous-commande status de l’Agent et cherchez pgbouncer dans la section Checks.

Données collectées

Métriques

Remarque : les métriques ne sont pas toutes disponibles pour toutes les versions de PgBouncer.

Événements

Le check PgBouncer n’inclut aucun événement.

Checks de service

Consultez le fichier service_checks.json pour afficher la liste des checks de service fournis par cette intégration.

Dépannage

Besoin d’aide ? Contactez l’assistance Datadog.

PREVIEWING: may/embedded-workflows