Forum PHP 2023 : You Build It, You Run it, l’observabilité pour les devs

Qu’est-ce que l’observabilité ? Elle permet aux équipes, de connaître et comprendre l’état interne d’une application à tout moment et d’accéder rapidement à des informations sur des éventuelles défaillances du système dans les différents environnements. Cela afin d’en informer les différents acteurs concernés, des équipes internes aux utilisateurs.

Cette conférence nous permet de découvrir l’observabilité, son fonctionnement et le rôle du « Runner » chargé d’assurer son bon fonctionnement.

Date : 13/10/2023 de 14h45 à 15h25

Nom du conférencier : Smaine MILIANNI

Image Forum PHP 2023 observabilité

L’observabilité permet de garantir le bon fonctionnement d’un système, d’anticiper les problèmes, d’améliorer les performances, de repérer les comportements anormaux, de réduire les temps d’arrêt et d’optimiser le MTTR (Minimum Time To Resolve), c’est-à-dire le temps nécessaire pour résoudre un problème.

image de l'article You Build It, You Run it, l'observabilité pour les devs

Comment marche l’Observabilité ?

L’observabilité s’appuie sur les points suivants pour pouvoir identifier et monitorer les éventuels problèmes sur le site :

  • Logs : Du texte avec un Timestamp pour voir ce qu’il s’est passé sur le site ou les accès au serveur. Par exemple : si un utilisateur se connecte au site et rencontre une erreur, les logs nous permettent d’avoir un message un peu plus détaillé sur les raisons possibles l’ayant causée.
  • Metrics : Des chiffres qui permettent d’analyser les performances de l’application ou du système. Par exemple : le nombre d’erreurs 500.
  • Traces : Les traces permet de suivre le comportement de l’application. De comprendre par quel endroit le programme est passé dans le code jusqu’à l’erreur.

Tout cela avec un appui humain pour pouvoir alerter et intervenir plus vite sur les problématiques rencontrées. Dans certaines entreprises, cet appui humain s’appelle des « Runners« .

On Call Enginneer : The Runner

Ce sont des personnes en charge de surveiller, d’analyser et de remonter les alertes pour intervenir ou faire intervenir les personnes compétentes pour solutionner le problème selon le niveau de priorité.

Le « Runner » n’est pas un poste fixe. Les rôles peuvent changer chaque semaine, un développeur va passer « Runner » pour quelques jours puis ce sera au tour du chef de projet technique etc.

Cependant, selon la taille et l’organisation de la structure, ce n’est pas un rôle obligatoire. L’observabilité peut aussi se faire de manière plus passive grâce à la gestion des erreurs dans le code et à l’implémentation d’un système de notifications aux personnes compétentes pour intervenir si besoin.

image de l'article You Build It, You Run it, l'observabilité pour les devs

Apprendre de ses erreurs, l’importance du Post-Mortem

Une fois qu’une alerte critique a été détectée, il est essentiel d’en informer les équipes internes pour qu’elles puissent intervenir rapidement. De plus, il ne faut pas négliger la communication avec les utilisateurs. Certains sites disposent d’une page de statut dédiée, permettant aux utilisateurs de suivre en temps réel l’état des services. Un exemple concret de cette approche est celui de Méta, dont la page de statut est disponible à l’adresse suivante : https://metastatus.com/

Une fois l’erreur identifiée, l’intervention des équipes terminée et le statut mis à jour, il reste tout de même une étape importante : Le Post Mortem.

Le Post Mortem est souvent délaissé, car il implique de revenir sur nos erreurs, de les accepter et surtout, d’en tirer des enseignements pour éviter de les répéter. Le but du Post Mortem est d’apprendre de nos erreurs, de partager ces connaissances avec les équipes actuelles et futures pour prévenir la récurrence des problèmes. Il consiste à examiner plusieurs aspects essentiels :

  1. Comprendre ce qui s’est passé.
  2. Identifier l’élément déclencheur du problème.
  3. Analyser les étapes de résolution mises en œuvre.
  4. Définir des mesures pour prévenir la récurrence du problème.

Une fois le Post Mortem passé, il faut pouvoir trouver un moyen de le retrouver rapidement, de garder une traçabilité pour permettre aux équipes d’accéder à l’information mais aussi à prévenir d’éventuelles problématiques futures qui pourraient être similaire ou identique. L’observabilité vous permettra d’avoir un site plus stable tout en réduisant le temps d’indisponibilité pour les utilisateurs en cas d’erreur.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.