Bonnes pratiques pour les tableaux de bord - Amazon Managed Grafana

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Bonnes pratiques pour les tableaux de bord

Cette rubrique de documentation est conçue pour les espaces de travail Grafana qui prennent en charge la version 10.x de Grafana.

Pour les espaces de travail Grafana compatibles avec la version 9.x de Grafana, voir. Travailler dans la version 9 de Grafana

Pour les espaces de travail Grafana compatibles avec la version 8.x de Grafana, voir. Travailler dans la version 8 de Grafana

Cette section fournit des informations sur les meilleures pratiques pour les administrateurs et les utilisateurs de Grafana concernant la création et la maintenance des tableaux de bord Grafana.

Pour plus d'informations sur les différents types de tableaux de bord que vous pouvez créer, consultez les tableaux de bord Grafana : un guide complet des différents types d'articles de blog que vous pouvez créer sur le site Web de Grafana Labs.

Note

Cette section peut vous aider à créer une stratégie pour la surveillance et la maintenance de votre tableau de bord. C'est vous qui connaissez le mieux vos systèmes et vous devriez utiliser cette section pour vous aider à mieux comprendre. En fin de compte, il est de votre responsabilité de créer la meilleure stratégie pour votre système.

Stratégies d'observabilité communes

Lorsque vous avez beaucoup de choses à surveiller, comme un parc de serveurs, vous avez besoin d'une stratégie pour déterminer ce qui est suffisamment important à surveiller. Cette page décrit plusieurs méthodes courantes pour choisir les éléments à surveiller.

Une stratégie logique vous permet de créer des tableaux de bord uniformes et de faire évoluer votre plateforme d'observabilité plus facilement.

Lignes directrices pour les stratégies

  • La méthode USE vous indique dans quelle mesure vos machines sont satisfaites, la méthode RED vous indique dans quelle mesure vos utilisateurs sont satisfaits.

  • Utilisez des rapports sur les causes des problèmes.

  • RED rend compte de l'expérience utilisateur et est plus susceptible de signaler des symptômes de problèmes.

  • Il est important de surveiller les deux pour comprendre votre système. La meilleure pratique consiste à attirer l'attention sur les symptômes plutôt que sur les causes. Généralement, les alertes sont configurées sur les tableaux de bord RED.

Méthode USE

USE est l'abréviation de :

  • Utilisation : pourcentage de temps pendant lequel la ressource est occupée, tel que l'utilisation du processeur du nœud.

  • Saturation : quantité de travail qu'une ressource doit effectuer, souvent la longueur de la file d'attente ou la charge des nœuds.

  • Erreurs — Nombre d'événements d'erreur.

Cette méthode est idéale pour les ressources matérielles de l'infrastructure, telles que le processeur, la mémoire et les périphériques réseau. Pour plus d'informations, consultez le billet de blog de Brendan Gregg, The USE Method.

Méthode RED

RED est l'abréviation de :

  • Taux — Demandes par seconde

  • Erreurs : nombre de demandes qui ont échoué.

  • Durée — Durée de ces demandes, distribution des mesures de latence.

Cette méthode est particulièrement applicable aux services, en particulier à un environnement de microservices. Pour chacun de vos services, instrumentez le code pour exposer ces métriques pour chaque composant. Les tableaux de bord RED sont utiles pour les alertes et les SLA. Un tableau de bord RED bien conçu est un indicateur de l'expérience utilisateur.

Pour plus d'informations, consultez le billet de blog de Tom Wilkie The RED method : How to instrument your services.

Les quatre signaux d'or

Selon le manuel SRE de Google, si vous ne pouvez mesurer que quatre indicateurs de votre système orienté utilisateur, concentrez-vous sur ces quatre indicateurs.

Cette méthode est similaire à la méthode RED, mais elle inclut la saturation.

  • Latence : temps nécessaire pour répondre à une demande.

  • Trafic : niveau de demande imposé à votre système.

  • Erreurs : taux de demandes qui échouent.

  • Saturation — Le niveau de « saturation » de votre système,

Modèle de maturité de gestion des tableaux de bord

