Partager via


Surveiller les métriques dans Azure Database pour PostgreSQL

La surveillance des données relatives à vos serveurs vous aide à résoudre les problèmes et à optimiser votre charge de travail. Votre instance de serveur flexible Azure Database pour PostgreSQL fournit différentes options de supervision pour vous donner un aperçu de l’exécution de votre serveur.

Metrics

Azure Database pour PostgreSQL fournit différentes métriques qui donnent un aperçu du comportement des ressources qui prennent en charge l’instance de serveur flexible Azure Database pour PostgreSQL. Chaque métrique est émise à intervalle d’une minute et a jusqu’à 93 jours de rétention. Vous pouvez configurer des alertes basées sur les métriques. Les autres options incluent la configuration d’actions automatisées, l’exécution d’une analyse avancée et l’archivage de l’historique. Pour plus d’informations, consultez la vue d’ensemble des métriques Azure.

Note

Bien que les métriques soient stockées pendant 93 jours, vous pouvez uniquement interroger (dans la vignette Métriques) une valeur maximale de 30 jours sur n’importe quel graphique unique. Si le graphique est vide ou affiche uniquement une partie des données de métriques, vérifiez que l’intervalle entre les dates de début et de fin dans le sélecteur de temps ne dépasse pas 30 jours. Après avoir sélectionné un intervalle de 30 jours, vous pouvez faire défiler le graphique pour afficher la fenêtre de rétention complète.

Métriques par défaut

Les métriques suivantes sont disponibles pour une instance de serveur flexible Azure Database pour PostgreSQL :

Nom d'affichage ID de la mesure Unité Descriptif Par défaut permis
Connexions actives active_connections Nombre Nombre total de connexions au serveur de base de données, y compris tous les états de connexion tels que actifs, inactifs et autres, comme indiqué dans la vue pg_stat_activity. Cette figure représente la somme globale des connexions entre tous les états, sans faire de distinctions entre les états spécifiques. Pour une analyse approfondie sur un état spécifique, tel que les connexions actives, reportez-vous à la métrique « Sessions par état ». Oui
Stockage de sauvegarde utilisé backup_storage_used Octets Quantité de stockage de sauvegarde utilisée. Cette métrique représente la somme du stockage consommé par toutes les sauvegardes complètes, sauvegardes différentielles et sauvegardes de journal que le serveur conserve en fonction de la période de rétention de sauvegarde que vous avez définie. La fréquence des sauvegardes est gérée par le service. Pour le stockage géoredondant, l’utilisation du stockage de sauvegarde est le double de l’utilisation du stockage localement redondant. Oui
Échec des connexions connections_failed Nombre Nombre total d'échecs de connexion. Oui
Connexions ayant abouti connections_succeeded Nombre Nombre de connexions réussies. Oui
Crédits processeur consommés ^ cpu_credits_consumed Nombre Nombre de crédits utilisés par le serveur flexible. S’applique au niveau Burstable. Oui
Crédits processeur restants ^ cpu_credits_remaining Nombre Nombre total de crédits disponibles pour l’expansion. S’applique au niveau Burstable. Oui
Pourcentage de CPU cpu_percent Pourcentage Pourcentage de processeur en cours d’utilisation. Oui
Taille de la base de données database_size_bytes Octets Taille de la base de données en octets. Oui
Profondeur de file d’attente du disque ^ disk_queue_depth Nombre Nombre d’opérations d’E/S en attente sur le disque de données. Oui
IOPS iops Nombre Nombre d’opérations d’E/S sur disque par seconde. Oui
Nombre maximal d’ID de transaction utilisés maximum_used_transactionIDs Nombre Nombre maximal d’ID de transaction utilisés. Oui
Pourcentage de mémoire memory_percent Pourcentage Pourcentage de mémoire en cours d’utilisation. Oui
Sortie du réseau network_bytes_egress Octets Somme totale du trafic réseau sortant sur le serveur pendant une période sélectionnée. Cette métrique inclut le trafic sortant de votre base de données et d’une instance de serveur flexible de base de données pour Postgres Azure, notamment des fonctionnalités telles que la surveillance, les journaux, l’archivage WAL, la réplication, etc. Oui
Entrée réseau network_bytes_ingress Octets Somme totale du trafic réseau entrant sur le serveur pendant une période sélectionnée. Cette métrique inclut le trafic entrant vers votre base de données et vers une instance de serveur flexible de Azure base de données pour Postgres, notamment des fonctionnalités telles que la surveillance, les journaux, l’archivage WAL, la réplication, etc. Oui
E/S par seconde en lecture ^ read_iops Nombre Nombre d’opérations de lecture d’E/S de disque de données par seconde. Oui
Débit de lecture ^ read_throughput Octets Octets lus par seconde à partir du disque. Oui
Stockage gratuit storage_free Octets Quantité d’espace de stockage disponible. Oui
Pourcentage de stockage storage_percent Pourcentage Pourcentage d’espace de stockage utilisé. Le stockage utilisé par le service peut inclure les fichiers de base de données, les journaux des transactions et les journaux d’activité du serveur. Oui
Stockage utilisé storage_used Octets Quantité d’espace de stockage utilisé. Le stockage utilisé par le service peut inclure les fichiers de base de données, les journaux des transactions et les journaux du serveur. Oui
Utilisation du stockage du journal des transactions txlogs_storage_used Octets Quantité d’espace de stockage utilisée par les journaux des transactions. Oui
Débit d’écriture ^ write_throughput Octets Octets écrits sur disque par seconde. Oui
E/S par seconde en écriture ^ write_iops Nombre Nombre d’opérations d’écriture d’E/S de disque de données par seconde. Oui

