Utforsk programinnsikter

Fullført

Application Insights er Azures løsning for overvåking av programytelse (APM) som gir dyp innsikt i hvordan programmene dine fungerer og hvordan brukere samhandler med dem. I motsetning til infrastrukturovervåking (dekket i tidligere enheter), fokuserer Application Insights på telemetri på programnivå – forespørsler, avhengigheter, unntak og tilpassede forretningshendelser.

Slik fungerer Application Insights

Installasjon og oppsett

Du installerer en liten instrumentasjonspakke i programmet og konfigurerer en Application Insights-ressurs i Microsoft Azure-portalen. Oppsettsprosessen varierer fra plattform til plattform, men involverer generelt:

1. Opprett Application Insights-ressurs:

  • Gå til Azure-portalen og opprett en Application Insights-ressurs
  • Skaff deg instrumenteringsnøkkelen eller tilkoblingsstrengen
  • Ressursen kan være frittstående eller koblet til et Log Analytics-arbeidsområde

2. Legg til instrumentering i applikasjonen din:

  • Installer Application Insights SDK for plattformen din (.NET, Java, Node.js, Python)
  • Konfigurer instrumenteringsnøkkelen i programmet ditt
  • Aktiver eventuelt avanserte funksjoner (profilering, feilsøking av øyeblikksbilder)

3. Distribuer instrumentert applikasjon:

  • Instrumentasjonen overvåker appen og sender telemetridata til portalen
  • Programmet kan kjøre hvor som helst – det trenger ikke å driftes i Azure
  • Fungerer med lokale programmer, andre skyleverandører, kantenheter

Hva blir instrumentert?

Du kan instrumentere flere applikasjonskomponenter for full synlighet:

Webtjeneste-applikasjon:

  • ASP.NET, ASP.NET Core, Java Spring Boot Node.js Express-applikasjoner
  • Fanger automatisk opp forespørsler, responstider, unntak
  • Sporer avhengigheter (databasekall, eksterne API-er, meldingskøer)

Bakgrunnskomponenter:

  • Azure Functions, WebJobs, Worker Services
  • Konsollapplikasjoner og satsvise prosesser
  • Planlagte oppgaver og bakgrunnsjobber

JavaScript på nettsider:

  • SDK på klientsiden kjører i brukernettlesere
  • Sporer sidevisninger, AJAX-anrop, nettleserunntak
  • Måler ytelse på klientsiden (sideinnlastingstid, gjengivelse)
  • Overvåker enkeltsideapplikasjoner (React, Angular, Vue)

diagram som viser programinnsikt og telemetri for varsler, Power BI, Visual Studio, Rest API og kontinuerlig eksport.

Omfattende telemetrisamling

Application Insights gir flere telemetrikilder for fullstendig observerbarhet:

Integrering av vertsmiljø:

  • Hent inn telemetri fra vertsmiljøer , for eksempel ytelsestellere, Azure-diagnostikk eller Docker-logger
  • Korreler infrastrukturmåledata med programytelse
  • Forstå om problemene er på program- eller infrastrukturnivå

Syntetisk overvåking:

  • Sett opp netttester med jevne mellomrom, send syntetiske forespørsler til nettjenesten din
  • Overvåk tilgjengelighet fra flere globale steder
  • Validere brukerscenarioer med flere trinn
  • Varsle når endepunkter blir utilgjengelige

Enhetlig analyse:

  • Alle disse telemetristrømmene er integrert i Azure-portalen
  • Bruk kraftige analyse- og søkeverktøy på rådataene
  • Bruke KQL til å spørre på tvers av alle telemetrityper
  • Korrelere hendelser fra forskjellige kilder ved hjelp av operasjons-ID-er

Hva er overhead?

Innvirkningen på appens ytelse er minimal. Application Insights er utformet for produksjonsbruk med ubetydelige ytelseskostnader:

Ytelse egenskaper:

  • Sporing av anrop blokkerer ikke: Telemetriinnsamling gjør ikke forespørselsbehandlingen tregere
  • Batch-overføring: Hendelser grupperes og sendes i en egen tråd
  • Asynkrone operasjoner: Ingen venting på at telemetri skal overføres
  • Adaptiv prøvetaking: Reduserer automatisk datamengden samtidig som statistisk nøyaktighet opprettholdes
  • Typisk overhead:<1% CPU-påvirkning, ~50–100 KB/s nettverk per forekomst

Strategier for prøvetaking:

  • Prøvetaking med fast rente: Samle inn en prosentandel av all telemetri (f.eks. 20%)
  • Adaptiv prøvetaking: Justeres automatisk basert på trafikkvolum
  • Prøvetaking av inntak: Brukes på Azure-portalen for å redusere lagrede data
  • Sampling bevarer konteksten: Relatert telemetri er samplet sammen

