Share via


Door het systeem gegenereerde logboeken analyseren met behulp van Application Insights

U kunt uw uw canvas-app verbinden met Application Insights, een functie van Azure Monitor. Application Insights bevat krachtige analysehulpmiddelen om u te helpen bij het diagnosticeren van problemen en om te begrijpen wat gebruikers daadwerkelijk met uw apps doen. U kunt informatie verzamelen om u te helpen betere zakelijke beslissingen te nemen en de kwaliteit van uw apps te verbeteren.

In deze snelstartgids gebruiken we een canvas-app genaamd Kudo's om concepten van door het systeem gegenereerde logboeken in canvas-apps te verkennen en deze toe te passen op uw apps. De voorbeeld-app Kudo's maakt deel uit van een pakket met apps voor werknemersbetrokkenheid dat kan worden gedownload vanuit de Employee Experience Starter Kit.

Vereisten

Notitie

Als u telemetriegegevens wilt bekijken, moet uw tenantbeheerder Inzichten in canvas-app inschakelen. Meld u aan als beheerder bij het Power Platform-beheercentrum. Ga naar Instellingen > Tenantinstellingen > Inzichten in canvas-app. Stel in het deelvenster Inzichten in canvas-app de schakelaar in op Aan en sla uw wijzigingen op. Zie voor meer informatie Tenantinstellingen.

Optioneel

Een Application Insights-resource maken

Voordat u door het systeem gegenereerde logboeken kunt verzenden vanuit een app, moet u een Application Insights-resource maken om de gebeurtenissen op te slaan.

  1. Meld u aan bij de Azure Portal.

  2. Zoeken naar Application Insights:

    Application Insights.

  3. Een Application Insights-resource maken:

    Een Application Insights-resource toevoegen.

  4. Voer de juiste waarden in en selecteer Bekijken + maken.

    Lees voor meer informatie Een Application Insights-resource maken.

    Een resource maken.

  5. Nadat het Application Insights-exemplaar is gemaakt, kopieert u de instrumentatie sleutel in het exemplaaroverzicht voor gebruik in een volgende stap.

    Instrumentatiesleutel kopiëren.

Uw app verbinden met Application Insights

Notitie

  • Houd er bij het specificeren van een instrumentatiesleutel rekening mee dat gegevens tussen tenants kunnen worden verzonden. Traceringsgebeurtenissen worden verzonden naar de App Insights-resource die overeenkomt met de instrumentatiesleutel die u voor uw app hebt ingesteld, zelfs als het doel-App Insights-exemplaar zich in een andere tenant bevindt dan de app.
  • Wees voorzichtig bij het importeren van bestaande .msapp-bestanden, aangezien instrumentatiesleutels voor App Insights aanwezig kunnen zijn. Open de app handmatig na het importeren om te controleren of de juiste App Insights-instrumentatiesleutel wordt gebruikt.
  1. Meld u aan bij Power Apps.

  2. Selecteer Apps in het linkernavigatievenster. Selecteer in de lijst met apps de app Kudo's en selecteer vervolgens Bewerken:

    App Kudo's bewerken.

    Notitie

    U kunt ook een nieuwe app maken of een bestaande app bewerken.

  3. Selecteer het object App in de linkernavigatiestructuurweergave en plak de instrumentatiesleutel:

    Instrumentatiesleutel toevoegen.

  4. Sla uw app op en publiceer deze.

  5. Speel de gepubliceerde app en blader door de verschillende schermen.

Terwijl u door de app-schermen bladert, worden gebeurtenissen automatisch geregistreerd in Application Insights, inclusief gebruiksdetails zoals:

  • Waar de app is geopend
  • Welke apparaten worden gebruikt
  • De gebruikte browsertypen

Belangrijk

U moet de gepubliceerde app spelen om gebeurtenissen naar Application Insights te verzenden. Gebeurtenissen worden niet verzonden naar Application Insights wanneer u een voorbeeld van de app bekijkt in Power Apps Studio.