Note

Les métriques marquées avec ^ sont émises toutes les minutes, mais elles sont traitées et affichées dans des lots de cinq minutes. Ce processus entraîne jusqu’à un délai de cinq minutes dans la visibilité des métriques. Lors de la création d’alertes sur ces métriques, comptez de cette latence pour garantir des alertes précises et en temps voulu.

Métriques améliorées

Utilisez des métriques améliorées pour votre instance de serveur flexible Azure Database pour PostgreSQL pour obtenir une surveillance et des alertes affinées sur les bases de données. Chaque métrique est émise à un intervalle de 1 minute et a jusqu’à 93 jours de rétention. Vous pouvez configurer des alertes basées sur les métriques. Certaines métriques améliorées incluent un paramètre Dimension que vous pouvez utiliser pour fractionner, puis filtrer les données de métriques à l’aide d’une dimension telle que le nom ou l’état de la base de données.

Activation des métriques améliorées

  • La plupart de ces nouvelles métriques sont désactivées par défaut. La colonne la plus à droite des tableaux suivants indique si chaque métrique est activée par défaut ou non. Par défaut, quelques métriques sont activées.
  • Pour activer les métriques qui ne sont pas activées par défaut, définissez le paramètre de serveur metrics.collector_database_activity à ON. Ce paramètre est dynamique et ne nécessite pas de redémarrage de l’instance.
Liste des métriques améliorées

Choisissez parmi les catégories suivantes de métriques améliorées :

  • Activity
  • Base de données
  • Réplication logique
  • Réplication
  • Saturation
  • Trafic
Activity
Nom d'affichage ID de la mesure Unité Descriptif Dimension Par défaut permis
Sessions par état sessions_by_state Nombre Sessions par état, comme montré dans la vue pg_stat_activity. Il catégorise les back-ends clients dans des états différents tels que actifs ou inactifs. État Non
Sessions par WaitEventType sessions_by_wait_event_type Nombre Sessions par type d’événement pour lequel le backend client est en attente. Type d’événement Wait Non
Backend le plus ancien oldest_backend_time_sec Secondes L’âge en secondes du backend le plus ancien (quel que soit l’état). Ne s’applique pas Non
Requête la plus ancienne longest_query_time_sec Secondes Âge en secondes de la requête la plus longue en cours d’exécution. Ne s’applique pas Non
Transaction la plus ancienne longest_transaction_time_sec Secondes Âge en secondes de la transaction la plus longue (y compris les transactions inactives). Ne s’applique pas Non
xmin le plus ancien oldest_backend_xmin Nombre Valeur réelle du paramètre xmin le plus ancien. Si xmin n’augmente pas, cela indique qu’il existe des transactions de longue durée qui peuvent potentiellement empêcher la suppression des tuples morts. Ne s’applique pas Non
Âge xmin le plus ancien oldest_backend_xmin_age Nombre Âge en unités du paramètre xmin le plus ancien. Indique le nombre de transactions passées depuis le paramètre xmin le plus ancien. Ne s’applique pas Non
Base de données
Nom d'affichage ID de la mesure Unité Descriptif Dimension Par défaut permis
Back-ends numbackends Nombre Nombre de backends connectés à cette base de données. DatabaseName Non
Deadlocks deadlocks Nombre Nombre d’interblocages détectés dans cette base de données. DatabaseName Non
Accès aux blocs de disque blks_hit Nombre Nombre de fois où des blocs de disque ont déjà été trouvés dans le cache des tampons, de sorte qu’aucune lecture n’était nécessaire. DatabaseName Non
Lecture de blocs de disque blks_read Nombre Nombre de blocs de disque précédemment lus dans cette base de données. DatabaseName Non
Fichiers temporaires temp_files Nombre Nombre de fichiers temporaires précédemment créés par des requêtes dans cette base de données. DatabaseName Non
Taille des fichiers temporaires temp_bytes Octets Quantité totale de données écrites dans des fichiers temporaires par des requêtes de cette base de données. DatabaseName Non
Total des transactions xact_total Nombre Nombre total de transactions exécutées dans cette base de données. DatabaseName Non
Transactions validées xact_commit Nombre Nombre de transactions dans cette base de données validées. DatabaseName Non
Transactions par seconde tps Nombre Nombre de transactions exécutées en une seconde. DatabaseName Non
Transactions restaurées xact_rollback Nombre Nombre de transactions dans cette base de données qui ont été annulées. DatabaseName Non
Tuples supprimés tup_deleted Nombre Nombre de lignes supprimées par les requêtes de cette base de données. DatabaseName Non
Tuples récupérés tup_fetched Nombre Nombre de lignes extraites par des requêtes dans cette base de données. DatabaseName Non
Tuples insérés tup_inserted Nombre Nombre de lignes insérées par des requêtes dans cette base de données. DatabaseName Non
Tuples retournés tup_returned Nombre Nombre de lignes retournées par les requêtes de cette base de données. DatabaseName Non
Tuples mis à jour tup_updated Nombre Nombre de lignes mises à jour par les requêtes de cette base de données. DatabaseName Non
Réplication logique
Nom d'affichage ID de la mesure Unité Descriptif Dimension Par défaut permis
Retard de réplication logique maximal logical_replication_delay_in_bytes Octets Décalage maximal entre tous les emplacements de réplication logique. Ne s’applique pas Oui
État de synchronisation de l’emplacement de réplication logique (préversion) logical_replication_slot_sync_status Nombre Indique si les emplacements de réplication logique sont synchronisés entre le serveur principal et le serveur de secours dans la haute disponibilité (HA).