Hva overvåker Application Insights?

Application Insights er rettet mot utviklingsteamet for å hjelpe deg med å forstå hvordan appen din fungerer og brukes. Den gir omfattende overvåking på tvers av flere dimensjoner:

Måledata for applikasjonsytelse

Forespørselsfrekvenser, responstider og feilfrekvenser:

  • Finn ut hvilke sider som er mest populære, til hvilke tider på døgnet og hvor brukerne befinner seg
  • Se hvilke sider som gir best resultater og hvilke som trenger optimalisering
  • Viktig innsikt: Hvis responstider og feilfrekvenser øker med flere forespørsler, har du sannsynligvis et ressurs- eller kapasitetsproblem

Avhengighetsrater, responstider og feilfrekvenser:

  • Spor kall til databaser, eksterne API-er, meldingskøer og lagring
  • Finn ut om eksterne tjenester bremser deg
  • Identifiser de tregeste avhengighetene som påvirker brukeropplevelsen
  • Oppdag gjennomgripende feil fra nedstrømstjenester

Feil- og unntakssporing

Unntak:

  • Analysere aggregert statistikk som viser unntakstrender over tid
  • Velg bestemte forekomster og drill ned i hele stakksporingen
  • Se relaterte forespørsler for å forstå kontekst når unntak oppstod
  • Både server- og nettleserunntak rapporteres for full synlighet
  • Spor ubehandlede vs. håndterte unntak

Overvåking på klientsiden

Sidevisninger og lastytelse:

  • Rapportert av brukernes nettlesere som viser erfaringer fra den virkelige verden
  • Mål tid til interaktiv (TTI), første innholdsrike maling (FCP)
  • Identifiser sider som laster sakte inn som påvirker brukeropplevelsen

AJAX-anrop fra nettsider:

  • Sporfrekvenser, responstider og feilfrekvenser for API-kall
  • Identifiser hvilke API-endepunkter som er trege fra klientperspektiv
  • Overvåk enkeltsideapplikasjonsnavigasjon (SPA)

Brukeranalyse

Antall brukere og økter:

  • Spor daglige/månedlige aktive brukere (DAU/MAU)
  • Forstå øktens varighet og frekvens
  • Mål brukerbevaring og frafall

Integrasjon av infrastruktur

Ytelsestellere:

  • Samle inn fra Windows- eller Linux-servermaskiner
  • Inkluder CPU-, minne- og nettverksbruk
  • Korreler infrastrukturmåledata med programytelse

Diagnostikk for verter:

  • Overvåk Docker-beholdere og Azure-ressurser
  • Spore ressursutnyttelse per container
  • Forstå infrastrukturtilstand sammen med programtilstand

Diagnostiske funksjoner

Diagnostiske sporingslogger:

  • Registrere logger fra programrammeverket (ILogger, Log4j osv.)
  • Korrelere sporingshendelser med forespørsler ved hjelp av operasjons-ID-er
  • Søk i logger etter spesifikke feil eller mønstre
  • Filtrere etter alvorsgrad, tidsintervall eller egendefinerte egenskaper

Tilpasset forretningstelemetri

Egendefinerte hendelser og målinger:

  • Skrive egendefinert telemetri i klient- eller serverkode
  • Spor forretningshendelser som solgte varer, spill vunnet, opprettede abonnementer
  • Mål bedriftsspesifikke beregninger som handlekurvverdi og trinn i konverteringstrakten
  • Opprett egendefinerte dimensjoner for segmentering (kundenivå, funksjonsflagg)

Hvor ser jeg telemetrien min?

Application Insights gir flere grensesnitt for å utforske dataene dine, hver optimalisert for ulike scenarioer. Det finnes mange måter å utforske dataene på.

Smart deteksjon og varsler

Smart deteksjon og manuelle varsler gir proaktiv varsling om problemer:

Automatiske varsler tilpasser seg appens vanlige telemetrimønstre og utløses når det er noe utenfor det vanlige mønsteret. Maskinlæringsalgoritmer identifiserer:

  • Unormal økning i feilrater: Plutselig økning i unntak eller mislykkede forespørsler
  • Redusert ytelse: Responstider langsommere enn vanlige mønstre
  • Minnelekkasjer: Gradvis minneøkning over tid
  • Avhengighetsavvik: Eksterne serviceanrop som viser uvanlig oppførsel

Du kan også angi manuelle varsler på nivåer av egendefinerte eller standard måledata med konfigurerbare terskler, alvorlighetsgrader og handlingsgrupper.

Skjermbilde av angitte varsler som viser en unormal økning i mislykket forespørselsfrekvens i appen fabrikamprod.

Programkart

