Nouveau: Découvrez les fonctionnalités avancées de reporting présentes dans Datasentinel

post-thumb
Comment les rapports d’activité vous permettent d’analyser finement les performances de vos clusters ?

Cet article vous décrit les différentes manières d’utiliser les rapports d’activité afin de compléter vos analyses

Ces rapports peuvent ainsi être partagés entre équipes, mis de côté pour comparaison ultérieure, envoyés à un éditeur de logiciels.
Les exemples d’utilisation sont nombreux.
Ils sont parfaits pour une analyse à froid de l’activité de vos clusters lors de problèmes de performance


Les Rapports


Les rapports sont créés au format PDF et comprennent graphes temporels et données statistiques

Il existe un certain nombre de rapports prédéfinis.

Rapport Description
Workload sessions Activité historisée et détaillée des sessions avec leur impact sur l’activité globale
Top queries Requêtes les plus consommatrices calculées sur un critère particulier
(par temps d’exécution par exemple)
Top tables / indexes Statistiques d’activité des tables et indexes calculées sur un critère particulier (par lectures disque par exemple)
Clusters Statistiques d’activité d’instance (activité IOs, Activité du cache, checkpoints, WAL généré, statistiques par database, …)
Servers Statistiques serveur (activité IOs, cpu, mémoire, swap, réseau, file-systems)
Data size Espace utilisé par database comprenant les tables et indexes les plus volumineux
Rapport complet Rapport complet de l’activité reprenant l’ensemble des éléments précédents
Rapport détaillé d’une query Statistiques complètes de l’activité d’une query ainsi que son ou ses plans d’exécution associés (si extension pg_store_plans installée)



Création d’un rapport d’activité


Un rapport peut contenir l’activité d’un ou plusieurs clusters et peut être filtré sur une database particulière

Les rapports se définissent ainsi:

1. Choix de la tranche horaire d’activité

2. Définition d’un ou plusieurs filtres afin de sélectionner le ou les cluster(s) désiré(s).
Il est possible d’intégrer plusieurs clusters dans un même rapport (Cf TAGs associés à chaque instance)

Quelques possibilités de rapport
Rapport de l’activité d’un cluster
Rapport incluant les clusters d’une architecture haute disponibilité: cluster primaire + read replicas
Rapport de l’activité des clusters de production
Rapport d’activité de l’ensemble des clusters d’un datacenter

3. Choix d’une database particulière si besoin. Par défaut, l’activité de toutes les databases est extraite.

4. Lancement du rapport.

Manual reporting

Si le rapport est initié depuis l’icône scheduled report présent sur certains dashboards, les options du dashboard actif sont alors préservées. (Nombre de lignes maximum, critère choisi, …)

Le rapport peut être généré et téléchargé immédiatement ou envoyé par email à un ou plusieurs destinataires. (Cf Documentation )



Automatiser l’envoi de rapports


L’automatisation des rapports Datasentinel est un processus qui consiste à planifier l’envoi à un moment précis d’un rapport mis à jour automatiquement, à une ou des personnes choisies.
Ce processus est notamment très utile lorsque vous souhaitez utiliser des rapports d’analyse personnalisés.


Automatiser les rapports comporte de nombreux avantages

  • Se concentrer sur l’essentiel: l’analyse des performacnes.
  • Pas besoin de se connecter sur l’interface graphique. Ces rapports peuvent être envoyés à des personnes non déclarées sur la plateforme.
  • Mise de côté des rapports pour analyse, comparaison ultérieure.

Il suffit pour cela, lors de la création d’un rapport, de choisir l’option scheduled email puis de remplir ses caractéristiques d’envoi

  • Choix de l’heure et du jour d’exécution
  • Fréquence d’envoi : journalière ou hebdomadaire
  • Plage horaire d’activité relative à l’heure d’exécution du rapport

scheduled report

Le rapport se déclenchera 3 minutes après sa définition, afin d’avoir les dernières métriques d’activité.
(Cf Documentation pour une gestion complète)



Déclencher l’envoi de rapports via l’API


La gestion de rapports via l’API permet d’intégrer l’exécution et l’envoi de rapports à des moments précis (fin d’un traitement batch de nuit par exemple), très pratique lorsque l’on souhaite avoir une trace d’une activité particulière.

L’exemple ci-dessous crée un rapport complet de l’activité d’un cluster filtré sur une database avec envoi par mail

cat > $TMP_JSON_FILE <<EOF
{
    "utc_time": true,
    "from": "2020-02-29 00:00:00",
    "to": "2020-02-29 04:00:00",
    "filters": [
        {
            "tag": "pg_instance",
            "value": "pg-crm-0926@:9342"
        }
    ],
    "database": "pgbench",
    "report_type": "email",
    "subject": "[Datasentinel] Report activity",
    "recipients": ["contact@datasentinel.io"]
}
EOF

export TOKEN=<<ACCESS_TOKEN>>

curl -sk --header "user-token: $ACCESS_TOKEN" --header 'Content-Type: application/json' -X POST https://$DATASENTINEL_HOST//ds-api/activity/full-report -d @$TMP_JSON_FILE

Cette gestion de rapports peut être incluse dans une chaîne d’automatisation DevOps.
Retrouvez l’ensemble de la documentation de l’API

Conclusion


Les rapports d’activité sont d’une aide précieuse permettant des analyses précises à postériori.
Ces rapports peuvent être partagés, conservés sur disque pour des consultations ultérieures.

Les fonctionnalités uniques de Datasentinel et la simplexité de son interface graphique permettent une prise en main rapide afin d’analyser facilement et précisément les performances de vos instances PostgreSQL


Stay connected!

A propos de Datasentinel


Datasentinel est une plateforme puissante conçue pour surveiller et analyser les performances de vos clusters PostgreSQL.

Avec son interface conviviale et ses fonctionnalités avancées, Datasentinel vous permet d'analyser rapidement et précisément l'activité de vos clusters, d'identifier les processus gourmands en ressources, de configurer des alertes automatiques, de générer des rapports personnalisés, et bien plus encore.

Découvrez les avantages d'une gestion efficace des performances avec Datasentinel.

Demander l'essai