Dysfonctionnements pris en charge
- interruptions de communication rares ;
- plantages qui ne surviennent qu’après une longue durée de fonctionnement ;
- problèmes d’intégration avec un équipement difficiles à reproduire ;
- fuites de mémoire ou de handles et augmentation du nombre de threads ;
- problèmes impossibles à expliquer faute de journaux suffisants.
Même si le fonctionnement est normal la plupart du temps, les défauts qui ne provoquent qu’occasionnellement une panne exigent avant tout une méthode d’isolement adaptée.
Déroulement de l’analyse
- Nous séparons les causes internes à l’application de celles liées aux communications, aux équipements et au système d’exploitation.
- Nous augmentons les informations observables : journaux, métriques, paquets, nombre de handles et chemins d’exception.
- Nous réduisons ensuite les conditions de reproduction, identifions la cause et définissons les mesures de prévention.
Sujets particulièrement adaptés
- blocages et délais des communications TCP / socket ;
- anomalies de communication avec des caméras industrielles ou d’autres périphériques ;
- instabilité de logiciels existants utilisant COM / ActiveX ;
- fuites et épuisement de ressources apparaissant uniquement après une longue exécution ;
- enquêtes rendues difficiles par l’absence de tests des cas d’erreur ou de journaux exploitables.
Situations dans lesquelles ce service est utile
- on ignore encore si la cause se trouve dans l’application ou dans la communication ;
- la reproduction demande plusieurs heures, jours ou semaines ;
- des journaux existent, mais ne permettent pas d’établir le lien de causalité ;
- avant toute modification, il faut déterminer ce qui doit être observé.
Une aide qui va jusqu’à la prévention
Une analyse ne doit pas seulement trouver la cause : elle doit aussi permettre de retrouver beaucoup plus vite le prochain problème.
Selon les besoins, nous pouvons donc également revoir :
- le contenu des journaux ;
- le rattachement des événements à une session ou une opération ;
- l’infrastructure de tests des cas d’erreur ;
- la gestion du cycle de vie des ressources.