Gains :
- Possibilité de résumer les vidages de journaux volumineux en les masquant et en les filtrant pour l'IA et de créer une chronologie
- Être capable d'évaluer les relations temporelles établies par l'IA comme des hypothèses et non comme des causalités
- Capacité à valider l'hypothèse de la cause profonde avec des métriques et du code et à préparer une esquisse post-mortem
Lorsqu'un logiciel s'exécute en production (environnement réel), seuls les traces, les métriques et les journaux (lignes de journaux horodatées produites par l'application pendant son exécution) vous indiquent ce qu'il fait. Extraire un signal significatif de milliers, parfois de millions, de lignes de journalisation lors d'une panne est le moment le plus stressant et le plus critique d'une réponse à un incident. Ici, l'IA peut être d'une grande aide, résumant des textes volumineux, extrayant des modèles et générant des hypothèses, à condition que vous respectiez les limites de confidentialité et de vérification.
Dans cette unité, nous apprenons à utiliser l'IA dans le contexte de l'observabilité – la capacité de comprendre l'état interne d'un système en examinant ses sorties externes : extraire une signification du bruit du journal, établir la chronologie d'un bug, trouver des modèles répétitifs et rédiger une autopsie. Avertissement critique dès le départ : les journaux de production bruts contiennent souvent des données personnelles et des secrets ; les coller au hasard dans un outil d’IA est une violation grave.
Pourquoi les journaux sont difficiles, pourquoi l'IA est-elle utile ?
Les journaux sont difficiles pour trois raisons : le volume (il y en a trop), le bruit (de nombreuses lignes ne sont pas pertinentes) et l'encombrement (un événement est dispersé dans les journaux de différents services). L’œil humain se fatigue dans cette pile et rate la ligne importante.
L’IA est efficace pour résumer de gros blocs de texte, compter les modèles répétitifs et se demander « qu’est-ce qui a changé juste avant cette explosion d’erreurs ? » Il est puissant pour établir des relations temporelles telles que celles-ci. Cependant, il y a deux limites. La première est la fenêtre contextuelle : la quantité de journaux que vous pouvez intégrer dans un modèle est limitée, vous devez donc d'abord filtrer et échantillonner. Deuxièmement, la validation : l’IA disant « voici la cause profonde » est une hypothèse ; Ne prenez pas de décision sans la confirmer avec des métriques et du code.
Attention : les journaux de production bruts peuvent contenir une adresse IP, un e-mail, un jeton, un ID de session et parfois un secret ouvert. Masquez-les avant de les transmettre à l’IA ou utilisez uniquement des outils sécurisés et approuvés par l’entreprise. Nous approfondissons ce sujet dans l'unité 10.
Étape par étape : du journal à la cause première
- Réduisez la fenêtre de temps. Déterminer les minutes auxquelles l'événement a commencé ; Examinez cette fenêtre, pas toute la journée.
- Filtrez le bruit. Éliminez les lignes répétitives et inoffensives connues ; Concentrez-vous sur l'erreur (ERROR), l'avertissement (WARN) et le premier moment de déviation.
- Masquez les données sensibles. Nettoyez les données personnelles et les secrets avant de les transmettre à l'IA.
- Créez un résumé et une chronologie. Demandez à l’IA de résumer l’événement dans une chronologie (« d’abord ceci, puis cela »).
- Validez l’hypothèse avec des métriques et du code. La raison évoquée par AI ; Confirmez avec le tableau de bord, le code pertinent et le calendrier de déploiement, le cas échéant.
- Mettez par écrit ce que vous avez appris. Faites un croquis post-mortem et énumérez les actions préventives.
Trois mini-étuis
Cas 1 : 40 000 lignes résumées en 5 minutes. Un service de paiement a signalé une erreur intermittente pendant 12 minutes. L'équipe a transmis à l'IA la fenêtre pertinente de 20 minutes de journaux masqués (environ 40 000 lignes, échantillonnées) et a généré une chronologie. Le modèle a montré que la salve d'erreurs coïncidait avec le moment où le temps de réponse d'un service de dépendance passait de 200 ms à 8 secondes. L'équipe l'a confirmé sur le tableau de bord et a identifié la cause en 10 minutes.
Cas 2 — Corrélation trompeuse. Dans un autre incident, l'IA l'a blâmé en disant que les erreurs se produisaient "en même temps" qu'une exécution cron (tâche planifiée). Lorsque l'équipe a vérifié les métriques, elle a constaté que cron s'était effectivement terminé avant l'événement ; La corrélation était une coïncidence. La véritable cause était une fuite de mémoire. Leçon : La corrélation temporelle établie par l’IA est un indice, pas une preuve.
Cas 3 — Post-mortem accéléré. Après une panne, l'équipe a transmis la transcription (masquée) du message et la chronologie du canal d'événement à l'IA et lui a fait produire une esquisse post-mortem : résumé, impact, chronologie, cause première, actions. L'éditeur humain a corrigé les faits et nommé les propriétaires des actions. Le document, qui prend habituellement 2 heures, a été réalisé en 40 minutes environ avec une structure plus cohérente.
Quatre modèles copiables
Résumé du journal et chronologie (avec journal masqué) :
Vous trouverez ci-dessous une fenêtre d'événement du journal de production masqué.1) Insérez l'événement dans une chronologie (marquez le moment du premier écart).2) Comptez et regroupez les types d'erreurs/avertissements les plus fréquemment récurrents.3) « Qu'est-ce qui a changé juste avant ? » Répertoriez les événements candidats pour la question. Ce sont des hypothèses ; Marquez-le comme "doit être vérifié". {{journaux}}
Extraction des modèles d'erreur :
Recherchez des modèles d’erreurs récurrentes dans ces lignes de journal. Pour chaque motif : ligne d'échantillon (masquée), source estimée et signification possible. Collectez les erreurs uniques rares mais critiques dans une liste « attention » distincte.{{logs}}
Génération de requêtes/filtres structurés :
Pour {{log tool : grep/jq/Kibana KQL/CloudWatch Insights}}, écrivez une requête qui répond à la condition suivante : {{e.g. Erreurs 5xx au cours des 15 dernières minutes, à l'exclusion de l'utilisateur X}}. Expliquez la requête ; Assurez-vous de ne pas inventer les noms de domaine, demandez si vous n'êtes pas sûr.
Croquis post-mortem :
Rédigez une esquisse post-mortem à partir de la chronologie de l'événement (masquée) suivante : Résumé / Impact (durée, utilisateur affecté) / Chronologie / Cause première / Ce qui s'est bien passé / Actions (laissez le champ du propriétaire vide pour chacune). NE PAS utiliser de langage accusateur ; Soyez factuel et proactif.{{timeline}}
Invite faible/Invite forte
Faible : « Regardez ces journaux, qu'est-ce qui ne va pas ? (Journal brut de la journée entière, avec données personnelles, non ciblé.)
Strong : « Vous trouverez ci-dessous le journal de production masqué de 14 h 02 à 14 h 20 (filtré à 5xxs). Dans cette fenêtre, recherchez le moment où la salve d'erreurs a commencé, comptez le type d'erreur le plus fréquent et répertoriez les écarts apparus dans les 60 secondes immédiatement avant l'explosion ; marquez-les tous comme « hypothèse à vérifier ».
Version puissante ; Il réduit la fenêtre temporelle, filtre et masque le journal, pose une question claire et établit dès le départ que le résultat est une hypothèse.
Quête
L'IA est forte
Limite / vérification
Gros résumé du journal
Oui, vite
Il peut y avoir une perte d'échantillonnage
Établir une relation temporelle
génère des indices
Corrélation ≠ causalité
Génération de requêtes/filtres
bon brouillon
Les noms de domaine sont-ils réels ?
Croquis post-mortem
Structure et langage
Les cas sont confirmés chez l'homme
La corrélation n'est pas une causalité
L’écueil le plus courant dans l’analyse des logs est l’erreur « cela s’est produit en même temps, c’est pourquoi ». L’IA tombe dans ce piège aussi facilement, sinon plus facilement, que les humains ; car il pense que la simultanéité dans le texte est un signal fort. Pouvoir dire qu’un événement en entraîne réellement un autre ; le timing, le mécanisme et, si possible, la répétabilité sont requis. Pour chaque affirmation de causalité établie par l’IA, nous nous demandons « quelles autres preuves confirment cela ? Testez-le avec la question.
Astuce : lors de la connexion à l'IA, au lieu d'un vidage de texte, si possible, imprimez d'abord une requête/un filtre et exécutez-le dans votre véhicule ; De cette façon, vous réduisez à la fois les données sensibles et séparez la fenêtre contextuelle du modèle en lignes vraiment importantes.
Erreurs courantes
- Coller un journal brut et non masqué. Divulgation de données personnelles et de secrets ; une grave atteinte à la vie privée.
- Donner toute la journée d’un coup. On dépasse la fenêtre contextuelle, le signal est noyé dans le bruit.
- Confondre corrélation et causalité. La relation temporelle établie par l’IA est un indice et non une preuve.
- S'appuyer sur une requête avec un nom de domaine inventé. Le modèle peut suggérer un nom de champ de journal qui n'existe pas ; vérifier avec le schéma.
- Publier le post-mortem sans le vérifier. Les faits et les chiffres d’impact doivent être confirmés par des humains.
En résumé
L'IA est un outil puissant pour lutter contre le volume et le bruit dans l'analyse des journaux : résumer des transcriptions volumineuses, établir des chronologies, extraire des modèles et préparer des croquis post-mortem. Mais rappelez-vous trois limites : n'exportez pas de données sensibles sans les masquer, filtrez-les et échantillonnez-les pour les adapter à la fenêtre contextuelle, et vérifiez chaque affirmation de causalité avec des métriques et du code. La corrélation n’est pas la causalité ; L’IA donne des indices, vous prenez la décision sur la base de preuves.
Tâche de candidature
Sélectionnez une fenêtre de 15 à 20 minutes dans un journal d'événement ou d'environnement de test dont vous disposez. Masquez d’abord les données personnelles et les secrets (ou produisez un journal synthétique). Extrayez ensuite une chronologie et les types d’erreurs les plus fréquents de l’IA avec le modèle « résumé du journal et chronologie ». Essayez de vérifier l’hypothèse de cause profonde avancée par l’IA avec une métrique ou un morceau de code dont vous disposez : l’hypothèse est-elle valable ou s’agit-il d’une corrélation trompeuse ? Écrivez votre découverte en une phrase.
liste de contrôle
- [ ] Je masque les données personnelles et les secrets avant de donner le journal à l'IA.
- [ ] Je réduis l'analyse à une fenêtre temporelle étroite et je filtre.
- [ ] Je considère les relations temporelles établies par l'IA comme des hypothèses et non comme une causalité.
- [ ] Je vérifie la cause première avec des métriques et du code.
- [ ] Je confirme que les noms de domaine des requêtes/filtres que je génère sont réels.
- [ ] Je certifie humainement les faits et les chiffres du croquis post-mortem.