Yksikkö 7 / 12

Lokianalyysi ja havaittavuus

Voitot:

  • Kyky tehdä yhteenveto suurista kaatopaikoista peittämällä ja suodattamalla ne tekoälyyn ja luoda aikajana
  • Kyky arvioida tekoälyn luomia aikasuhteita hypoteeseina, ei kausaaleina
  • Kyky vahvistaa perussyyhypoteesi mittareilla ja koodilla ja valmistella kuolemanjälkeinen luonnos

Kun ohjelmisto on käynnissä tuotannossa (live-ympäristö), vain jäljet, mittarit ja lokit (sovelluksen ajon aikana tuottamat aikaleimatut lokirivit) kertovat, mitä se tekee. Merkittävän signaalin vetäminen tuhansista, joskus miljoonista lokilinjoista katkon aikana on jännittävin ja aikakriittisin hetki tapahtumareaktiossa. Täällä tekoäly voi olla apulainen, joka tekee yhteenvedon massiivisesta tekstistä, poimii kuvioita ja luo hypoteeseja – kunhan kunnioitat yksityisyyttä ja vahvistusrajoituksia.

Tässä osiossa opimme käyttämään tekoälyä havainnoitavuuden kontekstissa – kykyä ymmärtää järjestelmän sisäistä tilaa tarkastelemalla sen ulkoisia lähtöjä: poimimalla merkityksen lokikohinasta, määrittämällä vian aikajanan, etsimällä toistuvia kuvioita ja laatimalla post mortem. Kriittinen varoitus etukäteen: raakatuotannon lokit sisältävät usein henkilötietoja ja salaisuuksia; Niiden satunnainen kiinnittäminen tekoälytyökaluun on vakava rikkomus.

Miksi lokit ovat vaikeita, miksi tekoäly on hyödyllinen?

Lokit ovat vaikeita kolmesta syystä: äänenvoimakkuus (niitä on liikaa), melu (monet rivit ovat merkityksettömiä) ja sotku (tapahtuma on hajallaan eri palvelujen lokeissa). Ihmissilmä väsyy tähän pinoon ja jättää tärkeän linjan ohi.

Tekoäly on hyvä tiivistämään suuria tekstilohkoja, laskemaan toistuvia kuvioita ja kysymään "mikä muuttui juuri ennen tuota virhepursketta?" Se on voimakas aikasuhteiden luomisessa, kuten On kuitenkin olemassa kaksi rajaa. Ensimmäinen on kontekstiikkuna: malliin mahtuvien lokien määrä on rajoitettu, joten sinun on ensin suodatettava ja näytettävä. Toiseksi validointi: tekoäly sanoo "tässä on perimmäinen syy" on hypoteesi; Älä tee päätöstä vahvistamatta sitä mittareilla ja koodilla.

Varoitus: Raakatuotantolokit voivat sisältää IP-osoitteen, sähköpostiosoitteen, tunnuksen, istuntotunnuksen ja joskus avoimen salaisuuden. Peitä ne ennen kuin syötät ne tekoälyyn tai käytä vain yrityksen hyväksymiä, tietoturvallisia työkaluja. Syvennämme tätä aihetta osiossa 10.

Askel askeleelta: lokista syyyn

  1. Kavenna aikaikkunaa. Määritä minuutit, jolloin tapahtuma alkoi; Tutki sitä ikkunaa, älä koko päivää.
  2. Suodata melu. Karsi pois tunnetut toistuvat, vaarattomat juovat; Keskity virheeseen (ERROR), varoitukseen (WARN) ja ensimmäiseen poikkeamahetkeen.
  3. Peitä arkaluontoiset tiedot. Puhdista henkilökohtaiset tiedot ja salaisuudet ennen kuin annat ne tekoälylle.
  4. Luo yhteenveto ja aikajana. Pyydä tekoälyä tekemään yhteenveto tapahtumasta kronologiassa ("ensin tämä, sitten tuo").
  5. Vahvista hypoteesi mittareilla ja koodilla. AI:n mainitsema syy; Vahvista kojelaudalla, asiaankuuluvalla koodilla ja käyttöönoton aikajanalla, jos mahdollista.
  6. Kirjoita opittu kirjallisesti. Tee post mortem luonnos ja luettele ennaltaehkäisevät toimet.

Kolme minikoteloa