Gebeurtenissen weergeven in Application Insights

  1. Meld u aan bij de Azure Portal en open de Application Insights-resource die u eerder hebt gemaakt.

  2. Scrol omlaag in het linkernavigatiedeelvenster en selecteer Gebruikers onder de sectie Gebruik.

    Notitie

    De weergave Gebruikers toont de gebruiksdetails van de app, zoals:

    • Aantal gebruikers dat de app heeft bekeken
    • Aantal gebruikerssessies
    • Aantal geregistreerde gebeurtenissen
    • Besturingssystemen en browserversiegegevens van de gebruikers
    • Regio en locatie van de gebruikers

    Meer informatie over analyse van gebruikers, sessies en gebeurtenissen vindt u in Application Insights.

  3. Selecteer een van de gebruikerssessies om in te gaan op specifieke details. U kunt informatie zien zoals de sessielengte en de bezochte schermen:

    Gebruiksdetails voor gebruikers.

  4. Selecteer de weergave Gebeurtenissen in het linkernavigatiedeelvenster onder de sectie Gebruik. U kunt een overzicht zien van alle schermen die in alle app-sessies zijn bekeken:

    Gebeurtenisdetails voor de app.

Tip

Er zijn meer Application Insights-functies beschikbaar, zoals:

Aangepaste traceringsgebeurtenissen maken

U kunt aangepaste traceringen rechtstreeks naar schrijven Application Insights en beginnen met het analyseren van informatie die specifiek is voor uw scenario. Met de functie Trace kunt u het volgende verzamelen:

  • Gedetailleerde gebruiksinformatie voor besturingselementen op de schermen
  • Welke specifieke gebruikers toegang hebben tot uw app
  • Welke fouten optreden

Traceringen kunnen u ook helpen bij het diagnosticeren van problemen, omdat u een spoor van informatie kunt sturen terwijl uw gebruikers door uw app bladeren en verschillende acties uitvoeren. Traceerberichten die zijn verzonden naar Application Insights hebben een van de volgende drie urgentieniveaus:

  • Gegevens
  • Waarschuwing
  • Error

Afhankelijk van uw scenario kunt u ervoor kiezen om een traceringsbericht met de juiste ernst te verzenden. U kunt de gegevens opvragen en specifieke acties ondernemen op basis van de ernst.

Notitie

Als u persoonsgegevens vastlegt, wees u dan bewust van uw verplichtingen met betrekking tot diverse privacywet- en regelgeving. Verwijs naar het Microsoft Vertrouwenscentrum en de Service Trust Portal voor meer informatie.

Maak nu een nieuw onderdeel in uw app om feedback te verzamelen op elk scherm en schrijf de gebeurtenissen weg naar Application Insights.

  1. Meld u aan bij Power Apps.

  2. Selecteer Apps in het linkernavigatievenster. Selecteer in de lijst met apps de app Kudo's en selecteer vervolgens Bewerken.

    Notitie

    U kunt ook een nieuwe app maken of een bestaande app bewerken.

  3. Selecteer de optie Onderdelen in de Structuurweergave:

    Onderdelen.

  4. Selecteer Nieuw onderdeel en wijzig vervolgens de breedte naar 200 en hoogte naar 75:

    Breedte en hoogte.

  5. Selecteer Invoegen in het menu en selecteer vervolgens Pictogrammen om Emoji - Frons en Emoji - Glimlach toe te voegen:

    Pictogrammen toevoegen.

  6. Selecteer Nieuwe aangepaste eigenschap om een aangepaste eigenschap te maken:

    Aangepaste eigenschap maken.

  7. Voer de Naam en Weergavenaam van de eigenschap in, zoals FeedbackScreen.

  8. Beschrijving van eigenschap invoeren

  9. Selecteer Eigenschapstype als Invoer en Gegevenstype als Scherm:

    Aangepaste eigenschap.

    Notitie

    Met de eigenschap Invoer kunt u de schermnaam en het bijbehorende onderdeel vastleggen, zodat u deze informatie kunt registreren in Application Insights.

  10. Selecteer het onderdeel in de Structuurweergave, selecteer Meer acties () en selecteer vervolgens Naam wijzigen om het onderdeel een andere naam te geven, zoals FeedbackComponent.

    Naam van onderdeel en pictogrammen wijzigen.

  11. Selecteer de pictogrammen, selecteer Meer acties () en selecteer vervolgens Naam wijzigen om de pictogrammen een andere naam te geven, zoals FrownIcon en SmileIcon.

  12. Selecteer FrownIcon, selecteer de eigenschap OnSelect en voer vervolgens de volgende uitdrukking in de formulebalk in:

    Trace(
       "App Feedback",
       TraceSeverity.Information,
           {
             UserName: User().FullName,
             UserEmail: User().Email,
             Screen: FeedbackComponent.FeedbackScreen.Name,
             FeedbackValue: "-1"
           }
         );
    Notify("Thanks for your feedback!");
    

    Formule voor fronspictogram.

    Notitie

    De formule-uitdrukking verzendt UserName, UserEmail, Scherm en Feedback (met de waarde -1) naar Application Insights.

  13. Selecteer SmileIcon, selecteer de eigenschap OnSelect en voer vervolgens de volgende uitdrukking in de formulebalk in:

    Trace(
       "App Feedback",
       TraceSeverity.Information,
           {
             UserName: User().FullName,
             UserEmail: User().Email,
             Screen: FeedbackComponent.FeedbackScreen.Name,
             FeebackValue: "1"
           }
         );
    Notify("Thanks for your feedback!");
    
  14. Het onderdeel toevoegen aan een van de schermen in uw app:

    Feedbackonderdeel toevoegen.

  15. Selecteer Opslaan en selecteer vervolgens Publiceren om uw app op te slaan en te publiceren.

  16. Speel de gepubliceerde app en stuur een glimlach en frons als feedback vanaf uw schermen.

    Belangrijk

    U moet de gepubliceerde app spelen om gebeurtenissen naar Application Insights te verzenden. Gebeurtenissen worden niet verzonden naar Application Insights wanneer u een voorbeeld van de app bekijkt in Power Apps Studio.

    Gepubliceerde app afspelen.