1 → emplacements sont synchronisés entre les emplacements principaux et de secours.
0 → Les emplacements ne sont pas synchronisés sur le serveur de secours.
Emplacement de réplication logique Non
Nom d'affichage ID de la mesure Unité Descriptif Dimension Par défaut permis
Retard de réplication logique maximal logical_replication_delay_in_bytes Octets Décalage maximal entre tous les emplacements de réplication logique. Ne s’applique pas Oui
État de synchronisation de l’emplacement de réplication logique (préversion) logical_replication_slot_sync_status Nombre Indique si les emplacements de réplication logique sont synchronisés entre le serveur principal et le serveur de secours dans la haute disponibilité (HA).

1 → emplacements sont synchronisés entre les emplacements principaux et de secours.
0 → Les emplacements ne sont pas synchronisés sur le serveur de secours.

Fournit un signal de préparation au basculement pour la réplication logique. La valeur 0 indique que le système n’est peut-être pas sûr pour le basculement.

Condition préalable : Vérifiez que le paramètre metrics.collector_database_activity du serveur est défini à on pour émettre cette métrique.

Pour les scénarios de HA et les considérations relatives au basculement, consultez la prise en charge de la réplication logique avec HA.
Emplacement de réplication logique Non
Réplica en lecture
Nom d'affichage ID de la mesure Unité Descriptif Dimension Par défaut permis
Retard maximal de réplication physique physical_replication_delay_in_bytes Octets Décalage maximal entre tous les emplacements de réplication physique asynchrone. Ne s’applique pas Oui
Retard de réplica en lecture physical_replication_delay_in_seconds Secondes Retard du réplica en lecture en secondes. Ne s’applique pas Oui
Saturation
Nom d'affichage ID de la mesure Unité Descriptif Dimension Par défaut permis
Pourcentage de bande passante de disque consommée ^ disk_bandwidth_consumed_percentage Pourcentage Pourcentage de bande passante du disque de données consommée par minute. Ne s’applique pas Oui
Pourcentage d’IOPS de disque consommé ^ disk_iops_consumed_percentage Pourcentage Pourcentage d'E/S de disque de données consommées par minute. Ne s’applique pas Oui
Utilisation du processeur postmaster Process postmaster_process_cpu_usage_percent Pourcentage Utilisation du processeur par le processus Postmaster. Non applicable pour la référence SKU Burstable. Ne s’applique pas Non

Note

Les métriques marquées avec ^ sont émises toutes les minutes, mais elles sont traitées et affichées dans des lots de cinq minutes. Ce processus entraîne jusqu’à un délai de cinq minutes dans la visibilité des métriques. Lors de la création d’alertes sur ces métriques, comptez de cette latence pour garantir des alertes précises et en temps voulu.