Tapaus 1 – 40 000 riviä yhteenvetona 5 minuutissa. Maksupalvelu ilmoitti ajoittaisesta virheestä 12 minuutin ajan. Tiimi syötti tekoälylle asiaankuuluvan 20 minuutin ikkunan peitettyjä lokeja (noin 40 000 riviä, näytteitä) ja loi aikajanan. Malli osoitti, että virhepurske osui hetkeen, jolloin riippuvuuspalvelun vasteaika nousi 200 ms:sta 8 sekuntiin. Tiimi vahvisti tämän kojelautaan ja rajasi syyn 10 minuutissa.

Tapaus 2 – Harhaanjohtava korrelaatio. Toisessa tapauksessa tekoäly syytti sitä sanomalla, että virheet tapahtuivat "samaan aikaan" cron-ajon (aikataulutetun tehtävän) kanssa. Kun tiimi tarkisti mittarit, he huomasivat, että cron oli itse asiassa lopettanut ennen tapahtumaa; Korrelaatio oli sattumaa. Todellinen syy oli muistivuoto. Oppitunti: AI:n määrittämä aikakorrelaatio on vihje, ei todiste.

Tapaus 3 – Postmortem nopeutettu. Katkosten jälkeen tiimi syötti (naamioituneen) viestin transkription ja aikajanan tapahtumakanavalta tekoälylle ja antoi sen tuottaa postmortem-luonnoksen: yhteenveto, vaikutus, aikajana, perussyy, toimet. Ihmistoimittaja korjasi tosiasiat ja nimitti toiminnan omistajat. Dokumentti, joka kestää yleensä 2 tuntia, valmistui noin 40 minuutissa johdonmukaisemmalla rakenteella.

Neljä kopioitavaa mallia

Lokin yhteenveto ja aikajana (naamioitu loki):

Alla on maskatun tuotantolokin tapahtumaikkuna.1) Kaada tapahtuma kronologiselle aikajanalle (merkitkää ensimmäisen poikkeaman hetki).2) Laske ja ryhmittele useimmin toistuvat virhe-/varoitustyypit.3) "Mikä muuttui juuri ennen?" Listaa kysymyksen ehdokastapahtumat. Nämä ovat hypoteeseja; Merkitse se "on tarkistettava". {{lokit}}

Virhekuvion purkaminen:

Etsi toistuvia virhekuvioita näiltä lokiriveiltä. Jokaiselle kuviolle: näyteviiva (naamioitu), arvioitu lähde ja mahdollinen merkitys. Kerää harvinaiset mutta kriittiset yksittäiset virheet erilliseen huomioluetteloon.{{logs}}

Strukturoidun kyselyn/suodattimen luominen:

Kirjoita {{lokityökalulle: grep/jq/Kibana KQL/CloudWatch Insights}} kysely, joka täyttää seuraavan ehdon: {{esim. 5xx virheitä viimeisen 15 minuutin aikana, pois lukien käyttäjä X}}. Selitä kysely; Varmista, ettet ole keksinyt verkkotunnuksia, kysy, jos et ole varma.

Post mortem luonnos:

Kirjoita kuolemanjälkeinen luonnos seuraavalta (naamioituneelta) tapahtuman aikajanalta: Yhteenveto / Vaikutus (kesto, vaikuttaa käyttäjään) / Aikajana / Perimmäinen syy / Mikä meni hyvin / Toimenpiteet (jätä jokaisen omistajan kenttä tyhjäksi). ÄLÄ käytä syyttävää kieltä; Ole asiallinen ja ennakoiva.{{aikajana}}

Heikko kehote / Vahva kehote

Heikko: "Katsokaa näitä lokeja, mikä on vialla?" (Koko päivän raakaloki henkilötiedoilla, kohdistamaton.)
Vahva: "Alla on peitetty tuotantoloki kello 14:02–14:20 (suodatettu 5xxs). Etsi tästä ikkunasta virhepurskeen alkamishetki, laske yleisin virhetyyppi ja luettele poikkeamat, jotka ilmenivät 60 sekunnin aikana juuri ennen räjähdystä; merkitse ne kaikki 'varmennettavaksi hypoteesiksi'."

Tehokas versio; Se kaventaa aikaikkunaa, suodattaa ja peittää lokin, esittää selkeän kysymyksen ja vahvistaa alusta alkaen, että tulos on hypoteesi.