Gegevens analyseren in Application Insights

U kunt nu beginnen met het analyseren van de gegevens die u hebt verzonden met de functie Trace van uw app in Application Insights.

  1. Meld u aan bij de Azure Portal en open de Application Insights-resource die u eerder hebt gemaakt:

    Selecteer Application Insights.

  2. Selecteer Logboeken onder Toezicht houden in het linkernavigatiedeelvenster:

    Logboeken selecteren.

  3. Voer de volgende vraag in en selecteer Uitvoeren om de ontvangen feedback van uw app te bekijken:

    traces
    | where message == "App Feedback"
    | order by timestamp
    

    Feedback voor app weergeven.

  4. Selecteer een rij in de resultaten en breid het veld customDimensions uit.

    De waarden voor Scherm, UserName, UserEmail en FeedbackBalue voor de gebeurtenis OnSelect van de glimlach- of het fronspictogram in uw onderdeel zijn opgenomen. Er worden ook waarden geregistreerd voor elke gebeurtenis die naar Application Insights is verzonden, zoals appId, appName en appSessionId.

    Aangepaste afmetingen uitbreiden.

  5. Met de volgende voorbeeldquery kunt u de eigenschappen van de aangepaste JSON-afmetingen uitbreiden en de kolommen in de resultatenweergave projecteren.

    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
    

    customDimensions-query uitbreiden.

    Tip

    Logboekquery's zijn zeer krachtig. U kunt ze gebruiken om meerdere tabellen samen te voegen, grote hoeveelheden gegevens te combineren en complexe bewerkingen uit te voeren. Meer informatie over logboekquery's.

Niet-verwerkte fouten controleren (experimenteel)

[Deze sectie bevat bètadocumentatie en kan gewijzigd worden.]

Belangrijk

  • Dit is een experimentele functie.
  • Experimentele functies zijn niet bedoeld voor productiegebruik en bieden mogelijk beperkte functionaliteit. Deze functies zijn beschikbaar vóór een officiële release zodat klanten vroeg toegang kunnen krijgen en feedback kunnen geven.

U kunt niet altijd anticiperen op en plannen maken voor alle fouten die kunnen optreden terwijl uw app actief is. Niet-verwerkte Power Fx-formulefouten worden als bannerberichten aan gebruikers gerapporteerd. Ook kunnen ze worden gemeld aan Application Insights om u te helpen de frequentie en ernst ervan te begrijpen zonder erop te vertrouwen dat de gebruikers van uw app problemen zullen melden. U kunt ook real-time waarschuwingen instellen wanneer er runtime-fouten optreden om een meer proactieve aanpak te volgen.

Fouten doorgeven aan Application Insights inschakelen

U moet de instelling inschakelen die Power Apps toestaat om niet-verwerkte runtime-fouten door te geven aan Azure Application Insights.

Waarschuwing

Het inschakelen van deze instelling kan extra kosten met zich meebrengen in verband met de opslag van Application Insights-logboeken.

U kunt doorgeven van fouten inschakelen door naar Instellingen > Aanstaande functies > Experimenteel > Fouten doorgeven aan Azure Application Insights te gaan terwijl u uw canvas-app open houdt voor bewerking. Sla uw app op en publiceer deze.

Instelling voor doorgeven van fouten aan Azure Application Insights inschakelen.

Foutgebeurtenissen in Application Insights