Trafic
Nom d'affichage ID de la mesure Unité Descriptif Dimension Par défaut permis
Nombre max de connexions ** max_connections Nombre Nombre maximal de connexions. Ne s’applique pas Oui
File d'attente de connexion TCP tcp_connection_backlog Nombre Nombre de connexions TCP en attente qui attendent d’être traitées par le serveur. Ne s’applique pas Non

Le paramètre ** Nombre max de connexions représente la valeur configurée du paramètre du serveur max_connections. Le système interroge cette métrique toutes les 30 minutes.

Points à prendre en compte pour l’utilisation des métriques améliorées
  • Les métriques améliorées qui utilisent la dimension DatabaseName ont une limite de 50 bases de données.
  • Sur la référence SKU Burstable, la limite est de 10 bases de données pour les métriques qui utilisent la dimension DatabaseName.
  • La limite de dimension DatabaseName s’applique à la colonne d’identificateur de base de données (datid) de la vue système pg_stat_database, qui reflète l’ordre de création de la base de données.
  • Le DatabaseName dans la dimension des métriques ne respecte pas la casse. Cela signifie qu’après avoir interrogé la vue pg_stat_database, filtré les lignes dans lesquelles datname est soit template1 soit template0, en ordonnant par datid, et limité les lignes retournées aux 50 premières (ou 10 dans le cas d’une référence SKU Burstable), les métriques pour les noms de base de données dans ce jeu de résultats, qui ne diffèrent que par la casse (par exemple, contoso_database et Contoso_database) sont fusionnées et peuvent ne pas afficher de données précises.

Métriques du nettoyage automatique

Utilisez les métriques de nettoyage automatique pour surveiller et ajuster les performances du nettoyage automatique pour votre instance de serveur flexible Azure Database pour PostgreSQL. Chaque métrique est émise à un intervalle de 30 minutes et a jusqu’à 93 jours de rétention. Vous pouvez créer des alertes pour des métriques spécifiques, et vous pouvez fractionner, puis filtrer des données de métriques à l’aide de la dimension DatabaseName.

Comment activer les mesures du nettoyage automatique

  • Les métriques de nettoyage automatique sont désactivées par défaut.
  • Pour activer ces métriques, définissez le paramètre serveur metrics.autovacuum_diagnostics sur ON.
  • Ce paramètre est dynamique et ne nécessite donc pas de redémarrage de l’instance.

Liste des mesures de nettoyage automatique

Nom d'affichage ID de la mesure Unité Descriptif Dimension Par défaut permis
Analyser les tables utilisateur du compteur analyze_count_user_tables Nombre Nombre de fois où les tables utilisateur uniquement sont analysées manuellement dans cette base de données. DatabaseName Non
Analyser automatiquement les tables utilisateur du compteur autoanalyze_count_user_tables Nombre Nombre de fois où les tables uniquement utilisateur sont analysées par le démon autovacuum dans cette base de données. DatabaseName Non
Nettoyer automatiquement les tables utilisateur du compteur autovacuum_count_user_tables Nombre Nombre de fois où des tables utilisateur uniquement sont nettoyées automatiquement par le démon de nettoyage automatique dans cette base de données. DatabaseName Non
Pourcentage de gonflement bloat_percent Pourcentage Pourcentage de gonflement estimé pour les tables dédiées aux utilisateurs. DatabaseName Non
Tables utilisateur estimées des lignes mortes n_dead_tup_user_tables Nombre Nombre estimé de lignes mortes pour les tables utilisateur uniquement dans cette base de données. DatabaseName Non
Tables utilisateur estimées des lignes actives n_live_tup_user_tables Nombre Nombre estimé de lignes actives pour les tables utilisateur uniquement dans cette base de données. DatabaseName Non
Tables utilisateur estimées des modifications n_mod_since_analyze_user_tables Nombre Nombre estimé de lignes modifiées depuis la dernière analyse des tables utilisateur uniquement. DatabaseName Non
Tables utilisateur analysées tables_analyzed_user_tables Nombre Nombre de tables utilisateur uniquement analysées dans cette base de données. DatabaseName Non
Tables utilisateur analysées automatiquement tables_autoanalyzed_user_tables Nombre Nombre de tables réservées à l'utilisateur analysées par le processus d'autovacuum au sein de cette base de données. DatabaseName Non
Tables utilisateur nettoyées automatiquement tables_autovacuumed_user_tables Nombre Nombre de tables réservées aux utilisateurs qui sont nettoyées par le démon d'autovacuum dans cette base de données. DatabaseName Non
Compteur de tables utilisateur tables_counter_user_tables Nombre Nombre de tables utilisateur uniquement dans cette base de données. DatabaseName Non
Tables utilisateur nettoyées tables_vacuumed_user_tables Nombre Nombre de tables seulement pour les utilisateurs qui sont nettoyées dans cette base de données. DatabaseName Non
Tables d'utilisateur du compteur de vide vacuum_count_user_tables Nombre Nombre de fois où des tables utilisateur uniquement sont nettoyées manuellement dans cette base de données (sans compter VACUUM FULL). DatabaseName Non

