LLM-applikationer behåller vanliga feltyper i programvara och lägger till probabilistiska svar, modell- och promptdrift, verktygsbeteende, hämtningskvalitet och användningsberoende kostnad. Vissa fel ger stackspårningar; andra syns först i utvärderade svar, användarrapporter eller förändrade fördelningar.
Traditionell observerbarhet (Datadog, New Relic, Sentry) berättar att API-anropet lyckades på 8,4 sekunder och använde 12 847 indatatoken. Den berättar inte om svaret var bra, om modellen hallucinerade, om fel verktyg anropades eller om kvaliteten har försämrats sedan förra veckan.
LLM-system i produktion behöver ytterligare semantiska data ovanpå vanliga spår, mätetal och loggar. Börja med OpenTelemetry-konventionerna för generativ AI och utöka endast där produkten behöver mer detalj. Artikeln definierar en illustrativ händelseform; AIExpert har inte publicerat ett produktionsspår eller en dashboard som bevisar varje fält nedan.
Vad som skiljer LLM-observerbarhet
Några utmärkande egenskaper hos LLM-system som traditionell observerbarhet inte hanterar:
Icke-determinism på enhetsnivå. Samma indata ger olika utdata mellan anrop. Frågan ”Fungerade detta korrekt?” kan inte besvaras genom att kontrollera statuskoder.
Kvalitet som primärt mätetal. Latens och kostnad är viktiga, men kvaliteten är viktigast – och svårast att mäta.
Flerstegsspår. En användarfråga kan utlösa flera modell-, hämtnings- och verktygsanrop. Varje operation tillhör ett större spår.
Användningsberoende kostnad. Kostnaden varierar med modell, tokenantal, cache, verktyg och leverantörsspecifika avgifter. Fördela den faktiska fakturerade användningen på anrops- eller batchnivå i stället för att anta ett universellt intervall per anrop.
Drift över tid. Modeller uppdateras. Prompter utvecklas. Indatafördelningar förändras. Kvaliteten rör sig och du måste kunna se rörelsen.
Känsliga nyttolaster. Indata och utdata är ofta de mest värdefulla diagnostiska uppgifterna, men också de känsligaste. Loggningsdisciplin är viktig.
Långa asynkrona flöden. Agentkörningar som tar flera minuter. Bakgrundskörningar i batch. Strömmade svar. Traditionell observerbarhet för begäran och svar passar inte.
Det här är feltyper som instrumenteringen bör vara utformad för att avslöja. Vilka som dominerar måste fastställas utifrån din egen trafik.
Observerbarhetsstacken
En praktisk design för LLM-observerbarhet kan innehålla följande lager, valda efter arbetsbelastning och risk:
1. Instrumentering på anropsnivå. Varje LLM-anrop avger godkänd operativ metadata, exempelvis latens, fakturerad användning, modell eller revision och status. Rå indata eller utdata samlas endast in när det finns ett separat motiverat och kontrollerat behov.
2. Instrumentering på spårnivå. Arbetsflöden med flera anrop fogas samman till spår. Du kan se hela anropskedjan för en användarbegäran.
3. Mätetal på applikationsnivå. Aggregeringar per funktion, användare och kundorganisation.
4. Kvalitetsövervakning. Automatiserad kvalitetsbedömning av ett urval eller av samtliga anrop.
5. Insamling av användaråterkoppling. Uttryckliga signaler (tummen upp/ned) och underförstådda signaler (generera om, avbryt).
6. Aviseringar. Aviseringar i realtid om kostnadstoppar, försämrad latens, kvalitetssänkningar och ökade felfrekvenser.
7. Felsökningsverktyg. När något går sönder kan behöriga incidentansvariga inspektera minsta godkända belägg som behövs för att förstå det. Rå indata och utdata är inte garanterade eller allmänt tillgängliga.
Vi går igenom varje lager.
Instrumentering på anropsnivå
Varje LLM-anrop bör skapa en godkänd metadatapost. De kommenterade fälten för nyttolast och identitet nedan är valfria känsliga fält, inte standard:
{
"call_id": "uuid",
"timestamp": "2026-08-04T14:23:45Z",
"trace_id": "uuid", // för gruppering i spår
"span_id": "uuid", // för relationer mellan överordnade och underordnade spann
"feature": "summarize_document",
"prompt_version": "v3.2",
"model": "provider-model-revision",
"provider": "anthropic",
"input_messages": null, // valfritt, endast godkänd samplad/maskerad nyttolast
"output_message": null, // valfritt, endast godkänd samplad/maskerad nyttolast
"input_tokens": 1842,
"output_tokens": 384,
"total_tokens": 2226,
"cost_usd": 0.0084,
"latency_ms": 2340,
"first_token_ms": 1240, // strömning
"status": "success",
"error": null,
"subject_ref": "pseudonymous_ref", // valfritt, ändamålsspecifik uppslagning
"tenant_ref": "tenant_scoped_ref",
"metadata": {
"session_id": "...",
"experiment_arm": "v3_test"
}
}
Detta är en illustrativ applikationshändelse, inte ett obligatoriskt schema. Samla in det minsta som behövs för ett definierat operativt syfte. Råa prompter och svar är valfria känsliga nyttolaster, inte standardtelemetri.
Viktiga implementeringsval:
Var du loggar. Alternativ:
- Ett särskilt observerbarhetsverktyg (Helicone, LangSmith, Phoenix, Braintrust, Arize).
- En generell observerbarhetsplattform med LLM-tillägg (Datadog LLM Observability, Sentry).
- Egna loggar eller en egen databas.
Välj utifrån kraven: OpenTelemetry-export, visualisering av spår och verktygsanrop, dataplats, egen drift, maskering, åtkomstkontroll, API:er för lagringstid och radering, underhåll av modellpriser, stöd för utvärdering och total kostnad. Ett särskilt verktyg, en befintlig APM eller en liten egen implementation kan alla vara rätt. Testa export och radering innan du bestämmer dig.
Hur du instrumenterar. Alternativ:
- En proxy mellan appen och LLM-leverantören (Helicones modell).
- Ett inkapslande SDK i applikationskoden.
- En inkapslingsklass som du anropar manuellt för varje LLM-anrop.
Proxyer centraliserar instrumenteringen men lägger till ett nätverkshopp och en feldomän. SDK-inkapsling håller instrumenteringen i processen men kopplar koden till integrationen. Manuella inkapslingar kan vara precisa men kräver täckningstester. Mät omkostnad och felbeteende för den valda metoden.
Ett pragmatiskt tillvägagångssätt: SDK-inkapsling vid gränsen där appen anropar LLM:en. Ett enda ställe att instrumentera; allt annat går genom det.
Vad du loggar. Tillämpa dataklassificering och lagringstid innan du aktiverar insamling av nyttolaster. Enligt GDPR gäller fortfarande principerna i artikel 5 om dataminimering och lagringsbegränsning för observerbarhetsdata.
- Föredra promptversion, hashar, tokenantal, policybeslut och härledda mätetal framför rått innehåll.
- Om insamling av nyttolasten är motiverad ska den samplas, maskeras före export, krypteras, åtkomstbegränsas och ges kort lagringstid.
- Behåll inte automatiskt ett rått original som går att hämta bara för att en maskerad kopia loggades. Det återskapar ett känsligt datalager och behöver ett eget lagligt syfte och egna kontroller.
- Logga inte autentiseringsuppgifter, inte ens i felvägar.
- För strömning loggar du både latens till första token och total latens.
Instrumentering på spårnivå
En enda användaråtgärd innefattar ofta många LLM-anrop. Utan instrumentering på spårnivå har du tusen anropsloggar utan möjlighet att se vilka anrop som hörde till vilken användaråtgärd.
Implementering:
Generering av spår-ID. Skapa ett unikt spår-ID i början av en användarbegäran. Skicka det genom alla efterföljande anrop.
Överordnade och underordnade span. Inom ett spår har varje anrop ett span-ID och (valfritt) ett överordnat span-ID. Det skapar ett träd som visar anropshierarkin.
Namn på operationer. Varje spann namnges (”summarize_document”, ”extract_entities”, ”tool_call:search”). Spåret visar hela operationskedjan.
En spårvy i gränssnittet:
Trace abc-123 (12.3s total)
├─ classify_intent (450ms) [small-model-revision]
├─ retrieve_documents (1.2s) [embedding + search]
├─ generate_response (8.5s) [generation-model-revision]
│ ├─ tool_call: search_internal (320ms)
│ ├─ tool_call: lookup_customer (180ms)
│ └─ generate_final_text (7.5s)
└─ judge_response_quality (2.1s) [claude-haiku-4-5]
Nu kan du se vad systemet faktiskt gjorde för den här användarbegäran. Du kan hitta långsamma, dyra och misslyckade anrop – i sitt sammanhang.
Möjliga implementationer omfattar särskilda LLM-observerbarhetsprodukter och generella APM-system med OpenTelemetry. Verifiera spårpropagering, representation av verktygsanrop, export, maskering, radering, åtkomstkontroll och felbeteende i ett representativt test i stället för att förlita dig på en produktlista.
Mätetal på applikationsnivå
Aggregera mätetal utöver enskilda anrop:
Per funktion.
- Anropsvolym.
- Genomsnittlig latens.
- p50-, p95- och p99-latens.
- Genomsnittlig kostnad per begäran.
- Felfrekvens.
- Kvalitetspoäng (om den mäts).
Per användare/kundorganisation.
- Anrop per användare och dag.
- Kostnad per användare.
- Tunga användare och missbruksmönster.
Per modell.
- Volym per modell.
- Kostnadsandel per modell.
- Felfrekvens per modell.
- Kvalitet per modell (där den mäts).
Per funktion × per modell.
- Vilka funktioner använder vilka modeller?
- Var kan vi dirigera till billigare modeller?
Dessa instrumentpaneler driver operativa beslut: vilka funktioner är dyra, vilka är långsamma och vilka behöver optimeras?
Kvalitetsövervakning
Det svåraste lagret: automatiserad kvalitetsbedömning.
För utvärderingar kör du mot ett definierat dataset. Vid kvalitetsövervakning online bedömer du produktionstrafik.
Metoder:
En LLM som bedömare för ett urval. Definiera urvalet utifrån trafikvolym, riskdelmängder, integritetsbegränsningar, detektionsmål och budget. Kör en kalibrerad bedömare på behöriga exempel, behåll mänsklig prövning för tvistiga eller betydelsefulla fall och följ resultatet per prompt- och modellversion. Bedömningsmodeller har systematiska snedvridningar kopplade till position, utförlighet och egna preferenser. De är mätningar som ska valideras, inte facit.
Underförstådda signaler. Följ omgenereringar, avbrutna flöden, felfrekvenser, tid till slutförande och frekvensen av följdmeddelanden. Det är svaga signaler, men de är billiga. Använd dem som tidiga indikatorer.
Uttrycklig användaråterkoppling. Tummen upp/ned, knappar med ”var det här till hjälp?” och uttryckliga rapporter. Starkast signal men lägst volym.
Mönsterdetektering. Specifika dåliga mönster (”Jag kan inte hjälpa till med det”, ”Jag är bara en AI”, upprepade avslag) flaggas automatiskt. Det upptäcker vissa regressioner omedelbart.
Dokumentationen för implementationen bör ange urvalsregel, uteslutna data, bedömningsmatris, bedömarversion, mänsklig kalibreringsmängd, osäkerhet, aggregeringsfönster, aviseringströskel och kostnadstak. Härled trösklar för förändring från upprepade baslinjekörningar och allvaret i missade regressioner. En kopierad procentsats saknar statistisk och affärsmässig betydelse för en annan arbetsbelastning.
Observerbarhet för kostnader
Omförsök, loopar, oväntat långa indata eller utdata, ändrad dirigering och leverantörernas prisändringar kan snabbt höja kostnaden. Detektera varje mekanism direkt i stället för att anta en multiplikator.
Lager för kostnadsobserverbarhet:
Kostnad per anrop. Kostnaden för varje anrop beräknas när det loggas. Aggregeringar är omedelbart tillgängliga.
Budgetaviseringar. Dagliga, veckovisa eller månatliga budgetar per funktion och kundorganisation, med varnings- och verkställighetströsklar valda utifrån prognosvariation och affärskritikalitet.
Avvikelsedetektering. Jämför kostnad och användning med rätt baslinje för trafikmixen, och sätt separata tak för patologiska loopar, tokenförbrukning, verktygsanrop, omförsök, varaktighet och kostnad per körning.
Kostnadsfördelning. Kostnader per funktion, kundorganisation och användare. Hitta storförbrukarna.
Prognos. Vad blir fakturan vid månadens slut utifrån den nuvarande utvecklingen?
En användbar instrumentpanel: en enda panel som visar dagens kostnad jämfört med resten av veckan och förra veckan, uppdelad efter funktion.
Sätt budgetgränser från uppmätt trafik och affärskritikalitet. Föredra stegvisa kontroller: avisera, stryp, nedgradera en icke-kritisk väg och bryt därefter kretsen. En universell regel om att stänga av vid 10 gånger normal kostnad kan reagera alldeles för sent eller slå ut ett viktigt arbetsflöde.
Observerbarhet för latens
LLM-latens är mer nyanserad än för vanliga API:er:
Total latens. Från begäran till slutgiltigt svar.
Tid till första token (TTFT). Vid strömning: när ser användaren det första tecknet? Det här dominerar den upplevda latensen i chattgränssnitt.
Tid till sista token (TTLT). Hur lång tid tar det innan svaret är färdigt?
Token per sekund. Utdatatakt. Vissa modeller strömmar långsammare än andra.
Latens för verktygsanrop. För agentflöden: tid i verktygsanrop jämfört med LLM-anrop.
Följ samtliga. Olika optimeringsstrategier riktar sig mot olika mätetal.
För användarinriktad chatt är TTFT ett viktigt interaktionsmått. Total slutförandetid, utdatatakt, avbrott, uppgiftsframgång och tillgänglighet spelar också roll. Sätt mål från observerat användarbeteende i stället för att anta att ett latensmått dominerar varje gränssnitt.
För batchjobb är total latens viktig, men genomströmning är ännu viktigare.
För agenter dominerar ofta verktygsanropens latens; det hjälper inte att optimera LLM:en om verktygen är långsamma.
Observerbarhet för fel
LLM-specifika fel:
API-fel. Hastighetsbegränsningar, autentiseringsfel och serverfel. Samma som för alla API:er.
Valideringsfel. Strukturerade utdata följde inte schemat. Följ frekvensen per funktion.
Innehållsfilterfel. Leverantören blockerade begäran. Följ detta för att upptäcka promptproblem.
Verktygsfel. Specifika verktyg fallerar. Följ per verktyg.
Kvalitetsfel. En bedömnings-LLM gav dåliga poäng. Följ över tid.
Hallucinationssignaler. Upptäckt av sannolika hallucinationer (modellen påstod något som inte fanns i källan). Svårt att upptäcka automatiskt, men kan approximeras.
Kostnadsfel. Anrop som kostar mycket mer än väntat. De tyder ofta på ett programfel.
Varje kategori får en egen instrumentpanel. Var och en kan utlösa aviseringar.
Felsökningsverktyg
När något går sönder måste du kunna hitta och förstå det. Felsökningsytan omfattar:
Spårsökning. Hitta en händelse efter spår-ID, godkänd pseudonymiserad referens till personen eller tidsstämpel utan att exponera bredare data från kundorganisationen.
Anropsinspektör. Visa metadata som standard. Visa bara godkända, minimerade fält från begäran och svar under rollkontroll, åtkomstloggning, syftesbegränsning och regler för lagringstid. Många driftsättningar bör aldrig behålla hela nyttolasten.
Spårtidslinje. Se anropskedjan visuellt för komplexa flöden.
Kontrollerad möjlighet till omkörning. Kan godkända, minimerade indata köras om i en isolerad miljö med verktyg avstängda eller i sandlåda? Kör aldrig om produktionsanrop mot aktiva sidoeffekter, och anta inte att sparade nyttolaster är motiverade bara för att återuppspelning är användbar.
Differensvy. Jämför två anrop – olika versioner av samma prompt eller olika modeller – sida vid sida.
Sökning efter godkänt innehåll eller härledda fält. Sök efter definierade mönster utan att göra telemetrisystemet till en obegränsad korpus av kundprompter. Auktorisering, minimering, indexering, lagringstid och åtkomstloggning gäller både sökning och lagring.
Produkterna skiljer sig väsentligt i dessa förmågor. Verifiera dem i ett representativt test och räkna in integration, lagring, integritetsgranskning, migrering och drift i jämförelsen. Listpriset bevisar inte att köp är billigare.
Integritet och personuppgifter
LLM-observerbarhetsloggar är känsliga. Indata kan innehålla personuppgifter och utdata kan citera dem. Insamling av rå nyttolast föreslås ibland för felsökning, men den är inte automatiskt nödvändig eller laglig. Definiera syftet och överväg först syntetisk reproduktion, härledda fält eller kortlivade kontrollerade urval.
Arbetssätt:
Pseudonymisering/tokenisering. Ersätt direkta identifierare med ändamålsspecifika token och skydda uppslaget för återidentifiering separat. Om återidentifiering fortfarande är möjlig är posterna fortfarande personuppgifter, inte anonyma ”icke-personuppgifter”.
Maskering vid loggning. Identifiera och maskera personuppgifter innan de hamnar i observerbarhetslagringen. Specifika mönster (e-postadresser, telefonnummer, personnummer) ersätts med platshållare.
Isolering per kundorganisation. Observerbarhetsdata för flera kunder isoleras per kundorganisation. En kunds data är inte synliga för en annan.
Åtkomstkontroller. Vem får se råa indata och utdata? Det loggas.
Lagringspolicyer. Loggar äldre än X dagar raderas eller flyttas till arkivlagring. Lagring av personuppgifter omfattas av rättsliga tidsgränser i många jurisdiktioner.
Arbetsflöde för radering och begränsning. Gör telemetriposter sökbara med de identifierare som godkänts för syftet och genomför den åtgärd som juridisk granskning anger i primär lagring, index, exporter och säkerhetskopior. Översätt inte det vardagliga uttrycket ”rätten att bli bortglömd” till ett allmänt löfte; GDPR-radering har villkor och undantag.
Systemet behöver kontroller som står i proportion till personuppgifterna och syftet. Den exakta kombinationen varierar, men isolering mellan kundorganisationer, behörig åtkomst, minimering, lagringstid, hantering av radering eller begränsning och revisionsbarhet måste beslutas innan telemetri med nyttolaster aktiveras. Europeiska kommissionen sammanfattar villkor och undantag för begäran om radering.
Aviseringar
Trösklar och signaler som motiverar aviseringar:
Kostnad.
- Kostnad eller prognos överskrider funktionens uppmätta budgetintervall.
- Kostnad per begäran överskrider ett tak som satts för arbetsbelastningen.
- Förändringstakten lämnar baslinjeintervallet för samma trafikmix.
Latens.
- Latensens höga percentiler överskrider produktens uppmätta tjänstemål.
- Tiden till första token eller slutförande överskrider det interaktionsspecifika målet.
- Timeout i verktyg eller kötid lämnar baslinjeintervallet.
Felfrekvens.
- Felfrekvensen bryter arbetsbelastningens felbudget.
- En viss feltyp lämnar sitt baslinjeintervall, inklusive valideringsfel och hastighetsbegränsningar.
Kvalitet.
- Ett kalibrerat mätetal ändras mer än variationen mellan upprepade körningar, eller en säkerhetsdelmängd registrerar ett otillåtet utfall.
- Andelen negativ användaråterkoppling > baslinjen.
- Omgenereringsfrekvens > baslinjen.
Mönster.
- Specifika dåliga fraser förekommer oftare.
- Plötslig förändring av indatafördelningen.
Varje avisering ska ange funktion, tidsfönster, observerat och förväntat värde, berörd delmängd, spårlänkar och åtgärdsrutin. Diagnostisera inte en okontrollerad slinga i aviseringstexten om telemetrin för slingor eller omförsök inte stöder diagnosen.
Överväganden för flera kundorganisationer
För B2B-SaaS-appar:
Mätetal per kundorganisation. Varje kund kan se sin egen användning, sina kostnader och sin kvalitet.
Aviseringar per kundorganisation. Specifika för kundens tröskelvärden.
Felsökning per kundorganisation. Supporten kan se en kunds spår (med lämpliga åtkomstkontroller).
Konfiguration per kundorganisation. Vissa kunder kan ha andra modeller, prompter eller policyer. Observerbarhetslagret återspeglar det.
För system med flera kundorganisationer kan hänföring och isolering per kund vara nödvändiga för support och fakturering, men åtkomst till råa spår är inte automatiskt motiverad. Ge supporten minsta data och förmåga som behövs, logga åtkomst och ha en eskaleringsväg för känsliga nyttolaster.
Verktygsekosystemet (2026)
En översikt över verktyg för LLM-observerbarhet i skrivande stund:
Särskild LLM-observerbarhet:
- Helicone, LangSmith, Phoenix (Arize), Braintrust, PromptLayer och Weights & Biases Weave är kandidater att verifiera mot kraven ovan.
Generell APM med LLM-tillägg:
- Datadog LLM Observability och New Relic AI Monitoring är kandidater när organisationen redan använder dessa plattformar.
- OpenTelemetry + valfri APM. OTel har semantiska GenAI-konventioner; instrumentera en gång och visa i många verktyg.
Bygg själv:
- En liten databas kan räcka för ett avgränsat system när den implementerar nödvändig isolering, åtkomst, lagringstid, radering och indexering.
- Lägg till ett enkelt gränssnitt för sökning och visning.
- Integrera med den befintliga loggningsinfrastrukturen.
Dokumentera valet, avvisade alternativ, granskning av dataflödet, utträdes- och exporttest samt datum för ny bedömning. Ingen standardiserad migreringsväg passar alla team.
En praktisk uppsättning
Ordna arbetet efter beroenden och risk i stället för en generell kalender:
Steg 1: Välj en kandidat utifrån kraven och kör den på syntetiska, icke-känsliga spår. Verifiera export, åtkomst, maskering, lagringstid, radering, fel- och utträdesvägar, inte bara insamling.
Steg 2: Lägg till instrumentpaneler för definierade tjänstemål, inklusive kostnad per funktion, latensfördelningar, felklasser, modell- och promptversioner samt andel saknad telemetri.
Steg 3: Lägg till arbetsbelastningsbaserade aviseringar för kostnad, loopar, latens och felklasser.
Steg 4: Koppla ihop spann i flöden med flera anrop och verifiera spårpropagering genom verktyg och köer.
Steg 5: Implementera ett godkänt kvalitetsurval och kalibrera automatiska poäng mot mänskliga bedömningar.
Steg 6: Lägg bara till användaråterkoppling när tolkning, integritetshantering och svarsflöde är definierade.
Steg 7: Lägg till kundspecifika vyer och felsökningsförmågor med auktorisering och åtkomstgranskningar.
Acceptansposten för varje steg bör omfatta tester, dataklassificeringar, ägare, felbeteende och återställning. Utelämna en förmåga endast med uttrycklig motivering och kompenserande kontroll.
Vad som går fel utan den
En kort katalog över incidentmönster som återkommer hos team utan ordentlig LLM-observerbarhet:
-
En funktion försöker anropa om i en tät loop och ackumulerar oväntade kostnader före en fakturagranskning.
-
En modelluppdatering ändrar beteendet, men begärandena registrerar inte modellversionen och fördröjer hänföringen.
-
En promptversion försämrar ett viktigt flöde, men driftsättningen och svarsspåren kan inte jämföras per version.
-
En agent loopar, men saknade steggränser och spårinstrumentering döljer det upprepade tillståndet.
-
Ett autentiseringsfel i ett verktyg utlöser omförsök, men telemetri för felklass och omförsök är inte sammankopplad.
-
En promptinjektionsväg ger en osäker exponering, men bristande spårbarhet för data och telemetri för policybeslut förhindrar en konsekvensbedömning.
Det här är felscenarier att testa. Observerbarhet skapar belägg för upptäckt och utredning; den förhindrar inte grundfelet om inga verkställande kontroller agerar på signalerna.
Instrumentera före incidenten
LLM-observerbarhet utökar snarare än ersätter vanlig APM. Välj de signaler för anrop, spår, kvalitet, kostnad, latens, fel och felsökning som motiveras av arbetsbelastningen och hotmodellen, och koppla signalerna till testade åtgärdskontroller.
Ett produktionspåstående bör i stället visa detektionstid per scenario, spårtäckning, precision och täckningsgrad för aviseringar där det går att mäta, budgetkontrollernas beteende, integritetstester och belägg för återställning. Instrumentera före lansering, öva åtgärdsrutiner och publicera endast resultat som faktiskt har mätts.