Niet-verwerkte Power Fx-fouten die gebruikers ervaren tijdens het uitvoeren van de app, worden gerapporteerd aan de tabel traceringen. Niet-verwerkte fouten kunnen worden geïdentificeerd en onderscheiden van andere foutgebeurtenissen door het gebeurtenisbericht 'Niet-verwerkte fout'. De "severityLevel"-dimensie van deze gebeurtenissen is 3 (TraceSeverity.Error).

Gedetailleerde foutberichten worden gegeven in de 'fouten'-dimensie van de eigenschap customDimension. In situaties waarin meerdere fouten zijn opgetreden tijdens dezelfde bewerking, worden de fouten geconsolideerd in de dimensie "fouten" van een enkele traceergebeurtenis. De foutmeldingen zijn dezelfde als gerapporteerd in Controleren tijdens een live foutopsporingssessie.

De volgende voorbeeldquery identificeert niet-verwerkte fouten en vouwt alle foutberichten uit die zijn opgenomen in de traceergebeurtenis:

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

Voorbeelduitvoer voor voorbeeldquery.

Correlatietracering (experimenteel)

[Deze sectie bevat bètadocumentatie en kan gewijzigd worden.]

Belangrijk

  • Dit is een experimentele functie.
  • Experimentele functies zijn niet bedoeld voor productiegebruik en bieden mogelijk beperkte functionaliteit. Deze functies zijn beschikbaar voor een officiële release zodat klanten vroeg toegang kunnen krijgen en feedback kunnen geven.

Verbindingen met externe gegevens en services zijn van fundamenteel belang voor de meeste apps. Correlatietracering genereert en verspreidt contextinformatie om door het systeem gegenereerde logboeken samen te voegen in een canvas-app en zijn verbindingen, afhankelijk van bepaalde beperkingen. Uw app kan bijvoorbeeld een aangepaste connector aanroepen die op zijn beurt een Azure-functie of andere REST-API aanroept. Met correlatietracering kunt u acties in de app correleren met de onderliggende API-aanroepen op verschillende niveaus. Dit kan van pas komen bij probleemoplossing.

Correlatietracering van canvas-apps is een implementatie van contexttracering en volgt de W3C-specificatie.

Correlatietracering inschakelen

Waarschuwing

Het inschakelen van deze instelling kan extra kosten met zich meebrengen in verband met de opslag van Application Insights-logboeken.

Om de functie voor het traceren van correlaties in te schakelen, gaat u naar Instellingen > Aankomende functies > Experimenteel > Correlatietreacering van Azure Application Insights inschakelen terwijl u uw canvas-app open houdt voor bewerking. Sla uw app op en publiceer deze.

Correlatietracering van Azure Application Insights inschakelen.

Beperkingen

  • Correlatietracering is alleen beschikbaar voor aangepaste connectors. Andere connectortypen worden niet ondersteund.
  • HTTP-aanvragen worden alleen vastgelegd in Application Insights als de aangesloten service ook is verbonden met Application Insights.

Correlatietracering gebruiken

Indien ingeschakeld, voegt correlatietracering een nieuwe door het systeem gegenereerde logboekgebeurtenis toe aan de tabel afhankelijkheden van het Application Insights-exemplaar van de canvas-app. Deze gebeurtenis wordt geregistreerd op het moment dat een antwoord van een netwerkoproep wordt ontvangen. Afhankelijkheidsgebeurtenissen leggen details van de netwerkaanroep vast, inclusief de aanvraag- en responsheaders, de responsstatuscode en de duur van de aanroep.

Voorbeeldgebeurtenis vastgelegd in de tabel met afhankelijkheden.

Als de aangesloten service ook is verbonden met Application Insights, wordt een extra door het systeem gegenereerde logboekgebeurtenis die de aanvraag vastlegt, gegenereerd in de tabel aanvragen van het Application Insights-exemplaar van de service. Sommige Azure-services, zoals Azure Functions, kunnen worden verbonden zonder enige codering van de Azure-portal. Zowel de canvas-app als meerdere apps en verbonden services kunnen worden verbonden met hetzelfde Application Insights-exemplaar.

Voorbeeldgebeurtenis vastgelegd in de tabel met aanvragen.

Netwerkoproepen voor ondersteunde connectors kunnen worden samengevoegd met andere door het systeem gegenereerde logboeken in de dimensie "operation_Id". De volgende voorbeeldquery laat zien dat er een netwerkoproep wordt gedaan naast traceergebeurtenissen die tijdens een app-sessie worden verzonden.

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

Voorbeelduitvoer voor de eerdere voorbeeldquery.

Gegevens exporteren naar Power BI

