Analizuokite sistemos sugeneruotus žurnalus naudodami Application Insights
Galite prijungti drobės programas prie Application Insights "Azure Monitor" funkcijos .... Application Insights Apima efektyvius analizės įrankius, padedančius diagnozuoti problemas ir suprasti, ką naudotojai iš tikrųjų daro su jūsų programomis. Galite rinkti informaciją, kuri padės priimti geresnius verslo sprendimus ir pagerinti programų kokybę.
Šiame greitajame paleidime naudojame drobės programą, pavadintą Kudos, kad ištirtume sistemos sugeneruotų žurnalų koncepcijas drobės programose ir pritaikytume jas savo programoms. "Kudos" programos pavyzdys yra darbuotojų įtraukimo programų rinkinio, kurį galima atsisiųsti iš darbuotojų patirties darbo pradžios rinkinio, dalis.
Būtinosios sąlygos
- Turite turėti prieigą prie „Azure“ portalo.
- Turite turėti teises kurti „Azure“ išteklius.
Pastaba
Norėdamas peržiūrėti telemetrijos informaciją, nuomotojo administratorius turi įgalinti "Canvas" programų įžvalgas. Prisijunkite kaip administratorius Power Platform administravimo centre. Eikite į Parametrai Nuomotojo > parametrai > Drobės programos įžvalgos. Drobės programos įžvalgų srityje nustatykite jungiklį į padėtį Įjungta ir įrašykite pakeitimus. Daugiau informacijos rasite Nuomotojo parametrai.
Pasirinktinai
- Atsisiųskite ir įdiekite "Kudos" programą iš darbuotojų patirties darbo pradžios rinkinio. Vietoj jos taip pat galite naudoti esamą programą.
„Application Insights“ ištekliaus kūrimas
Kad galėtumėte siųsti sistemos sugeneruotus žurnalus iš programos, turite sukurti Application Insights šaltinį įvykiams saugoti.
Prisijunkite prie „Azure“ portalo.
Ieškokite „Application Insights“:
Sukurkite „Application Insights“ išteklių:
Įveskite atitinkamas reikšmes ir pasirinkite Peržiūrėti ir kurti.
Daugiau informacijos žr. „Application Insights“ ištekliaus kūrimas.
Sukūrę Application Insights egzempliorių, nukopijuokite instrumentuotės raktą egzemplioriaus apžvalgoje, kad galėtumėte naudoti atlikdami būsimą veiksmą.
Programos prijungimas prie „Application Insights“
Pastaba
- Nurodydami prietaisų raktą, atminkite, kad duomenys gali būti siunčiami tarp nuomotojų. Sekimo įvykiai siunčiami į "App Insights" išteklių, kuris atitinka matavimo raktą, kurį nustatėte savo programai, net jei paskirties "App Insights" egzempliorius yra kitame nuomotojuje nei programa.
- Būkite atsargūs importuodami esamus .msapp failus, nes gali būti "App Insights" prietaisų klavišų. Neautomatiškai atidarykite programą po importavimo, kad patikrintumėte, ar naudojamas tinkamas "App Insights" instrumentų raktas.
Prisijunkite prie Power Apps.
Kairiojoje naršymo srityje pasirinkite Programos. Programų sąraše pasirinkite programą "Kudos ", tada pasirinkite Redaguoti:
Kairiajame naršymo medžio rodinyje pasirinkite taikomosios programos objektą ir įklijuokite instrumentuotės klavišą:
Savo programą Įrašykite ir Publikuokite.
Paleiskite paskelbtą programą ir naršykite skirtinguose ekranuose.
Kai naršote programų ekranuose, įvykiai automatiškai registruojami Application Insights, įskaitant išsamią naudojimo informaciją, pvz.:
- Iš kur pasiekiama programa
- Kokie įrenginiai naudojami
- Naudojami naršyklių tipai
Svarbu
Turite paleisti publikuotą programą, kad įvykiai būtų siunčiami į „Application Insights“. Įvykiai nesiunčiami į „Application Insights“, kai peržiūrite programą naudodami „Power Apps Studio“.
Įvykių peržiūra naudojant „Application Insights“
Prisijunkite prie „Azure“ portalo ir atidarykite „Application Insights“ išteklių, kurį sukūrėte anksčiau.
Slinkite žemyn kairiojoje naršymo srityje ir skyriuje Naudojimas pasirinkite Vartotojai.
Pastaba
Vartotojų rodinyje rodoma išsami programos naudojimo informacija, pvz.:
- Programėlę peržiūrėjusių naudotojų skaičius
- Naudotojų seansų skaičius
- Užregistruotų įvykių skaičius
- Naudotojų operacinės sistemos ir naršyklės versijos informacija
- Naudotojų regionas ir vieta
Sužinokite daugiau apie naudotojų, seansų ir įvykių analizę Application Insights.
Pasirinkite vieną iš vartotojo seansų, kad peržiūrėtumėte konkrečią išsamią informaciją. Galite peržiūrėti informaciją, pvz., seanso trukmę ir aplankytus ekranus:
Pasirinkite įvykių rodinį kairiojoje naršymo srityje, esančioje skiltyje Naudojimas . Galite peržiūrėti visų ekranų, peržiūrėtų visuose programos seansuose, suvestinę:
Arbatpinigiai
Yra ir daugiau Application Insights funkcijų, pvz.:
Pasirinktinių sekimo įvykių kūrimas
Galite rašyti pasirinktinius sekimus tiesiogiai „Application Insights“ ir pradėti analizuoti konkretaus scenarijaus informaciją. Sekimo funkcija leidžia rinkti:
- Išsami ekranų valdiklių naudojimo informacija
- Kurie konkretūs naudotojai pasiekia jūsų programą
- Kokios klaidos atsiranda
Sekimas taip pat gali padėti diagnozuoti problemas, nes vartotojams naršant jūsų programoje ir atliekant įvairius veiksmus galite siųsti informacijos taką. Sekti pranešimus, siunčiamus vienu Application Insights iš trijų sunkumų:
- Informacija
- Įspėjimas
- Klaida
Atsižvelgdami į savo scenarijų galite siųsti reikiamos svarbos sekimo pranešimą. Galite pateikti užklausą dėl duomenų ir imtis konkrečių veiksmų, atsižvelgdami į jų svarbą.
Pastaba
Jei registruojate bet kokius asmens duomenis, žinokite savo įsipareigojimus, susijusius su įvairiais privatumo įstatymais ir reglamentais. Daugiau informacijos ieškokite "Microsoft" patikimumo centre ir tarnybų patikimumo portale .
Dabar programoje sukurkite naują komponentą, kad galėtumėte rinkti atsiliepimus apie kiekvieną ekraną, ir rašykite įvykius į Application Insights jį.
Prisijunkite prie Power Apps.
Kairiojoje naršymo srityje pasirinkite Programos. Programų sąraše pasirinkite programą Kudos, tada pasirinkite Redaguoti.
Pastaba
Taip pat galite sukurti naują programą arba redaguoti esamą programą.
Medžio rodinyje pasirinkite parinktį Komponentai:
Pasirinkite Naujas komponentas; komponento plotį pakeiskite į 200, o aukštį – į 75.
Meniu pasirinkite Įterpti , tada pasirinkite Piktogramos, kad įtrauktumėte „Emoji“ – nepasitenkinimo grimasa ir „Emoji“ – šypsena:
Pažymėkite Nauja pasirinktinė ypatybė, kad sukurtumėte pasirinktinę ypatybę:
Įveskite ypatybės Pavadinimą ir Rodomą pavadinimą, pvz., FeedbackSceen.
Įveskite ypatybės Aprašą.
Pasirinkite Ypatybės tipo parinktį Įvestis ir Duomenų tipo parinktį Ekranas:
Pastaba
Įvesties ypatybė leidžia fiksuoti ekrano pavadinimą ir jo komponentą, kad šią informaciją galėtumėte registruoti „Application Insights“.
Medžio rodinyje pasirinkite komponentą , pasirinkite Daugiau veiksmų (…), tada pasirinkite Pervardyti, kad pervardytumėte komponentą prasmingu pavadinimu, pvz., FeedbackComponent.
Pasirinkite piktogramas, pasirinkite Daugiau veiksmų (…), tada pasirinkite Pervardyti, kad pervardytumėte piktogramas prasmingais pavadinimais, pvz., FrownIcon ir SmileIcon.
Pasirinkite FrownIcon, pasirinkite ypatybę OnSelect, tada formulės juostoje įveskite šią išraišką:
Trace( "App Feedback", TraceSeverity.Information, { UserName: User().FullName, UserEmail: User().Email, Screen: FeedbackComponent.FeedbackScreen.Name, FeedbackValue: "-1" } ); Notify("Thanks for your feedback!");
Pastaba
Formulės išraiška UserName, UserEmail, Screen ir Feedback (su reikšme -1) siunčia į „Application Insights“.
Pasirinkite SmileIcon, pasirinkite ypatybę OnSelect, tada formulės juostoje įveskite šią išraišką:
Trace( "App Feedback", TraceSeverity.Information, { UserName: User().FullName, UserEmail: User().Email, Screen: FeedbackComponent.FeedbackScreen.Name, FeebackValue: "1" } ); Notify("Thanks for your feedback!");
Įtraukite komponentą į vieną iš programos ekranų:
Pasirinkite Įrašyti, o tada – Publikuoti, kad įrašytumėte ir publikuotumėte programą.
Paleiskite publikuotą programą ir iš ekranų išsiųskite atsiliepimą su šypsena ir atsiliepimą su nepasitenkinimo grimasa.
Svarbu
Turite paleisti publikuotą programą, kad įvykiai būtų siunčiami į „Application Insights“. Įvykiai nesiunčiami į „Application Insights“, kai peržiūrite programą naudodami „Power Apps Studio“.
Duomenų analizavimas „Application Insights“
Dabar galite pradėti analizuoti duomenis, kuriuos iš savo programos išsiuntėte į „Application Insights“ naudodami funkciją Sekimas.
Prisijunkite prie „Azure“ portalo ir atidarykite „Application Insights“ išteklių, kurį sukūrėte anksčiau:
Pasirinkite Žurnalai dalyje Stebėjimas kairiojoje naršymo srityje:
Įveskite šią užklausą ir pasirinkite Vykdyti, kad peržiūrėtumėte iš programos gautus atsiliepimus:
traces | where message == "App Feedback" | order by timestamp
Pasirinkite rezultatų eilutę ir išplėskite lauką customDimensions.
Buvo įrašytos jūsų komponento šypsenos ar nepasitenkinimo grimasos piktogramos OnSelect įvykio Screen, UserName, UserEmail ir FeedbackValue reikšmės. Taip pat įrašomos kiekvieno įvykio, į kurį Application Insights siunčiama, reikšmės , pvz., appId, appName ir appSessionId.
Naudodami toliau pateiktą užklausos pavyzdį galite išplėsti JSON pasirinktinių dimensijų ypatybes ir projektuoti stulpelius rezultatų rodinyje.
traces | extend customdims = parse_json(customDimensions) | where message == "App Feedback" | project timestamp , message , AppName = customdims.['ms-appName'] , AppId = customdims.['ms-appId'] , FeedbackFrom = customdims.UserEmail , Screen = customdims.Screen , FeedbackValue = customdims.FeedbackValue | order by timestamp desc
Arbatpinigiai
Žurnalo užklausos yra itin galingos. Jas naudodami galite sujungti kelias lenteles, agreguoti didelius duomenų kiekius ir atlikti sudėtingas operacijas. Sužinokite daugiau apie žurnalo užklausas.
Nesutvarkytų klaidų stebėjimas (eksperimentinis)
[Šiame skyriuje yra negalutinio leidimo dokumentacija ir jis gali keistis.]
Svarbu
- Ši funkcija yra eksperimentinė.
- Eksperimentinės funkcijos nėra skirtos naudoti gamybai ir gali būti apribotas jų funkcionalumas. Šias funkcijas galima naudoti prieš oficialų išleidimą, kad klientai galėtų gauti ankstyvą prieigą ir pateikti atsiliepimų.
Ne visada galite numatyti ir suplanuoti visas klaidas, kurios gali įvykti vykdant programą. Apie neapdorotas Power Fx formulės klaidas vartotojams pranešama kaip apie reklamjuostės pranešimus. Be to, gali būti pranešama apie juos, Application Insights kad būtų lengviau suprasti jų dažnumą ir rimtumą, nepasikliaujant programos naudotojais, kad jie praneštų apie problemas. Taip pat galite nustatyti įspėjimus realiuoju laiku, kai įvyksta vykdymo klaidų, kad imtumėtės aktyvesnio požiūrio.
Įjungti klaidų perdavimų Application Insights
Turite įjungti parametrą, leidžiantį Power Apps perduoti neapdorotas vykdymo klaidas į "Azure". Application Insights
Įspėjimas
Įjungus šį parametrą, gali būti papildomų išlaidų, susijusių su Application Insights žurnalų saugojimu.
Norėdami įjungti klaidų perdavimą, eikite į Parametrai > Būsimos funkcijos > Eksperimentinės > Perduoti klaidas „Azure“ Application Insights palikdami drobės programą atidarytą redaguoti. Išsaugokite ir paskelbkite programą.
Klaidų įvykiai Application Insights
Apie neapdorotas Power Fx klaidas, su kuriomis naudotojai susiduria programos vykdymo metu, pranešama sekimo lentelėje. Neapdorotas klaidas galima identifikuoti ir atskirti nuo kitų klaidų įvykių pagal įvykio pranešimą "Neapdorota klaida". Šių įvykių "severityLevel" dimensija yra 3 (TraceSeverity.Error).
Išsamūs klaidų pranešimai pateikiami ypatybės customDimension dimensijoje „klaidos“. Tais atvejais, kai atliekant tą pačią operaciją įvyko kelios klaidos, klaidos konsoliduojamos vieno sekimo įvykio dimensijoje "klaidos". Klaidų pranešimai yra tokie patys, kaip pranešta monitoriuje tiesioginio derinimo seanso metu.
Toliau pateiktas užklausos pavyzdys identifikuoja neapdorotas klaidas ir išplečia visus klaidų pranešimus, įtrauktus į sekimo įvykį:
traces
| where message == "Unhandled error"
| extend customdims = parse_json(customDimensions)
| extend errors = parse_json(tostring(customdims.['errors']))
| mv-expand errors
| project timestamp
, itemId //unique identifier for the trace event
, AppName = customdims.['ms-appName']
, AppId = customdims.['ms-appId']
, errors = errors.['Message']
| order by timestamp desc
Sąsajos sekimas (eksperimentinis)
[Šiame skyriuje yra negalutinio leidimo dokumentacija ir jis gali keistis.]
Svarbu
- Ši funkcija yra eksperimentinė.
- Eksperimentinės funkcijos nėra skirtos naudoti gamybai ir gali būti apribotas jų funkcionalumas. Šias funkcijas galima naudoti prieš oficialų išleidimą, kad klientai galėtų gauti ankstyvą prieigą ir pateikti atsiliepimų.
Ryšiai su išoriniais duomenimis ir paslaugomis daugelyje programų yra esminiai. Koreliacijos sekimas generuoja ir skleidžia kontekstinę informaciją, kad būtų galima sujungti sistemos sugeneruotus žurnalus drobės programoje ir jos ryšiuose, atsižvelgiant į tam tikrus apribojimus. Pavyzdžiui, jūsų programa gali iškviesti pasirinktinę jungtį, kuri savo ruožtu iškviečia „Azure“ funkciją ar kitą REST API. Koreliacijos sekimas leidžia susieti programoje atliktus veiksmus su pagrindiniais API skambučiais įvairiose pakopose. Tai gali būti naudinga šalinant trikdžius.
Drobės programos koreliacijos sekimas yra konteksto sekimo įgyvendinimas ir atitinka W3C specifikaciją.
Įjungti sąsajų sekimą
Įspėjimas
Įjungus šį parametrą, gali būti papildomų išlaidų, susijusių su Application Insights žurnalų saugojimu.
Norėdami įjungti sąsajų sekimą funkciją, eikite į Parametrai > Būsimos funkcijos > Eksperimentinės > Įjungti „Azure“ Application Insights sąsajų sekimą palikdami drobės programą atidarytą redaguoti. Išsaugokite ir paskelbkite programą.
Apribojimai
- Koreliacijos sekimas galimas tik naudojant pasirinktines jungtis. Kiti jungčių tipai nepalaikomi.
- HTTP užklausos užfiksuojamos Application Insights tik tuo atveju, jei prijungta ir prijungta paslauga Application Insights.
Sąsajų sekimo naudojimas
Kai įjungta, koreliacijos sekimas prideda naują sistemos sugeneruotą žurnalo įvykį drobės programos egzemplioriaus priklausomybių Application Insights lentelėje. Šis įvykis įrašomas tuo metu, kai gaunamas atsakymas iš tinklo skambučio. Priklausomybės įvykiai užfiksuoja išsamią tinklo iškvietimo informaciją, įskaitant užklausos ir atsako antraštes, atsako būsenos kodą ir iškvietimo trukmę.
Jei prijungta Application Insights tarnyba taip pat prijungta, tarnybos egzemplioriaus užklausų lentelėje sugeneruojamas Application Insights papildomas sistemos sugeneruotas žurnalo įvykis, fiksuojantis užklausą. Kai kurias "Azure" paslaugas, pvz., "Azure Functions", galima prijungti be jokio kodavimo iš "Azure" portalo. Tiek drobės programa, tiek kelios programos ir prijungtos paslaugos gali būti prijungtos prie to paties Application Insights egzemplioriaus.
Palaikomų jungčių tinklo iškvietimus galima sujungti su kitais sistemos sugeneruotais žurnalais pagal "operation_Id" dimensiją. Toliau pateiktame užklausos pavyzdyje rodoma, kad tinklo skambutis atliekamas kartu su programos seanso metu skleidžiamais įvykiais.
traces | union dependencies | union requests | union pageViews | union customEvents
| project timestamp
, itemType
, name
, operation_Name
, message
, severityLevel
, customDimensions
, operation_Id
, operation_ParentId
| where operation_Id == "0a7729e3e83c4e4d93cb4f51149f73b9" //placeholder operation_Id, replace
| order by timestamp asc
Duomenų eksportavimas į „Power BI“
Savo „Application Insights“ duomenis ir užklausų rezultatus galite eksportuoti į „Power BI“ analizei ir duomenų pateikčiai.
Prisijunkite prie „Azure“ portalo ir atidarykite „Application Insights“ išteklių, kurį sukūrėte anksčiau:
Pasirinkite Žurnalai dalyje Stebėjimas kairiojoje naršymo srityje:
Žurnalo analizės užklausos lange pasirinkite meniu Eksportuoti .
Pasirinkite parinktį Eksportuoti į Power BI (M užklausa), kad atsisiųstumėte Power BI užklausos failą:
Atidarykite atsisiųstą failą teksto rengyklėje ir nukopijuokite užklausą į mainų sritį.
Atidaryti Power BI.
Juostelėje Pagrindinis pasirinkite meniu Gauti duomenis, tada pasirinkite Tuščia užklausa:
Užklausos lange pasirinkite Išplėstinė rengyklė. Įklijuokite užklausą į langą, pasirinkite Atlikta, tada pasirinkite Uždaryti &; Taikyti:
Naudodami „Power BI“ taip pat galite kurti diagramas ir vizualizacijas, atspindinčias jūsų programoje gautus atsiliepimus, taip pat priimti duomenimis pagrįstus sprendimus ir atlikti duomenimis pagrįstus veiksmus.
Numatytasis sekimo įvykio kontekstas ir dimensijos
Į kiekvieno sekimo įvykio ypatybę customDimensions taip pat įtraukiamas numatytųjų dimensijų rinkinys. Šios dimensijos gali būti naudojamos norint nustatyti programą ir programos seansus, kuriuose įvyko įvykiai. Jei registruosite papildomus tinkintus duomenis naudodami sekimo funkciją, jie taip pat bus rodomi tinkintuose aspektuose.
Dimensijos pavadinimas | Reiškia |
---|---|
ms-appId | Programos, kuri išsiuntė įvykį, ID. |
ms-appname | Programos, kuri išsiuntė įvykį, pavadinimas. |
ms-appSessionId | Programos seanso ID. Tam tikruose scenarijuose ši reikšmė gali būti neužpildoma. Kai ši reikšmė galima, ji perrašo standartinę Application Insights dimensiją „sessionID“. |
ms-tenantID | Nuomotojo, kuriame publikuojama programa, unikalusis identifikatorius. |
ms-environmentId | Aplinkos, kurioje publikuojama programa, pavadinimas. |
Vartotojo ID | Unikalus naudotojo, susieto su seansu, identifikatorius. |
ms-duration | Apskaičiuota reikšmė, matuojanti laiką, kurio reikia vartotojui pereiti iš vieno ekrano į kitą. Ši reikšmė perrašo standartinę Application Insights trukmės dimensiją „PageView“. |
sessionId | Seanso ID, kurį galima naudoti visų įvykių, susietų su vienu programos seansu, sąsajoms nustatyti. Ši reikšmė visada yra ir rekomenduojama norint suprasti unikalų seansų skaičių. Ši reikšmė paimama iš leistuvo seanso ID ir rodoma peržiūrint išsamią seansų informaciją programos leidimo metu. Seanso ID kartais gali gauti numatytąją, atsitiktinę ir unikalią sugeneruotą Application Insights reikšmę. Ši numatytoji reikšmė nėra patikima ir neturi sąsajos su jokiais konkrečios programos parametrais. |
Trukmė | Apskaičiuota reikšmė, matuojanti laiką, kurio reikia vartotojui pereiti iš vieno ekrano į kitą. Ši reikšmė yra tokia pati kaip ir trukmė, kurią nurodo dimensija „ms-duration“. |
ms-isTest | Nurodo, ar seansas susietas su "Test Studio" bandomuoju bėgiku. |
ms-currentScreenName | Puslapio, iš kurio vartotojas naršo, pavadinimas (pateikiamas puslapio naršymo įvykiams). |
ms-targetScreenName | Puslapio, į kurį vartotojas pereina, pavadinimas (pateikiamas puslapio naršymo įvykiams). |
Nepalaikomas scenarijus
Application Insights nepalaiko toliau nurodytų scenarijų.
- Neprisijungus pasiekiamų žaidėjų įvykiai nefiksuojami.
- Programos mobiliesiems (abu iOS ir Android) įvykiai nefiksuojami, kai programa laikinai sustabdoma.
- GCC ir ne viešieji debesys nepalaikomi.
Pastaba
Ar galite mums pranešti apie dokumentacijos kalbos nuostatas? Atlikite trumpą apklausą. (atkreipkite dėmesį, kad ši apklausa yra anglų kalba)
Apklausą atliksite per maždaug septynias minutes. Asmeniniai duomenys nėra renkami (privatumo nuostatos).
Atsiliepimai
https://aka.ms/ContentUserFeedback.
Jau greitai: 2024 m. palaipsniui atsisakysime „GitHub“ problemų, kaip turiniui taikomo atsiliepimų mechanizmo, ir pakeisime jį nauja atsiliepimų sistema. Daugiau informacijos žr.Pateikti ir peržiūrėti atsiliepimą, skirtą