La maturité de la gestion des tableaux de bord fait référence à la qualité de la conception et à l'efficacité de votre écosystème de tableaux de bord. Nous vous recommandons de revoir régulièrement la configuration de votre tableau de bord pour évaluer où vous en êtes et comment vous pouvez vous améliorer.

D'une manière générale, la maturité du tableau de bord peut être définie comme faible, moyenne ou élevée.

Une grande partie du contenu de ce sujet est tirée de la conférence Fool-Proof Kubernetes Dashboards for Sleep-Privated Oncalls de KubeCon 2019.

Faible — état par défaut

À ce stade, vous ne disposez d'aucune stratégie cohérente de gestion des tableaux de bord. Presque tout le monde commence ici.

Comment peux-tu savoir que tu es là ?

  • Tout le monde peut modifier vos tableaux de bord.

  • Beaucoup de tableaux de bord copiés, peu ou pas de réutilisation des tableaux de bord.

  • Des tableaux de bord uniques qui traînent pour toujours.

  • Aucun contrôle de version (tableau de bord JSON dans le contrôle de version).

  • Beaucoup de recherches de tableaux de bord, de recherche du bon tableau de bord. Cela signifie beaucoup de temps perdu à essayer de trouver le tableau de bord dont vous avez besoin.

  • Ne pas avoir d'alertes pour vous diriger vers le bon tableau de bord.

Tableaux de bord moyens et méthodiques

À ce stade, vous commencez à gérer l'utilisation de votre tableau de bord à l'aide de tableaux de bord méthodiques. Vous avez peut-être élaboré une stratégie, mais il y a certaines choses que vous pourriez améliorer.

Comment peux-tu savoir que tu es là ?

  • Empêchez l'étalement en utilisant des variables de modèle. Par exemple, vous n'avez pas besoin d'un tableau de bord distinct pour chaque nœud, vous pouvez utiliser des variables de requête. Mieux encore, vous pouvez également faire de la source de données une variable de modèle, afin de pouvoir réutiliser le même tableau de bord sur différents clusters et backends de surveillance.

    Reportez-vous à la liste d'exemples présentée dansVariables, pour des idées.

  • Tableaux de bord méthodiques selon une stratégie d'observabilité.

  • Tableaux de bord hiérarchiques avec accès au niveau suivant.

  • La conception du tableau de bord reflète les hiérarchies de services. Par exemple, vous pouvez utiliser la méthode RED avec une ligne par service. L'ordre des lignes peut refléter le flux de données lorsque vous faites défiler le tableau de bord vers le bas.

  • Comparez comme par exemple : divisez les tableaux de bord des services lorsque l'ampleur diffère. Assurez-vous que les statistiques agrégées ne masquent pas les informations importantes.

  • Des graphiques expressifs avec une utilisation significative des couleurs et des axes normalisés là où vous le pouvez.

    • Exemple de couleur significative : le bleu signifie que c'est bon, le rouge signifie que c'est mauvais. Les seuils peuvent y contribuer.

    • Exemple d'axes de normalisation : lorsque vous comparez l'utilisation du processeur, mesurez en pourcentage plutôt qu'en nombre brut, car les machines peuvent avoir un nombre de cœurs différent. La normalisation de l'utilisation du processeur en fonction du nombre de cœurs réduit la charge cognitive, car le spectateur peut être sûr que tous les cœurs sont utilisés à 100 %, sans avoir à connaître le nombre de processeurs.

  • La navigation dirigée réduit le nombre de devinettes.

    • Les variables du modèle compliquent la navigation aléatoire ou sans but.

    • La plupart des tableaux de bord doivent être liés par des alertes.

    • La navigation est dirigée par des liens. Pour plus d’informations, consultez Gestion des liens du tableau de bord.

  • Tableau de bord JSON contrôlé par version.

Utilisation hautement optimisée