Considérations pour l'utilisation des métriques d'autovacuum

  • Les métriques de nettoyage automatique qui utilisent la dimension DatabaseName ont une limite de 30 bases de données.
  • Sur la référence SKU Burstable, la limite est de 10 bases de données pour les métriques qui utilisent la dimension DatabaseName.
  • La limite de dimension DatabaseName s’applique à la colonne OID, qui reflète l’ordre de création de la base de données.

Métriques PgBouncer

Utilisez les métriques PgBouncer pour surveiller les performances du processus PgBouncer. Ces métriques incluent des détails sur les connexions actives, les connexions inactives, le nombre total de connexions mises en pool et le nombre de pools de connexions. Chaque métrique est émise à intervalle d’une minute et a jusqu’à 93 jours de rétention. Vous pouvez configurer des alertes sur les métriques et accéder aux nouvelles dimensions de métriques pour fractionner et filtrer les données de métriques par nom de base de données.

Comment activer les métriques PgBouncer

  • Pour surveiller les métriques PgBouncer, vérifiez que la fonctionnalité pgbouncer est activée via le paramètre pgbouncer.enabled de serveur et activez le paramètre metrics.pgbouncer_diagnosticsde métriques.
  • Ces paramètres sont dynamiques et ne nécessitent pas de redémarrage de l’instance.
  • Les métriques PgBouncer sont désactivées par défaut.

Liste des métriques PgBouncer

Nom d'affichage ID de la mesure Unité Descriptif Dimension Par défaut permis
Connexions clientes actives client_connections_active Nombre Connexions provenant de clients qui sont associées à une instance de serveur flexible de Azure Database pour PostgreSQL. DatabaseName Non
Connexions clientes en attente client_connections_waiting Nombre Connexions provenant de clients qui attendent qu'une instance serveur flexible Azure Database pour PostgreSQL établisse une connexion pour les prendre en charge. DatabaseName Non
Connexions serveur actives server_connections_active Nombre Connexions à une instance de serveur flexible Azure Database pour PostgreSQL qui sont utilisées par une connexion cliente. DatabaseName Non
Connexions de serveur inactives server_connections_idle Nombre Connexions à une instance de serveur flexible Azure Database pour PostgreSQL qui sont inactives et prêtes à traiter une nouvelle connexion cliente. DatabaseName Non
Nombre total des connexions mises en pool total_pooled_connections Nombre Nombre actuel de connexions groupées. DatabaseName Non
Nombre de pools de connexions num_pools Nombre Nombre total de pools de connexions. DatabaseName Non

Points à prendre en compte pour l’utilisation des métriques PgBouncer

  • Les métriques PgBouncer qui utilisent la dimension DatabaseName ont une limite de 30 bases de données.
  • Sur la référence SKU Burstable , la limite est de 10 bases de données qui utilisent la dimension DatabaseName.
  • La limite de dimension DatabaseName est appliquée à la colonne OID, qui correspond à l’ordre de création de la base de données.

Métrique de disponibilité des bases de données

La métrique is-db-alive est une métrique de disponibilité du serveur de base de données pour une instance de serveur flexible Azure Database pour PostgreSQL. Elle retourne 1 pour disponible et 0 pour non disponible. Chaque métrique est émise à une fréquence d’une minute et a jusqu’à 93 jours de rétention. Vous pouvez configurer des alertes sur la métrique.

Nom d’affichage ID de la mesure Unité Descriptif Dimension Par défaut permis
La base de données est active is_db_alive Nombre Indique si la base de données est active ou non. N/A Oui

Points à prendre en compte lors de l’utilisation des métriques de disponibilité de la base de données

  • Agrégez cette métrique avec MAX() pour déterminer si le serveur était en fonctionnement ou en panne au cours de la dernière minute.
  • Agréger ces métriques avec n’importe quelle fréquence souhaitée (5m, 10m, 30m, et ainsi de suite) pour répondre à vos exigences d’alerte et éviter tout faux positif.
  • Les autres agrégations possibles sont AVG() et MIN().

Filtrer, puis fractionner les métriques de dimension

