Archive for October, 2013

Faire de bons graphiques pour le monitoring

Thursday, October 17th, 2013

Avoir des bons graphiques est important.

Un graphique c’est une fenêtre sur votre système et c’est aussi ce qui vous permet d’en avoir une représentation bâtit à partir de vos mesures…

A l’avenir, c’est aussi ce qui permettra d’automatiser votre détections d’anomalie voir de les prédire. Mais pour tous cela, il faudra être capable de définir des patterns et d’apprendre à votre système, de plus quoi que vous fassiez il restera toujours les cas aux limites pour lesquels vous aurez besoin de comprendre ce qui se passe. C’est pour toutes ces raisons qu’avoir de bons graphiques est important.

Alors, c’est quoi un bon graphique et comment le créer ?

Un bon graphique est une représentation de l’état du système qui donne une description significative, maximise la compréhension et la vision du phénomène, et permet d’inspecter facilement et de détecter les problèmes, et être motivé pour lancer les actions et résoudre des problèmes (sic). On le comprend c’est donc un système complexe à construire donc les principes fondamentaux font appels aux techniques de visualisation des données mais aussi à l’utilisateur.

Revoyons donc quelques un de ces fondamentaux :

  • Il doit être consistent.

Cela veut dire que l’objet suivit et sa représentation doivent être cohérente. Il est des cas, ou par exemple, une ligne ne donne pas une bonne indication de ce que l’on mesure (ex: stacked area vs ligne). On doit aussi retrouver des unités cohérentes pour des mesures semblables.

  • On doit avoir un contexte

En général, la première question c’est « qu’est-ce que je regarde », ou bien « ou est-t-on » ? Il est en effet important que l’on ne soit pas perdu dans la masse de donnée et que l’on ait assez d’indicateurs visuels pour ne pas devoir faire des efforts pour se rappeler ce que l’on regarde.

Le moyen le plus simple pour cela, c’est d’avoir un affichage hiérarchique clair et une convention de nommage cohérente et constante. (ex : network>>eth0>>all )

L’autre point qui facilite cela : afficher le maximum d’information possible, sans toutefois compromettre la lisibilité !

  • La lisibilité, parlons-en !

Vous avez un écran 32 pouces et pourtant pas encore assez de place ?  Quoi que vous fassiez la place sera toujours limitée vis-à-vis du nombre d’éléments. Il faudra donc faire des choix entre niveau de détail et quantité d’objet. Une solution qui peut aider dans un grand nombre de cas : les « horizon graph ». Un « horizon graph » est un moyen efficace en espace pour analyser et comparer plusieurs ensembles de données de séries chronologiques, typiquement ce qui arrive le plus fréquemment en monitoring. Pour cela, l’axe y est divisé de façon uniforme en bande.

Autre moyen, simple, pour améliorer les choses : éliminer les éléments inutiles. Comment ? Si vous n’êtes pas sûr que cela serve : ne le mettez pas !

  • La mise en perspective, « il y a un pic, et alors ? ».

Une mesure à elle toute seule ne nous dit rarement quelque chose, elle fait souvent partie d’un tout et il est important de voir l’ensemble. Les évènements qui ont eu lieu au même instant voire à plus grande échelle sur plusieurs systèmes sont souvent important. Pour cela, il faut pouvoir mettre les graphiques en perspective (après l’horizon-;-), les regrouper afin de voir les relations. Pour cela il est important de pouvoir aligner des graphiques sur le même axe de temps afin de les parcourir simultanément. Idéalement, il faudrait pouvoir afficher toutes les mesures en un point du temps donné durant ce parcours.

  • Dernier paramètre et non des moindres : l’utilisateur.

Regarder des graphiques c’est rarement marrant, c’est même souvent lassant. Il faut donc que ce soit agréable à faire, et oui ! Une interface bien designé fera que l’on sera plus enclin à l’utiliser. En effet, même pour afficher des graphiques les règles de base du design son valable :

  1. Avoir des blocs clair
  2. Une consistance dans les formes, les fontes, les graphiques …
  3. Un cheminement simple (ex: haut -> bas, gauche -> droite)
  4. Du contraste pour mettre en avant les informations importantes et pour le coup un chalenge important : la gestion des couleurs dans les graphiques

Si l’on résume ce que l’on a besoin : consistance entre mesure et objet, une mise en perspective des mesures avec un bon contexte, le tout dans une interface clair et facile d’utilisation et vous aurez le système de visualisation de votre monitoring parfait !

 

Pour ceux qui voudrait en savoir plus sur les horizon graph :

Time on the horizon :  http://www.perceptualedge.com/articles/visual_business_intelligence/time_on_the_horizon.pdf

Sizing the horizon : The Effects of Chart Size and Layering on the Graphical Perception of Time Series Visualizations : http://vis.berkeley.edu/papers/horizon/2009-TimeSeries-CHI.pdf