À ce stade, vous avez optimisé l'utilisation de la gestion de votre tableau de bord grâce à une stratégie cohérente et réfléchie. Cela demande de la maintenance, mais les résultats en valent la peine.

  • Réduire activement l'étalement.

    • Passez régulièrement en revue les tableaux de bord existants pour vous assurer qu'ils sont toujours pertinents.

    • Seuls les tableaux de bord approuvés sont ajoutés à la liste des tableaux de bord principaux.

    • Suivi de l'utilisation du tableau de bord. Vous pouvez tirer parti des informations sur l'utilisation.

  • Cohérence dès le design.

  • Utilisez des bibliothèques de scripts pour générer des tableaux de bord et garantir la cohérence du modèle et du style.

    • grafonnet (Jsonnet)

    • grafanalib (Python)

  • Aucune modification dans le navigateur. Les utilisateurs du tableau de bord changent de vue à l'aide de variables.

  • La recherche de tableaux de bord est l'exception, pas la règle.

  • Effectuez des expérimentations et des tests dans une instance Grafana distincte dédiée à cet effet, et non dans votre instance de production. Lorsqu'un tableau de bord dans l'environnement de test s'avère utile, ajoutez-le à votre instance Grafana principale.

Bonnes pratiques pour créer des tableaux de bord

Cette section décrit certaines des meilleures pratiques à suivre lors de la création de tableaux de bord Grafana.

Avant de commencer

Voici quelques principes à prendre en compte avant de créer un tableau de bord.

Un tableau de bord doit raconter une histoire ou répondre à une question

Quelle histoire essayez-vous de raconter avec votre tableau de bord ? Essayez de créer une progression logique des données, par exemple du plus gros au plus petit ou du plus général au plus spécifique. Quel est l'objectif de ce tableau de bord ? (Conseil : si le tableau de bord n'a pas d'objectif, demandez-vous si vous en avez vraiment besoin.)

Utilisez des graphiques simples et concentrez-vous sur la réponse à la question que vous vous posez. Par exemple, si votre question est « Quels sont les serveurs en difficulté ? » , alors vous n'avez peut-être pas besoin d'afficher toutes les données du serveur. Il suffit d'afficher les données des personnes en difficulté.

Les tableaux de bord devraient réduire la charge cognitive, et non l'augmenter

La charge cognitive est essentiellement la difficulté avec laquelle vous devez réfléchir à quelque chose pour le comprendre. Facilitez l'interprétation de votre tableau de bord. Les autres utilisateurs et vous futurs (lorsque vous essaierez de découvrir ce qui s'est cassé à 2 heures du matin) l'apprécieront.

Demandez-vous :

  • Puis-je savoir ce que représente exactement chaque graphique ? Est-ce évident ou dois-je y réfléchir ?

  • Si je le montre à quelqu'un d'autre, combien de temps lui faudra-t-il pour le découvrir ? Vont-ils se perdre ?

Disposer d'une stratégie de surveillance

Il est facile de créer de nouveaux tableaux de bord. Il est plus difficile d'optimiser la création de tableaux de bord et de respecter un plan, mais cela en vaut la peine. Cette stratégie doit régir à la fois le schéma global de votre tableau de bord et garantir la cohérence dans la conception de chaque tableau de bord individuel.

Reportez-vous aux sections Stratégies d'observabilité communes et Niveaux de maturité de la gestion des tableaux de bord pour plus d'informations.

Ecrivez-le

Une fois que vous avez une stratégie ou des directives de conception, notez-les pour maintenir la cohérence au fil du temps.

Les meilleures pratiques à suivre

  • Lorsque vous créez un nouveau tableau de bord, assurez-vous qu'il porte un nom significatif.

    • Si vous créez un tableau de bord pour jouer ou expérimenter, inscrivez le mot TEST ou TMP le nom.

    • Pensez à inclure votre nom ou vos initiales dans le nom du tableau de bord ou sous forme de tag afin que les utilisateurs sachent à qui appartient le tableau de bord.

    • Supprimez les tableaux de bord d'expériences temporaires lorsque vous en avez terminé avec eux.

  • Si vous créez de nombreux tableaux de bord connexes, réfléchissez à la manière de les croiser pour faciliter la navigation. Pour plus d'informations, consultez la section Meilleures pratiques pour la gestion des tableaux de bord, plus loin dans cette section.

  • Grafana extrait les données d'une source de données. Une compréhension de base des sources de données Connexion aux sources de données en général et de vos sources de données spécifiques est importante.

  • Évitez d'actualiser inutilement le tableau de bord afin de réduire la charge sur le réseau ou le backend. Par exemple, si vos données changent toutes les heures, il n'est pas nécessaire de régler le taux de rafraîchissement du tableau de bord à 30 secondes.

  • Utilisez les axes Y gauche et droit lorsque vous affichez des séries chronologiques avec différentes unités ou plages.

  • Ajoutez de la documentation aux tableaux de bord et aux panneaux.

    • Pour ajouter de la documentation à un tableau de bord, ajoutez une visualisation du panneau de texte au tableau de bord. Enregistrez des éléments tels que l'objectif du tableau de bord, les liens vers des ressources utiles et les instructions dont les utilisateurs peuvent avoir besoin pour interagir avec le tableau de bord.

    • Pour ajouter de la documentation à un panneau, modifiez les paramètres du panneau et ajoutez une description. Le texte que vous ajoutez apparaîtra si vous passez le curseur sur le petit i coin supérieur gauche du panneau.

  • Réutilisez vos tableaux de bord et renforcez la cohérence en utilisant des modèles et des variables.

  • Soyez prudent lorsque vous empilez des données graphiques. Les visualisations peuvent être trompeuses et masquer des données importantes. Nous recommandons de le désactiver dans la plupart des cas.

