Anbefalinger til indsamling af ydelsesdata
Dette gælder for denne kontrolliste til den velopbyggede Power Platform ydeevneeffektivitetsanbefaling:
PE:04 | Indsamle ydeevnedata. Arbejdsbelastningskomponenter og -flows skal indeholde automatiske, kontinuerlige og meningsfulde metrikværdier og logge. Indhent data på forskellige niveauer af arbejdsbelastning, f.eks. program-, platform-, data- og operativsystemniveauer. |
---|
Indsamling af ydelsesdata er processen til indsamling af metrikværdier og logge, der indeholder oplysninger om arbejdsbelastningens ydeevne. Disse data indeholder numeriske værdier, der kaldes metrikværdier. Metrikværdier beskriver systemets tilstand på et bestemt tidspunkt. Ydelsesdata omfatter også logge, der indeholder forskellige typer data, som organiseres i poster.
Ved at indsamle ydelsesdata kan du overvåge og analysere arbejdsbelastningens ydeevne. Du kan bruge disse oplysninger til at identificere præstationsflaskehalse, foretage fejlfinding af problemer og til at træffe databaserede beslutninger for at forbedre arbejdsbelastningens overordnede ydeevne.
Uden databaseret indsigt er du muligvis ikke klar over de underliggende ydeevneproblemer eller muligheder for optimering. Potentielle resultater omfatter langsommere reaktionstider, forringet gennemløb og i sidste ende en underoptimal brugeroplevelse. Derudover gør manglende data om ydeevne det svært at diagnosticere og foretage fejlfinding af problemer rettidigt, hvilket medfører længere nedetid og reduceret produktivitet.
Definitioner
Begreb | Definition |
---|---|
Aktivitetslogge | Logfiler, der sporer administrationshandlinger på ressourcer, såsom sletning af en ressource. |
Programlogge | Logfiler, der sporer oplysninger om programhændelser, fejl og andre aktiviteter, f.eks. logins og fejl ved databaseforbindelser. |
Værktøj til overvågning af programydeevne (APM) | Et værktøj, der overvåger og rapporterer præstationen i et program. |
Kodeinstrumentering | Den direkte eller indirekte indfangning af præstationsmetrik fra programmets perspektiv. Indfangede metrik omfatter flowmetrik, ressourceanvendelse og metrik specifik for sproget eller runtime. |
Distribueret sporing | Indsamle og korrelere metrikværdier på tværs af distribuerede arbejdsbelastningskomponenter. |
Sink for metrikværdier | En lagringsdestination for dine metrikværdier, der korrelerer data i tidsserier til analyse. |
Platformslogfiler | Diagnosticerings- og overvågningsdata, der omfatter ressourcelogfiler, aktivitetslogfiler og revisionslogfiler. |
Platformsmetrikværdier | Numeriske værdier, der registrerer ydelse af arbejdsbelastning på et bestemt tidspunkt. |
Ressourcelogge | Data, der oprettes i et system. De indeholder oplysninger om systemets tilstand. |
Struktureret logføring | Definition af et meningsfuldt format til logmeddelelser, typisk som nøgleværdipar. |
Vigtigste designstrategier
Optimering af ydeevnen kræver data for at måle den aktuelle ydeevne for en arbejdsbelastning eller et flow i forhold til præstationsmålet. Du skal indsamle den rette mængde og diversitet af data for at måle ydeevnen af koden og infrastrukturen i forhold til præstationsmål. Sørg for, at der automatisk genereres kontinuerlige og meningsfulde metrikværdier og logge i alle komponenter og flow i arbejdsbelastningen. Du skal indhente disse data fra forskellige niveauer, f.eks. programmet, platformen, lagring og operativsystemet. Den omfattende indsamling af ydelsesdata gør det muligt at have en helhedsforståelse af præstationen, så der kan identificeres ineffektivitet og forbedringer.
Centralisere ydeevnedata
Centralisering af ydelsesmetrikværdier og -logge er processen til indsamling af ydelsesmetrikværdier og logge fra forskellige kilder og lagring af dem på et centralt sted. Opret et centralt metrik-opsamlingspunkt og et centralt log-opsamlingspunkt. Denne centralisering gør det nemt at få adgang til, analysere og overvåge ydelsesmetrikker og logfiler på tværs af forskellige systemer og komponenter. Ved at centralisere metrikker og logfiler får du indblik i arbejdsbelastningens ydeevne. Vælg en velegnet platform eller værktøj, der kan aggregere og lagre ydelsesmetrikker for arbejdsbelastning og logfiler.
Afvejning: Forstå omkostningerne ved indsamling af metrikker og logfiler. Jo flere metrikker og logfiler du indsamler, jo højere er omkostningerne.
Segmentere ydeevnedata
Segmentering af ydelsesdata indebærer organisering og kategorisering af metrikværdier og logfiler baseret på deres oprindelse, formål eller miljø. Du kan f.eks. adskille produktionsdata fra ikke-produktionsdata eller skelne mellem præstationsmål og forretningsmetrikværdier. Ved at segmentere data kan du optimere bestemte miljøer, forenkle fejlfinding og begrænse unøjagtigheder i forbindelse med overvågning af ydeevnen. Ved at foretage en klar skelnen mellem forskellige datatyper kan du registrere, analysere og reagere på relevante metrik mere effektivt og tilpasse arbejdsbelastningens tilstand i forhold til målene for arbejdsbelastninger. For at segmentere ydelsesdata, overvej følgende anbefalinger:
Holde produktionsdata og ikke-produktionsdata adskilte. Ved at adskille data efter miljø kan du sikre en målrettet overvågning og optimering af de enkelte miljøer. I produktionsmiljøer kan du bedre identificere og håndtere ydeevneproblemer, der direkte påvirker brugere og virksomhedsdrift. I miljøer, der ikke er produktionsmiljøer, letter dataseparationen en effektiv fejlfinding og finjustering i testfasen, før du udruller i produktionen.
Brug ét sæt data i de enkelte miljøer. Brug ikke ét sæt data til præstationsmål og et andet sæt data til alarmer vedrørende præstationsmål. Brug af forskellige sæt data fører til unøjagtige advarsler, der undergraver effektiviteten af overvågning af ydeevnen.
Adskille præstationsmål og forretningsmetrikværdier. Drifts- og udviklingsteamene bruger præstationsmål til at overvåge arbejdsbelastningens tilstand og opfylde forretningsmål. Forretningsmæssige nøgletal relaterer til forretningsmål eller kunderapportering. Indsaml forretningsmetrikværdier i en separat datastrøm, selvom dataene overlapper direkte. Denne separation giver dig fleksibilitet til at hente de rigtige data og analysere dataene uafhængigt.
Definere opbevaringspolitikker
Opbevaringspolitikker bestemmer, hvor længe data om ydeevne skal gemmes. At etablere disse politikker er med til at administrere lagerpladsen på en effektiv måde, og det sikrer, at kun de nødvendige data kan analyseres. Sådanne politikker understøtter en bedre ydeevne og opfylder standarderne for overholdelse. Du bør konfigurere politikker for opbevaring af logfil- og metrikdata for at muliggøre effektiv fejlfinding og overvågning i alle miljøer. Loggene og metrikværdierne kan f.eks. opbevares i længere tid i et produktionsmiljø end i testmiljøet. Opbevaringsperioden skal være i overensstemmelse med organisationens krav og overholdelsesregler. Beslut, hvor længe dataene skal opbevares med henblik på analyse og revision. Arkiver de data, du ikke har brug for til analyse med det samme.
Indsamle ydeevnedata
Indsamling af data indebærer overvågning og analyse af arbejdsbelastningens ydelsesmetrikværdier, f.eks. gennemløb, ventetid og fuldførelsestider, primært indsamlet via instrumentering af kode. Arbejdsbelastningsdata giver værdifuld indsigt i et programs tilstand og ydeevne. Ved at overvåge og analysere ydelsesdata kan du identificere og foretage fejlfinding af problemer, optimere ydeevnen og træffe velovervejede beslutninger for arbejdsbelastningen.
Instrumenter kode
Instrumentation henviser til processen til indlejring af kodestykker eller handlinger i arbejdsbelastningskoden. Du kan f.eks. oprette brugerdefinerede sporingshændelser i din lærredsapp. Formålet med instrumentation er at registrere ydelsesdata, mens arbejdsbelastningen køres. Det er vigtigt at indsamle målepunkter, der fremhæver de vigtige funktioner i arbejdsbelastningen. Fokuser på metrikværdier som gennemløb, ventetid og færdiggørelsestid. Det er vigtigt at adskille virksomhedsrelaterede handlinger fra andre handlinger. I forbindelse med data, der er relateret til virksomhedsdrift, skal du sikre, at metadataene er struktureret på en måde, der muliggør særskilt sporing og lagring. Code instrumentation giver følgende fordele:
Identifikation af præstationsflaskehalse: Ved at spore metrikværdier, som forløbet tid, kan du identificere problemer og optimere koden efter dette.
Evaluere systemets funktionsmåde under en belastning: Du kan se, hvordan arbejdsbelastningen fungerer under forskellige stressscenarier. Disse data kan hjælpe dig med at identificere problemer i forbindelse med skalerbarhed, samtidighed og ressourceforbrug.
Sporingaf arbejdsbelastningenstilstand og tilgængelighed: Da nøgletal overvåges i realtid, kan du få vigtige beskeder om potentielle problemer, der påvirker applikationens ydeevne og tilgængelighed.
Forbedre brugeroplevelsen: Du kan få indblik i, hvordan brugere arbejder med arbejdsbelastningen. Brug disse oplysninger til at optimere brugeroplevelsen og identificere områder, der kan forbedres.
Planlægge kapacitet og allokere ressourcer: De resultatdata, som instrumentering indsamler, kan give værdifuld indsigt i ressourcekravene til en arbejdsbelastning. Disse oplysninger kan bruges til at træffe beslutninger om planlægning af kapacitet og ressourcer.
Når du instrumenterer kode til overvågning af ydeevnen, skal du overveje følgende strategier:
Brug APM-værktøjer: Værktøjer til overvågning af programydeevne (APM) indsamler og analyserer ydelsesdata, herunder metrikværdier, spor og logge. APM-værktøjer indeholder funktioner som instrumentering på kodeniveau, transaktionssporing og ydelsesprofilering.
Brugerdefineret instrumentation: Udviklere kan tilføje brugerdefineret kode for at indsamle præstationsdata, der er unikke for deres applikation og arbejdsbyrde. Den brugerdefinerede instrumentation kan måle kørsel, spore ressourceforbrug eller registrere bestemte hændelser.
Indfang transaktionstider. Indfangning af transaktionstider er relateret til måling af slutpunkt til slutpunkt-tidspunkter for vigtige tekniske funktioner som en del af overvågning af ydeevnen. Metrikværdier på programniveau skal omfatte end-to-end transaktionstider. Disse transaktionstider skal dække vigtige tekniske funktioner, f.eks. databaseforespørgsler, svartider for eksterne API-kald og fejlrater for behandlingstrin.
Brug standarder for telemetri. Overvej at bruge APM-værktøjsbiblioteker og værktøjer, der er opbygget omkring en telemetristandard, f.eks. OpenTelemetry.
Indsamle ressourcens ydeevnedata
Ved at indsamle ressourceydeevnedata kan du få indblik i arbejdsbelastningens tilstand og funktionsmåde. Ressourceydeevnedata indeholder oplysninger om ressourceforbrug, som er nøglen til kapacitetsplanlægning. Disse data giver også indsigt i en arbejdsbelastnings tilstand og kan hjælpe dig med at registrere problemer og foretage fejlfinding. Overvej følgende anbefalinger:
Indhent metrikværdier og logfiler for hver ressource. Hver service har et sæt metrikværdier, der er entydige for ressourcens funktionalitet. Disse metrikværdier hjælper dig med at forstå ressourcens tilstand og ydeevne.
Brug platformsværktøj. Hent inspiration fra indbyggede og integrerede overvågningsløsninger, f.eks. Azure Monitor Insights. Med dette værktøj strømlines ydelseshandlinger. Overvej platformsværktøj, når du vælger en platform og investere i værktøj eller rapportering.
Overvåg netværkstrafik. Ved at overvåge netværkstrafik kan du spore og analysere dataflow og -mønstre, som det bevæger sig på tværs af netværksveje. Indsamle trafikanalyser og overvåge den trafik, der krydser undernetsgrænser. Dit mål er at analysere og optimere netværksydeevnen.
Indsamle database- og lagerdata
Mange database- og lagersystemer indeholder deres egne overvågningsværktøjer. Disse værktøjer indsamler ydelsesdata, der er specifikke for disse systemer. Database- og lagersystemer opretter ofte logfiler, der indeholder ydelsesrelaterede hændelser og indikatorer. Indhent databasedata og lagerdata, så du kan identificere flaskehalse, diagnosticere problemer og træffe velovervejede beslutninger for at forbedre den overordnede ydeevne og pålideligheden af arbejdsbelastningen. Overvej at indsamle følgende typer ydelsesdata:
Gennemløb: Gennemløb måler den mængde data, der læses fra eller skrives til lagersystemet over en periode. Gennemløbsdata indikerer dataoverførselsfunktionerne.
Ventetid: Ventetid måler, hvor lang tid lagerhandlinger varer. Latenstidsdata indikerer lagersystemets reaktionstid.
IOPS (I/O-handlinger i sekundet): Data om antallet af læsehandlinger eller skrivehandlinger, som lagersystemet kan udføre på et sekund. IOPS-data indikerer lagersystemets gennemløb og reaktionshastighed.
Kapacitetsbrug: Kapacitetsbrug er mængden af anvendt lagerkapacitet og den tilgængelige mængde. Med kapacitetsdata kan organisationer planlægge fremtidige lagerbehov.
Indsamle connector-ydeevnedata
Den tid, der bruges på at vente på fuldførte integrerede servicehandlinger, kan bidrage til den overordnede dårlige ydeevne af en arbejdsbelastning. Hvis arbejdsbelastningen bruger connector til at integrere servicer, skal du overveje at måle den tid, der bruges på de enkelte connector-opgaver, for at evaluere dens effekt og beslutte, om arbejdsbelastningen skal optimeres. Afhængigt af tjenesten kan du bruge kørehistorik eller en brugerdefineret logik til at registrere den tid, der er brugt på connector-opgaver.
validere og analysere data
Dine præstationsdata skal være i overensstemmelse med præstationsmålene. Dataene skal repræsentere arbejdsbelastning eller flowydelse helt og nøjagtigt, da de er relateret til præstationsmål. For eksempel har en webtjeneste en responstid med et ydelsesmål på 500 millisekunder. Gør det til en rutine at analysere dataene, da hyppige evalueringer giver mulighed for tidligt registrering og afhjælpning af ydeevneproblemer.
Opret vigtige beskeder. Det er gavnligt at have alarmer, der kan bruges, så der hurtigt kan identificeres og rettes op på ydeevneproblemer. Disse advarsler skal indeholde en klar angivelse af den overskredne ydeevnetærskel, den potentielle forretnings effekt og de involverede komponenter. Start ved at angive en almindelig og anbefalet alarm. Du kan med tiden ændre disse kriterier ud fra dine specifikke behov. Det primære mål med disse advarsler skal være at forudsige potentielle ydeevnefald, før de eskalerer til væsentlige problemer. Hvis du ikke kan angive en alarm for en ekstern afhængighed, kan du overveje at udarbejde en metode til indsamling af indirekte målinger, f.eks. varigheden af et afhængighedsopkald.
Angiv grænser for dataindsamling. Fastsæt og angiv logiske begrænsninger for mængden af data, du indsamler, og dens opbevaringsvarighed. Telemetri kan undertiden medføre store mængder data. Det er vigtigt at fokusere på kun at registrere de vigtigste præstationsindikatorer, eller at du har et effektivt system, der kan udtrække meningsfulde indsigter fra dine præstationsdata.
Power Platform -processtyring
Indsamling af data om programmets ydeevne: Application Insights er en funktion i Azure Monitor, der hjælper dig med at overvåge ydelsen og tilgængeligheden af dit program. Dataene gemmes i Azure Monitor-logge af Application Insights og visualiseres i Ydeevne og Fejl-paneler. Dataene eksporteres til dit Application Insights-miljø i det standardskema, der er defineret af Application Insights. Du kan eksportere Dataverse og Power Automate data til Application Insights, forbinde dine lærredapps til Application Insights og hente telemetridata fra din Microsoft Copilot Studio agent til brug i Azure Application Insights.
Application Insights giver dig mulighed for at vælge Server og Browser datavisninger. Hvis du identificerer disse handlinger med varigheden af varigheden, kan du diagnosticere potentielle problemer.
Brug indbyggede platformsfunktioner til at analysere ydeevne:Analytics i Copilot Studio giver et omfattende overblik over din agent's ydeevne. Det bruger kunstig intelligens (AI) teknologi til at identificere, hvilke emner der har størst indflydelse på eskaleringshastighed, opgivelsesrate og opløsningsrate. Indsigt i ydeevne for Power Apps analyserer brugerdata for kørsel og leverer en prioriteret liste over anbefalinger, der kan hjælpe udviklere med at øge ydeevnen for modelbaserede apps.
Centralisering, opdeling og lagring af ydelsesdata: Microsoft har allerede indsamlet omfattende telemetri på Dataverse, Power Automate cloudflows og modelbaserede apps. Med Application Insights-integration leverer et miljø eller en lejeradministrator Application Insights-instrumentationsnøglen, når dataeksportprocessen konfigureres i Power Platform Administration. Så snart installationen er fuldført, sendes der telemetri, som Microsoft indsamler om dit miljø, sendes til dit Application Insights-miljø. Når du bruger Application Insights-integration, modtager du et standardiseret sæt telemetri, der følger Application Insights telemetri-datamodel. Ud over denne integration, kan du forbinde lærredsapps til Application Insights og hente telemetridata fra din Microsoft Copilot Studio agent til brug i Azure Application Insights.
Indsamling af Azure-ressourcedata: De fleste Azure-tjenester genererer platformslogfiler og -metrikværdier, der indeholder diagnosticerings- og overvågningsoplysninger. Ved at aktivere diagnostiske indstillinger kan du angive de platformslogfiler og -metrik, der skal indsamles og lagres. Af hensyn til korrelationen skal du aktivere diagnosticering for alle understøttede tjenester og sende loggene til samme destination som programloggen.
Indsamling af data om databaseydeevne:Microsoft Dataverse integreres med Application Insights. Datastrømmen indeholder i øjeblikket ydelsesdata vedrørende indgående Dataverse-API-kald, Dataverse-kald til plug-in-kørsel og Dataverse-SDK-kald. Hvis du vil have besked om problemer, skal du konfigurere advarsler baseret på tærskelværdier for ydeevne.
Validere og analysere ydelsesdata: I Azure Monitor kan du bruge Azure Monitor Logs til at indsamle, analysere og visualisere logdata fra dine programmer og systemer. Ved at aggregere logge kan du krydsforespørge hændelser og få indblik i programmets ydeevne. Du kan finde flere oplysninger i Azure Monitor Logs omkostningsberegninger og -indstillinger** og Prissætning for Azure Monitor.
I Azure Monitor kan du definere alarmregler til overvågning af bestemte ydelsesmetrikværdier og udløse alarmer baseret på foruddefinerede betingelser. Du kan f.eks. oprette en advarselsregel, der giver dig besked, når svartiden overskrider en angivet grænse. Konfigurer advarselsreglen til at sende beskeder til de ønskede modtagere.
Når du opretter en påmindelsesregel, kan du skal definere de kriterier, der bestemmer, når der udløses en påmindelse. Du kan angive tærskelværdier, aggregeringsmetoder, tidsvinduer og hyppigheden af evaluering. Definer kriterierne på baggrund af kravene til overvågning af ydeevnen. Ud over at sende beskeder kan du angive, hvilke handlinger der skal udføres, når en alarm udløses. Handlinger kan omfatte afsendelse af mails, opkald til webhooks eller kørsel af Azure-funktioner. Vælg de relevante handlinger for at reagere på det bestemte alarmscenario.
Eksempler
- Erhvervsovervågning med Azure Monitor
- Oprette brugerdefinerede sporingshændelser i lærredsapps
- Oprette brugerdefinerede advarsler for skystrømme
- Analysere agentens ydeevne og anvendelse i Copilot Studio
Kontrolliste til ydeevneeffektivitet
Se det fuldstændige sæt anbefalinger.