Quest

AI on vahva

Rajoitus / vahvistus

Iso lokin yhteenveto

Kyllä, nopeasti

Näytteenotto saattaa hävitä

Aikasuhteen luominen

tuottaa vihjeitä

Korrelaatio ≠ syy-yhteys

Kyselyn/suodattimen luominen

hyvä luonnos

Ovatko verkkotunnukset todellisia?

Post mortem luonnos

Rakenne ja kieli

Tapaukset ovat ihmisten vahvistamia

Korrelaatio ei ole syy-yhteyttä

Yleisin lokianalyysin sudenkuoppa on "se tapahtui samaan aikaan, joten siksi" -virhe. Tekoäly putoaa tähän ansaan yhtä helposti, ellei helpommin kuin ihmiset; koska se pitää tekstin samanaikaisuutta vahvana signaalina. Pystyä sanomaan, että yksi tapahtuma todella johtaa toiseen; vaaditaan ajoitus, mekanismi ja, jos mahdollista, toistettavuus. Jokaisen tekoälyn vahvistaman syy-seurausväittämän osalta kysymme "mikä muut todisteet vahvistavat tämän?" Testaa sitä kysymyksellä.

Vinkki: Kun kirjaudut tekoälyyn, tulosta tekstivedoksen sijaan, jos mahdollista, ensin kysely/suodatin ja suorita se ajoneuvossasi; Näin vähennät arkaluonteisia tietoja ja erotat mallin kontekstiikkunan todella tärkeiksi riveiksi.

Yleisiä virheitä

  • Liitä raaka, peittämätön loki. Henkilötietojen ja salaisuuksien paljastaminen; vakavasta yksityisyyden loukkauksesta.
  • Antaa koko päivän kerralla. Se ylittää kontekstiikkunan, signaali hukkuu kohinaan.
  • Virheellinen korrelaatio syy-yhteydelle. Tekoälyn luoma aikasuhde on vihje, ei todiste.
  • Luotetaan kyselyyn, jossa on keksitty verkkotunnus. Malli saattaa ehdottaa lokikentän nimeä, jota ei ole olemassa; tarkista kaaviosta.
  • Postmortem julkaiseminen vahvistamatta sitä. Faktat ja vaikutusluvut on vahvistettava ihmisten kautta.

Yhteenvetona

Tekoäly on tehokas työkalu äänenvoimakkuuden ja melun päihittämiseen lokianalyysissä: suurten transkriptien yhteenveto, aikajanan määrittäminen, kuvioiden poimiminen ja kuolemanjälkeisten luonnosten valmistelu. Muista kuitenkin kolme rajoitusta: älä vie arkaluontoisia tietoja peittämättä niitä, suodata ja ota niistä näyte sopimaan kontekstiikkunaan ja tarkista jokainen syy-yhteysvaatimus mittareilla ja koodilla. Korrelaatio ei ole syy-yhteyttä; Tekoäly antaa vihjeitä, teet päätöksen todisteiden avulla.

Sovellustehtävä

Valitse 15–20 minuutin ikkuna tapahtuma- tai testiympäristölokistasi. Ensin peitä henkilötiedot ja salaisuudet (tai tee synteettinen loki). Poimi sitten tekoälystä kronologia ja yleisimmät virhetyypit "lokin yhteenveto ja aikajana" -mallin avulla. Yritä vahvistaa tekoälyn esittämä perimmäinen syyhypoteesi käyttämälläsi metriikkaa tai koodinpalaa: pitikö hypoteesi paikkansa vai oliko se harhaanjohtava korrelaatio? Kirjoita havaintosi yhdellä lauseella.

tarkistuslista

  • [ ] Peilin henkilökohtaiset tiedot ja salaisuudet ennen kuin luovutan lokin tekoälylle.
  • [ ] Suodatan analyysin kapeaan aikaikkunaan ja suodatan.
  • [ ] Näen tekoälyn luomat aikasuhteet hypoteeseina, en kausaalisina.
  • [ ] Vahvistan perussyyvaatimuksen mittareilla ja koodilla.
  • [ ] Vahvistan, että luomieni kyselyjen/suodattimien verkkotunnukset ovat todellisia.
  • [ ] Vahvistan inhimillisesti postmortem-luonnoksen tosiasiat ja luvut.