Bonnes pratiques en matière de gestion des tableaux de bord

Cette page décrit certaines des meilleures pratiques à suivre lors de la gestion des tableaux de bord Grafana.

Avant de commencer

Voici quelques principes à prendre en compte avant de commencer à gérer des tableaux de bord.

Observabilité stratégique

Il existe plusieurs stratégies d'observabilité courantes. Vous devez les rechercher et décider si l'un d'entre eux vous convient ou si vous souhaitez créer le vôtre. Quoi qu'il en soit, ayez un plan, notez-le et respectez-le.

Adaptez votre stratégie à l'évolution des besoins si nécessaire.

Niveau de maturité

Quel est le niveau de maturité de votre tableau de bord ? Analysez la configuration actuelle de votre tableau de bord et comparez-la au modèle de maturité de gestion du tableau de bord. Comprendre où vous vous trouvez peut vous aider à décider comment vous rendre là où vous voulez être.

Les meilleures pratiques à suivre

  • Évitez l'étalement des tableaux de bord, c'est-à-dire la croissance incontrôlée des tableaux de bord. L'étalement des tableaux de bord a un impact négatif sur le temps nécessaire pour trouver le bon tableau de bord. Dupliquer des tableaux de bord et modifier « une seule chose » (pire encore : conserver les balises d'origine) est le type d'étalement le plus simple.

    • Passez régulièrement en revue les tableaux de bord et supprimez ceux qui ne sont pas nécessaires.

    • Si vous créez un tableau de bord temporaire, par exemple pour tester quelque chose, préfixez le nom avecTEST:. Supprimez le tableau de bord lorsque vous avez terminé.

  • Copier des tableaux de bord sans modifications importantes n'est pas une bonne idée.

    • Vous passez à côté des mises à jour du tableau de bord d'origine, telles que des modifications de la documentation, des corrections de bogues ou des ajouts aux indicateurs.

    • Dans de nombreux cas, des copies sont effectuées pour simplement personnaliser la vue en définissant les paramètres du modèle. Cela devrait plutôt être fait en maintenant un lien vers le tableau de bord principal et en personnalisant la vue avec des paramètres d'URL.

  • Lorsque vous devez copier un tableau de bord, renommez-le clairement et ne copiez pas les balises du tableau de bord. Les balises sont des métadonnées importantes pour les tableaux de bord utilisés lors des recherches. La copie de balises peut entraîner de fausses correspondances.

  • Gérez un tableau de bord composé de tableaux de bord ou de tableaux de bord à références croisées. Cela peut se faire de plusieurs manières :

    • Créez des liens de tableau de bord, des panneaux ou des liens de données. Les liens peuvent mener à d'autres tableaux de bord ou à des systèmes externes. Pour plus d'informations, reportez-vous à la section Gérer les liens du tableau de bord.

    • Ajoutez un panneau de liste de tableau de bord. Vous pouvez ensuite personnaliser ce que vous voyez en effectuant des recherches par étiquette ou par dossier.

    • Ajoutez un panneau de texte et utilisez le Markdown pour personnaliser l'affichage.