Dans les tableaux précédents, certaines métriques ont des dimensions telles que DatabaseName ou State. Vous pouvez utiliser le filtrage et le fractionnement pour les métriques qui ont des dimensions. Ces fonctionnalités montrent comment les différents segments de métriques (ou valeurs de dimension) affectent la valeur globale de la métrique. Vous pouvez les utiliser pour identifier les valeurs hors norme possibles.

  • Filtrage : utilisez le filtrage pour choisir les valeurs de dimension à inclure dans le graphique. Par exemple, vous pouvez vouloir afficher les connexions inactives lorsque vous établissez un graphique des métriques Sessions-by-State. Vous réglez le filtre sur Inactif dans la dimension État.
  • Fractionnement : utilisez le fractionnement pour contrôler si le graphique affiche des lignes distinctes pour chaque valeur d’une dimension ou s’il agrège les valeurs dans une seule ligne. Par exemple, vous pouvez voir une ligne pour une métrique Sessions-by-State dans toutes les sessions. Vous pouvez voir des lignes distinctes pour chaque session groupée par valeur État. Appliquez le fractionnement à la dimension État pour voir des lignes distinctes.

L’exemple suivant illustre le fractionnement par la dimension État et le filtrage sur des valeurs d’état spécifiques :

Capture d’écran qui montre in exemple de fractionnement et de filtrage des métriques et des dimensions.

Si vous souhaitez en savoir plus sur la configuration de graphiques pour les métriques dimensionnelles, veuillez consulter la rubrique Exemples de graphiques de métriques.

Visualisation des métriques

Vous pouvez utiliser plusieurs options pour visualiser Azure Monitor métriques. Pour la plupart des besoins de surveillance de routine, les tableaux de bord Grafana incorporés et Metrics Explorer fournissent une visibilité prête à l’emploi sans configuration supplémentaire. Envisagez Azure Managed Grafana pour les tableaux de bord et les alertes multi-environnements, multiclouds ou hautement personnalisés.

Composant Descriptif Formation et configuration requises
Page Vue d’ensemble La plupart des services Azure incluent une page Overview dans le portail Azure avec une section Monitor qui montre les métriques récentes et couramment utilisées. Cette vue est destinée à une vérification rapide de l’intégrité et des performances d’un serveur PostgreSQL individuel Azure. Les métriques de plateforme sont collectées automatiquement.
Aucune configuration n’est requise.
Metrics Explorer Utilisez Metrics Explorer pour analyser de manière interactive les métriques Azure Monitor et créer des alertes basées sur des métriques. Il fournit des fonctionnalités de filtrage, d’agrégation et de visualisation flexibles. - Les métriques de plateforme pour les ressources Azure sont disponibles automatiquement.
- Aucune configuration supplémentaire requise une fois la collecte de données activée.
- Les métriques d’invité nécessitent l’agent Azure Monitor (machines virtuelles uniquement).
- Les métriques d’application nécessitent Application Insights.
Tableaux de bord Grafana incorporés (portail Azure) Les tableaux de bord Grafana prédéfinis sont incorporés directement dans le portail Azure pour Azure Database pour PostgreSQL sans frais supplémentaires et sans configuration. Utilisez ces tableaux de bord pour une supervision rapide et intégrée de vos serveurs PostgreSQL. Pour plus d’informations, consultez les tableaux de bord Embedded Grafana dans Azure portail. Aucune configuration n’est requise.
Les tableaux de bord sont disponibles immédiatement dans le portail Azure.
Azure Managed Grafana Utilisez Azure Managed Grafana pour des scénarios avancés tels que les plug-ins étendus, l’authentification avancée et l’approvisionnement, le contrôle multilocataire précis et la connectivité multicloud. Toutes les distributions Grafana incluent le plug-in de source de données Azure Monitor, ce qui permet des tableaux de bord enrichis et des corrélations entre métriques. La connaissance des concepts Grafana est recommandée.
Le programme d’installation peut être simplifié à l’aide du tableau de bord Azure postgreSQL Grafana prédéfini, qui permet la surveillance sur plusieurs instances de serveur flexible PostgreSQL Azure avec une configuration minimale.

Tableaux de bord Grafana incorporés dans Azure portail

Les tableaux de bord Grafana prédéfinis sont incorporés directement dans le portail Azure pour Azure Database pour PostgreSQL sans frais supplémentaires et sans configuration requise. Ces tableaux de bord sont actualisés en quasi-temps réel pour fournir une visibilité sur l’intégrité et les performances du serveur.