Visualiser komponentene i appen din med viktige beregninger og varsler. Applikasjonskartet oppdager automatisk:

  • Applikasjon topologi: Alle komponenter og deres tilkoblinger
  • Avhengighetsforhold: Hvilke tjenester kaller hvilke avhengigheter
  • Helse indikatorer: Fargekodet helsestatus per komponent
  • Viktige beregninger: Forespørselsfrekvens, feilfrekvens, responstid per komponent
  • Aktive varsler: Visuelle indikatorer som viser hvilke komponenter som har problemer

Brukstilfeller: Identifiser raskt hvilken komponent i et distribuert system som svikter, forstå anropsmønstre, planlegg kapasitet per tjeneste.

Skjermbilde av programkartet med komponentene i appen, viktige måledata og varsler.

Application Insights Profiler

Undersøk utførelsesprofilene for eksempelforespørsler for å identifisere ytelsesflaskehalser:

  • Ytelse på kodenivå: Se nøyaktig hvilke metoder som bruker mest tid
  • Visualisering av samtaletre: Forstå kjøringsbanen gjennom koden
  • Prøveprofilering: Lav overheadoppsamling fra produksjonsmiljøer
  • Flammegrafer: Visuell representasjon av tid brukt i hver funksjon

Brukstilfeller: Identifiser trege databasespørringer, ineffektive algoritmer, overdreven strengallokering, lås konflikt.

Skjermbilde av Profiler. Undersøk utførelsesprofilene for eksempelforespørsler.

Bruksanalyse

Analyser brukersegmentering og -oppbevaring for å forstå hvordan brukere samhandler med appen din:

  • Brukerflyter: Visualiser navigasjonsbaner gjennom programmet
  • Trakter: Spor konverteringsfrekvenser gjennom flertrinnsprosesser
  • Kohorter: Grupper brukere etter atferd eller attributter for sammenligning
  • Oppbevaring: Mål hvor mange brukere som returnerer over tid
  • Konsekvensanalyse: Korreler ytelse med brukeratferd

Brukstilfeller: Optimaliser konverteringstrakter, forstå funksjonsadopsjon, identifiser brukere i faresonen, mål produkt-markedstilpasning.

Skjermbilde av bruksanalyse med brukersegmentering og oppbevaring.

Søk etter og filtrer hendelser for detaljert undersøkelse:

  • Typer hendelser: Forespørsler, unntak, avhengighetskall, loggspor, sidevisninger, egendefinerte hendelser
  • Filtrering: Etter tidsintervall, resultatkode, operasjonsnavn, egendefinerte egenskaper
  • Fulltekstsøk: Finn hendelser som inneholder bestemt tekst
  • Relatert telemetri: Klikk en hendelse for å se all relatert telemetri (ende-til-ende-transaksjon)

Brukstilfeller: Undersøk spesifikke brukerrapporterte problemer, finn feil for spesifikke kunder, spor forespørsler på tvers av distribuerte systemer.

Skjermbilde av søke- og filterhendelsene, for eksempel forespørsler, unntak, avhengighetsanrop, loggsporinger og sidevisninger.

Utforsker for beregninger

Utforsk, filtrer og segmenter aggregerte data:

  • Beregninger: Frekvenser for forespørsler, feil, unntak, responstider, sideinnlastingstider, tilpassede beregninger
  • Splitting: Segmenter etter dimensjoner (skyrolle, geografi, nettleser, enhet)
  • Filtrering: Fokuser på spesifikke verdier
  • Aggregasjon: Min, maks, gj.sn., sum, persentiler
  • Tidsgranularitet: 1 minutt til 1 måned bøtter

Brukstilfeller: Kapasitetsplanlegging, SLA-sporing, sammenligning av ytelse på tvers av regioner, identifisering av trender.

Skjermbilde av måledata og segmentsamlede data, for eksempel antall forespørsler, feil og unntak, svartider og innlastingstider for sider.

Oversikter

Kombiner data fra flere ressurser og del med andre:

  • Flere ressurser: Kombiner data fra flere Application Insights-forekomster
  • Tilpassbare fliser: Feste spørringer, måledata og visualiseringer
  • Delte dashbord: Publiser til team for samarbeidsovervåking
  • Kontinuerlig visning: Flott for applikasjoner med flere komponenter og teamrom

Brukstilfeller: Lederdashbord, krigsrom under hendelser, teamsituasjonsbevissthet, statusvisninger.

Skjermbilde av instrumentbord fra flere ressurser som er flotte for programmer med flere komponenter og kontinuerlig visning i grupperommet.

Live Metrics Stream

Se ytelsesindikatorer i nær sanntid:

  • 1 sekunders oppdatering: Se måledata som oppdateres i sanntid
  • Validering av distribusjon: Når du distribuerer en ny versjon, må du sørge for at alt fungerer som forventet
  • Live-arrangementer: Strøm av forespørsler, avhengigheter, unntak etter hvert som de oppstår
  • Serverens tilstand: Live view av serverantall, CPU, minne
  • Filtrering: Fokuser på spesifikke servere eller feiltyper