U kunt uw Application Insights-gegevens en -queryresultaten exporteren naar Power BI voor analyse en gegevenspresentatie.

  1. Meld u aan bij de Azure Portal en open de Application Insights-resource die u eerder hebt gemaakt:

  2. Selecteer Logboeken onder Toezicht houden in het linkernavigatiedeelvenster:

  3. Selecteer het menu Exporteren in het queryvenster Log Analytics.

  4. Selecteer de optie Exporteren naar Power BI (M-query) om een Power BI-querybestand te downloaden:

    Exporteer Power BI-query.

  5. Open het gedownloade bestand in een teksteditor en kopieer de query naar het klembord.

  6. Power BI openen.

  7. Selecteer het menu Gegevens ophalen in het lint Start en selecteer vervolgens Lege query:

    Lege Power BI-query.

  8. Selecteer in het queryvenster Geavanceerde editor. Plak de query in het venster en selecteer Gereed en selecteer vervolgens Sluiten en toepassen:

    Geavanceerde Power BI-query.

U kunt ook grafieken en visualisaties maken in Power BI om feedback te presenteren die in uw app is ontvangen en om op gegevens gebaseerde beslissingen en acties te nemen.

Grafieken en visualisaties.

Standaard Trace-gebeurteniscontext en -dimensies

Er wordt ook een set standaardafmetingen toegevoegd aan het eigenschap customDimensions voor elke Trace-gebeurtenis. Deze afmetingen kunnen worden gebruikt om de toepassing en toepassingssessies te identificeren waarin de gebeurtenissen plaatsvonden. Als u aanvullende aangepaste gegevens registreert met de functie Trace, worden deze ook weergegeven in de aangepaste afmetingen.

Dimensienaam Staat voor
ms-appId De toepassings-id van de app die de gebeurtenis heeft verzonden.
ms-appname De toepassingsnaam van de app die de gebeurtenis heeft verzonden.
ms-appSessionId De sessie-id van de toepassing. Deze waarde wordt mogelijk niet ingevuld in sommige scenario's. Indien beschikbaar, overschrijft deze waarde de standaarddimensie sessionID van Application Insights.
ms-tenantID De unieke id van de tenant waar de toepassing wordt gepubliceerd.
ms-environmentId De naam van de omgeving waar de toepassing wordt gepubliceerd.
userId Een unieke id voor de gebruiker die aan de sessie is gekoppeld.
ms-duration Een toegerekende waarde die de tijd meet die een gebruiker nodig heeft om van het ene scherm naar het andere te navigeren. Deze waarde overschrijft de standaarddimensie voor duur, PageView, in Application Insights.
sessionId Een sessie-id die kan worden gebruikt om alle gebeurtenissen te correleren die zijn gekoppeld aan één toepassingssessie. Deze waarde is altijd aanwezig en wordt aanbevolen om inzicht te krijgen in het aantal unieke sessies. Deze waarde wordt ontleend aan de sessie-id van de speler en wordt weergegeven bij het bekijken van de sessiedetails tijdens het spelen van de app. De sessie-id kan soms een standaard, willekeurig en uniek Application Insights-gegenereerde waarde krijgen. Deze standaardwaarde is niet betrouwbaar en is niet gerelateerd aan app-specifieke parameters.
Duur Een toegerekende waarde die de tijd meet die een gebruiker nodig heeft om van het ene scherm naar het andere te navigeren. Deze waarde is gelijk aan de duur die wordt gerapporteerd door de dimensie ms-duration.
ms-isTest Geeft aan of de sessie is gekoppeld aan de Test Studio-testrunner.
ms-currentScreenName De naam van de pagina waar een gebruiker vandaan navigeert (aanwezig voor paginanavigatiegebeurtenissen).
ms-targetScreenName De naam van de pagina waar een gebruiker naartoe navigeert (aanwezig voor paginanavigatiegebeurtenissen).

Niet-ondersteunde scenario's

Application Insights ondersteunt de volgende scenario's niet.

  • Gebeurtenissen van offline spelers worden niet vastgelegd.
  • Gebeurtenissen in mobiele apps (zowel iOS als Android) worden niet vastgelegd wanneer de app wordt opgeschort.
  • GCC en niet-openbare clouds worden niet ondersteund.

Notitie

Laat ons uw taalvoorkeuren voor documentatie weten! Beantwoord een korte enquête. (houd er rekening mee dat deze in het Engels is)

De enquête duurt ongeveer zeven minuten. Er worden geen persoonlijke gegevens verzameld (privacyverklaring).