Les tableaux de bord visualisent les métriques principales Azure Monitor plateforme, notamment :

  • Disponibilité
  • Connections
  • CPU (Unité centrale de traitement)
  • Mémoire
  • Stockage
  • WAL
  • E/S disque
  • Réseau
  • Transactions

Lorsque vous configurez les paramètres de diagnostic pour transférer les journaux PostgreSQL vers Azure Monitor Logs, les tableaux de bord peuvent afficher des mesures et des journaux côte à côte. Cette fonctionnalité vous permet de mettre en corrélation les pics de performances avec des requêtes spécifiques. Pour plus d’informations sur l’activation du streaming des journaux, consultez les journaux de ressources d'Azure Database pour PostgreSQL.

Les tableaux de bord intégrés sont des ressources Azure attribuées à un abonnement et regroupées par groupes de ressources, et l’accès est régi par le contrôle d’accès basé sur les rôles d’Azure (RBAC). Vous pouvez exporter et déployer des tableaux de bord dans des environnements à l’aide de modèles Azure Resource Manager.

journaux de ressources Azure Database pour PostgreSQL

Ces journaux proviennent d’opérations au niveau du plan de données.

Le système ne collecte pas automatiquement ces logs. Pour collecter ces journaux dans un emplacement externe pris en charge, vous devez configurer le système. L’ingestion, la rétention et l’interrogation ultérieure sont associées à des coûts.

Ces journaux sont organisés en catégories, elles-mêmes classées dans des groupes de catégories.

Les journaux suivants peuvent être diffusés en continu vers une destination externe comme un espace de travail Log Analytics, un compte de stockage, un hub d’événements ou une solution partenaire à l’aide de Paramètres de diagnostic :

Description : journaux du serveur PostgreSQL.
Fréquence d’exécution : 10 secondes.
Nom de la catégorie : PostgreSQLLogs.
Nom complet : Journaux du serveur PostgreSQL.
Inclus dans le groupe de catégories : audit et allLogs.
Table spécifique à la ressource : PGSQLServerLogs.
Valeur de la colonne Category lorsqu’elle est diffusée en continu vers AzureDiagnostics : PostgreSQLLogs.
Fonction pour concaténer des événements à partir d’AzureDiagnostics et d’une table spécifique à la ressource : _PGSQL_GetPostgresServerLogs.
Exigences supplémentaires : Aucune.

Description : capture instantanée des sessions PostgreSQL actives montrant les détails des connexions de base de données actuelles et leur activité, notamment les métadonnées de session, le minutage et les états d’attente.
Fréquence d’exécution : 5 minutes.
Nom de la catégorie : PostgreSQLFlexSessions.
Nom d'affichage : Données des sessions PostgreSQL.
Inclus dans le groupe de catégories : audit et allLogs.
Table spécifique à la ressource : PGSQLPgStatActivitySessions.
Valeur de la colonne Category lorsqu’elle est diffusée vers AzureDiagnostics : PostgreSQLFlexSessions.
Fonction pour concaténer des événements à partir d’AzureDiagnostics et d’une table spécifique à la ressource : _PGSQL_GetPgStatActivitySessions.
Exigences supplémentaires : Aucune.

Description : Statistiques détaillées des performances des requêtes à partir du magasin de requêtes PostgreSQL.
Fréquence d’exécution : 5 minutes lorsqu’elle pg_qs.interval_length_minutes est comprise entre 1 et 5. Nombre de minutes spécifiées dans pg_qs.interval_length_minutes, lorsqu’elle pg_qs.interval_length_minutes est supérieure à 5 minutes.
Nom de la catégorie : PostgreSQLFlexQueryStoreRuntime.
Display name : PostgreSQL Magasin des requêtes Runtime.
Inclus dans le groupe de catégories : audit et allLogs.
Table spécifique à la ressource : PGSQLQueryStoreRuntime.
Valeur de la colonne Category lorsqu’elle est diffusée vers AzureDiagnostics : PostgreSQLFlexQueryStoreRuntime.
Fonction pour concaténer des événements à partir d’AzureDiagnostics et d’une table spécifique à la ressource : _PGSQL_GetQueryStoreRuntime.
Exigences supplémentaires : pg_qs.query_capture_mode doit être défini(e) sur top ou all.