Brukstilfeller: Distribusjonsvalidering, live feilsøking, observasjon av belastningstesting, hendelsesrespons.

Skjermbilde av Live Metrics Stream med ytelsesindikatorer i nær sanntid.

Analyse (KQL-spørringer)

Svar på utfordrende spørsmål om appens ytelse og bruk ved hjelp av dette kraftige spørringsspråket:

  • KQL (Kusto-spørringsspråk): Samme språk som ble dekket i forrige enhet
  • Ad-hoc analyse: Utforsk data uten forhåndsdefinerte visninger
  • Komplekse sammenføyninger: Korrelere data på tvers av flere tabeller
  • Avanserte visualiseringer: Opprette egendefinerte diagrammer og tidsserier
  • Lagrede spørringer: Gjenbruk vanlige analysemønstre

Brukstilfeller: Rotårsaksanalyse, kapasitetsplanlegging, tilpassede rapporter, datautforskning.

Skjermbilde av Analyse som viser svar på utfordrende spørsmål om appens ytelse og bruk ved hjelp av dette kraftige spørringsspråket.

Visual Studio-integrasjon

Se ytelsesdata i koden:

  • CodeLens: Ytelsesberegninger som vises innebygd i koderedigeringsprogrammet
  • Gå til kode fra stabelspor: Klikk unntak i portalen, hopp til kodelinje
  • Lokal feilsøking: Application Insights-integrering i Visual Studio-feilsøking
  • Trender: Historiske ytelsestrender for spesifikke metoder

Brukstilfeller: Ytelsesoptimalisering under utvikling, feilsøking av produksjonsproblemer lokalt.

Skjermbilde av Visual Studio som viser ytelsesdataene i koden.

Snapshot Debugger

Feilsøk øyeblikksbilder samplet fra live-operasjoner:

  • Feilsøking av produksjon: Ta øyeblikksbilder fra hele minnet fra produksjonen
  • Parameterverdier: Se lokale variabler og parametere ved unntak
  • Samtale stabel: Komplett stabelsporing med variable verdier ved hver ramme
  • Ingen innvirkning på ytelsen: Øyeblikksbilder samlet inn med minimale overhead
  • Personvern kontroller: Konfigurer hvilke data som skal registreres

Brukstilfeller: Feilsøk produksjonsproblemer som er vanskelige å reprodusere, forstå unntak i kundemiljøer.

skjermbilde av feilsøkingsprogrammet for øyeblikksbilde. Feilsøke øyeblikksbilder som er samplet fra live-operasjoner, med parameterverdier.

Power BI-integrasjon

Integrer bruksmetrikk med annen forretningsanalyse:

  • Tilpassede rapporter: Opprett Power BI-instrumentbord som kombinerer Application Insights og forretningsdata
  • Planlagt oppdatering: Automatiske dataoppdateringer
  • Korrelasjon: Koble tekniske beregninger til forretningsresultater
  • Ledende rapportering: Presentere tekniske data i forretningssammenheng

Brukstilfeller: Rapportering på styrenivå, korrelering av applikasjonsytelse med inntekter, SLA-samsvarsrapportering.

skjermbilde av Power BI. Integrer bruksdata med annen forretningsintelligens.

REST- API

Skriv kode for å kjøre spørringer over beregningene og rådataene dine:

  • Programmatisk tilgang: Spør Application Insights fra dine egne programmer
  • Automatisering: Bygg tilpassede overvåkingsløsninger
  • Integrasjon: Koble til tredjepartsverktøy og arbeidsflyter
  • Tilpasset behandling: Eksportere data for avansert analyse

Brukstilfeller: Tilpassede dashboards, SLA-overvåkingssystemer, automatisert rapportering, datavitenskapelige pipelines.

Skjermbilde av REST API. Skriv kode for å kjøre spørringer over måledata og rådata.

Kontinuerlig eksport

Masseeksport av rådata til lagring så snart de ankommer:

  • Azure Storage: Eksporter til Blob Storage for langsiktig oppbevaring
  • Hendelseshuber: Strøm til sanntidsbehandlingssystemer
  • Data Lake: Integrer med plattformer for stordataanalyse
  • Samsvar: Oppfyll krav til datalagring og oppbevaring
  • Optimalisering av kostnader: Lagre data i billigere lagringsnivåer

Brukstilfeller: Langsiktig arkivering, mating av datavarehus, samsvarskrav, tilpasset analyse i stor skala.

Skjermbilde av masseeksport. Masseeksport av rådata til lagring så snart den kommer.