Description : Quelles requêtes étaient en attente de quels événements et pendant combien de temps.
Fréquence d’exécution : 5 minutes lorsqu’elle pg_qs.interval_length_minutes est comprise entre 1 et 5. Nombre de minutes spécifiées dans pg_qs.interval_length_minutes, lorsqu’elle pg_qs.interval_length_minutes est supérieure à 5 minutes.
Nom de la catégorie : PostgreSQLFlexQueryStoreWaitStats.
Nom d'affichage : PostgreSQL Magasin des requêtes Wait Statistics.
Inclus dans le groupe de catégories : audit et allLogs.
Table ressource spécifique : PGSQLQueryStoreWaits.
Valeur de la colonne Category lorsqu’elle est diffusée vers AzureDiagnostics : PostgreSQLFlexQueryStoreWaitStats.
Fonction pour concaténer des événements à partir d’AzureDiagnostics et d’une table spécifique à la ressource : _PGSQL_GetQueryStoreWaits.
Exigences supplémentaires : pg_qs.query_capture_mode doit être définie sur l’une ou l’autre top , allet pgms_wait_sampling.query_capture_mode doit être définie sur on.

Description : Statistiques agrégées au niveau du schéma sur toutes les tables de la base de données, récapitulative des métriques d’activité et de maintenance des tables.
Fréquence d’exécution : 30 minutes.
Nom de la catégorie : PostgreSQLFlexTableStats.
Nom d’affichage : Statistiques de schéma et de nettoyage automatique de PostgreSQL.
Inclus dans le groupe de catégories : audit et allLogs.
Table spécifique à la ressource : PGSQLAutovacuumStats.
Valeur de la colonne Category lorsqu’elle est diffusée vers AzureDiagnostics : PostgreSQLFlexTableStats.
Fonction pour concaténer des événements à partir d’AzureDiagnostics et d’une table spécifique à la ressource : _PGSQL_GetAutovacuumStats.
Exigences supplémentaires : Aucune.

Description : Vue au niveau de la base de données de l’ID de transaction (XID), de l’âge et du risque de bouclage de l’ID multixact, ainsi que des seuils pour les actions de nettoyage automatique et de nettoyage d’urgence.
Fréquence d’exécution : 30 minutes.
Nom de la catégorie : PostgreSQLFlexDatabaseXacts.
Nom d'affichage : transactions en cours PostgreSQL.
Inclus dans le groupe de catégories : audit et allLogs.
Table spécifique à la ressource : PGSQLDbTransactionsStats.
Valeur de la colonne Category lorsqu’elle est transférée à AzureDiagnostics : PostgreSQLFlexDatabaseXacts.
Fonction pour concaténer des événements à partir d’AzureDiagnostics et d’une table spécifique à la ressource : _PGSQL_GetDbTransactionsStats.
Exigences supplémentaires : Aucune.

Description : Journaux intégrés de PgBouncer.
Fréquence d’exécution : 10 secondes.
Nom de la catégorie : N/A.
Nom affiché : N/A.
Inclus dans le groupe de catégories : audit et allLogs.
Table spécifique à la ressource : PGSQLPgBouncer.
Valeur de la colonne Category lorsqu’elle est diffusée vers AzureDiagnostics : PostgreSQLFlexPGBouncer.
Fonction pour concaténer des événements à partir d’AzureDiagnostics et d’une table spécifique à la ressource : _PGSQL_GetPgBouncerLogs.
Exigences supplémentaires : PgBouncer intégré doit être activé sur le serveur en définissant pgbouncer.enabled sur on.

Visualisation des journaux de données

Composant Descriptif Formation et configuration requises
Log Analytics En utilisant Log Analytics, vous pouvez créer des requêtes de journal pour travailler de manière interactive avec les données de journal et créer des alertes de requête de journal. Vous avez besoin d’une formation pour vous familiariser avec le langage de requête, mais vous pouvez utiliser des requêtes prédéfinies pour les exigences courantes.

Journaux du serveur

La fonctionnalité Journaux de serveur de votre instance de serveur flexible Azure Database pour PostgreSQL vous permet d’activer, de configurer et de télécharger les journaux de serveur. Ces journaux sont essentiels pour la résolution des problèmes et l’exécution d’analyses historiques de l’activité du serveur. Par défaut, la fonctionnalité des journaux du serveur est désactivée. Toutefois, après avoir activé la fonctionnalité, votre instance de serveur flexible Azure Database pour PostgreSQL commence à capturer les événements du type de journal sélectionné et les écrit dans un fichier. Vous pouvez ensuite utiliser le portail Azure ou le Azure CLI pour télécharger les fichiers pour faciliter vos efforts de résolution des problèmes.

Rétention des journaux serveur

Les journaux de serveur ont une rétention minimale d’un jour et une rétention maximale de sept jours. Si vous dépassez cette limite, les fichiers journaux les plus anciens sont supprimés pour faire de la place pour les nouveaux fichiers journaux. Pour plus d’informations sur l’activation et la gestion des journaux de serveur, consultez Configurer la capture des journaux de serveur PostgreSQL et les journaux de mise à niveau de version majeure.