Verbeterde telemetrie in Application Insights inschakelen en weergeven voor Standard-werkstromen in Azure Logic Apps
Van toepassing op: Azure Logic Apps (Standard)
In Application Insights kunt u verbeterde telemetrieverzameling inschakelen voor de resource van uw standaard logische app en vervolgens de verzamelde gegevens bekijken nadat de werkstroom is voltooid. Deze mogelijkheid biedt u een vereenvoudigde ervaring om inzicht te krijgen in uw werkstromen en meer controle over het filteren van gebeurtenissen in de gegevensbron, zodat u de opslagkosten kunt verlagen. Deze verbeteringen richten zich op realtime prestatiegegevens die inzicht bieden in de status en het gedrag van uw systeem. Dit kan u helpen bij het proactief detecteren en oplossen van problemen eerder.
Wanneer uw logische app is verbonden met Application Insights, kunt u logboekgegevens en andere metrische gegevens in bijna realtime bekijken via Azure Portal met behulp van Live Metrics Stream. U hebt ook visualisaties om binnenkomende aanvragen, uitgaande aanvragen en algemene status en toegang tot een tabel met diagnostische gegevens op traceringsniveau weer te geven.
In de volgende lijst worden enkele voorbeelden van telemetrieverbeteringen beschreven:
- Trigger- en actie-gebeurtenissen bevatten nu het trigger- of actietype en de API-naam, waarmee u query's kunt uitvoeren op specifieke connectorgebruik.
- Maak het gemakkelijker om gebeurtenissen voor opnieuw proberen bij te houden.
- Uitzonderingen vastleggen voor trigger- en actiefouten.
- Meer controle over het filteren van niet-werkstroomgerelateerde gebeurtenissen.
- Geavanceerd filteren waarmee u meer controle hebt over de wijze waarop gebeurtenissen worden verzonden, inclusief triggers en acties.
Deze handleiding laat zien hoe u verbeterde telemetrieverzameling inschakelt in Application Insights voor uw standaard logische app.
Vereisten
Een Azure-account en -abonnement. Als u nog geen abonnement hebt, meld u dan aan voor een gratis Azure-account.
Een Application Insights-exemplaar . U maakt deze resource vooraf wanneer u uw standaard logische app maakt of na de implementatie van logische apps.
Een standaard logische app en werkstroom, in Azure Portal of in Visual Studio Code.
Uw logische app-resource of -project moet gebruikmaken van de Azure Functions v4-runtime, die standaard is ingeschakeld.
Uw logische app moet Application Insights hebben ingeschakeld voor logboekregistratie en tracering van diagnostische gegevens. U kunt dit doen wanneer u uw logische app maakt of na de implementatie.
Verbeterde telemetrie inSchakelen in Application Insights
Open uw resource voor de logische standaard-app in Azure Portal.
Selecteer Geavanceerde hulpprogramma's in het menu van de logische app onder Ontwikkelhulpprogramma's. Selecteer Go op de pagina Geavanceerde hulpprogramma's, waarmee de Kudu-hulpprogramma's worden geopend.
Selecteer CMD in het consolemenu Foutopsporing op de Kudu-pagina. Blader in de mapmaptabel naar het volgende bestand en selecteer Bewerken: site/wwwroot/host.json
Voeg in het bestand host.json de volgende JSON-code toe:
{ "version": "2.0", "extensionBundle": { "id": "Microsoft.Azure.Functions.ExtensionBundle.Workflows", "version": "[1, 2.00]" }, "extensions": { "workflow": { "Settings": { "Runtime.ApplicationInsightTelemetryVersion": "v2" } } } }
Deze configuratie maakt het standaardniveau van uitgebreidheid mogelijk. Zie Filteren toepassen op de bron voor andere opties.
Application Insights openen
Nadat de werkstroom is voltooid en een paar minuten is verstreken, opent u de Application Insights-resource.
Selecteer Application Insights in azure Portal in het menu van uw logische app, onder Instellingen.
Selecteer Logboeken in het resourcemenu van Application Insights onder Bewaking.
Verbeterde logboeken weergeven in Application Insights
In de volgende secties worden de tabellen in Application Insights beschreven, waar u de verbeterde telemetrie kunt vinden en bekijken die zijn gegenereerd op basis van de uitvoering van uw werkstroom.
Tabelnaam | Beschrijving |
---|---|
Aanvragen | Details over de volgende gebeurtenissen in werkstroomuitvoeringen: - Trigger- en actiegebeurtenissen - Nieuwe pogingen - Connectorgebruik |
Traceringen | Details over de volgende gebeurtenissen in werkstroomuitvoeringen: - Begin- en eindgebeurtenissen van de werkstroom - Batchgebeurtenissen voor verzenden en batchgebeurtenissen ontvangen |
Uitzonderingen | Details over uitzonderingsevenementen in werkstroomuitvoeringen |
Afhankelijkheden | Details over afhankelijkheidsevenementen in werkstroomuitvoeringen |
Tabel Aanvragen
De tabel Aanvragen bevat velden die gegevens bijhouden over de volgende gebeurtenissen in de standaardwerkstroom:
- Trigger- en actie-gebeurtenissen
- Nieuwe pogingen
- Connectorgebruik
Als u wilt zien hoe gegevens in deze velden terechtkomen, hebt u de volgende standaardwerkstroom die begint met de aanvraagtrigger, gevolgd door de actie Opstellen en de actie Antwoord.
De instellingen van de trigger hebben een parameter met de naam Aangepaste tracerings-id. De parameterwaarde wordt ingesteld op een expressie waarmee de eigenschapswaarde orderId wordt opgehaald uit de hoofdtekst van een binnenkomend bericht:
Vervolgens bevat de actie-instellingen Opstellen van de werkstroom een toegevoegde bijgehouden eigenschap met de naam solutionName. De eigenschapswaarde wordt ingesteld op de naam van de resource van de logische app.
De actie Opstellen wordt gevolgd door een antwoordactie die een antwoord retourneert naar de beller.
De volgende lijst bevat voorbeeldquery's die u kunt maken en uitvoeren op basis van de tabel Aanvragen:
Opdracht | Stappen |
---|---|
Alle trigger- en actie-gebeurtenissen weergeven | Query uitvoeren voor alle trigger- en actie-gebeurtenissen |
Alleen trigger-gebeurtenissen of actie-gebeurtenissen weergeven | Query uitvoeren op alleen trigger- of actie-gebeurtenissen |
Trigger- of actie-gebeurtenissen weergeven met een specifiek bewerkingstype | Querytrigger- of actie-gebeurtenissen per bewerkingstype |
Trigger- en actie-gebeurtenissen weergeven met een specifieke werkstroomuitvoerings-id | Querytrigger- en actie-gebeurtenissen op werkstroomuitvoerings-id |
Trigger- en actie-gebeurtenissen weergeven met een specifieke clienttracerings-id | Querytrigger- en actie-gebeurtenissen op basis van clienttracerings-id |
Trigger- en actie-gebeurtenissen weergeven met een specifieke oplossingsnaam | Querytrigger- en actie-gebeurtenissen op oplossingsnaam |
Trigger- en actie-gebeurtenissen weergeven met nieuwe pogingen | Querytrigger- en actie-gebeurtenissen voor nieuwe pogingen |
Trigger- en actie-gebeurtenissen weergeven met connectorgebruik | Query uitvoeren op trigger- en actie-gebeurtenissen voor connectorgebruik |
Query uitvoeren voor alle trigger- en actie-gebeurtenissen
Nadat de werkstroom is uitgevoerd en een paar minuten is verstreken, kunt u een query maken voor de tabel Aanvragen om alle bewerkingsgebeurtenissen weer te geven.
Selecteer indien nodig het tijdsbereik dat u wilt controleren. Deze waarde is standaard de afgelopen 24 uur.
Als u alle trigger- en actie-gebeurtenissen wilt weergeven, maakt en voert u de volgende query uit:
requests | sort by timestamp desc | take 10
In het volgende voorbeeld ziet u het tabblad Resultaten met de genoteerde kolommen en gegevens in elke rij:
Kolom Beschrijving Voorbeeld name Naam van werkstroombewerking In dit voorbeeld worden in de rijen handmatig (aanvraagtrigger), opstellen en antwoorden weergegeven. succes Uitvoeringsstatus van bewerking In dit voorbeeld worden in alle rijen Waar weergegeven voor een geslaagde uitvoering. Als er een fout is opgetreden, is de waarde Onwaar. resultCode Uitvoeringsstatuscode van bewerking In dit voorbeeld worden in alle rijen Geslaagd (200) weergegeven. duur Uitvoeringsduur van bewerking Varieert voor elke bewerking. Als u de details van een specifieke bewerking wilt weergeven, vouwt u de rij voor de trigger of actie uit:
In het volgende voorbeeld ziet u de uitgebreide details voor de aanvraagtrigger :
Eigenschappen Beschrijving Voorbeeld Categorie Bewerkingscategorie, die altijd Workflow.Operations.Triggers of Workflow.Operations.Actions is, op basis van de bewerking Workflow.Operations.Triggers. clientTrackingId Aangepaste tracerings-id, indien opgegeven 123456 runId Id voor het exemplaar van de werkstroomuitvoering 08585358375819913417237801890CU00 triggerName Triggernaam Handmatig workflowId Id voor de werkstroom waarop de trigger is uitgevoerd c7711d107e6647179c2e15fe2c2720ce workflowName Naam voor de werkstroom waarop de trigger is uitgevoerd Werkstroom aanvraag-antwoord operation_Name Naam voor de bewerking waarmee de trigger is uitgevoerd. In dit geval is deze naam hetzelfde als de naam van de werkstroom. Werkstroom aanvraag-antwoord operation_Id Id voor het onderdeel of de werkstroom die zojuist is uitgevoerd. Deze id is hetzelfde als de runId-waarde voor het exemplaar van de werkstroomuitvoering. Als er uitzonderingen of afhankelijkheden bestaan, overstijgt deze waarde tabellen, zodat u deze triggerrecord kunt koppelen aan deze uitzonderingen of afhankelijkheden. 08585358375819913417237801890CU00 operation_ParentId Koppelbare id voor de werkstroom die de trigger aangeroepen heeft f95138daff8ab129 In het volgende voorbeeld ziet u de uitgebreide details voor de actie Opstellen :
Eigenschappen Beschrijving Voorbeeld Categorie Bewerkingscategorie, die altijd Workflow.Operations.Triggers of Workflow.Operations.Actions is, op basis van de bewerking Workflow.Operations.Actions clientTrackingId Aangepaste tracerings-id, indien opgegeven 123456 actionName Actienaam Compose runId Id voor het exemplaar van de werkstroomuitvoering 08585358375819913417237801890CU00 workflowId Id voor de werkstroom die de actie heeft uitgevoerd c7711d107e6647179c2e15fe2c2720ce workflowName Naam voor de werkstroom die de actie heeft uitgevoerd Werkstroom aanvraag-antwoord solutionName Naam van bijgehouden eigenschap, indien opgegeven LA-AppInsights operation_Name Naam voor de bewerking die de actie heeft uitgevoerd. In dit geval is deze naam hetzelfde als de naam van de werkstroom. Werkstroom aanvraag-antwoord operation_Id Id voor het onderdeel of de werkstroom die zojuist is uitgevoerd. Deze id is hetzelfde als de runId-waarde voor het exemplaar van de werkstroomuitvoering. Als er uitzonderingen of afhankelijkheden bestaan, overstijgt deze waarde tabellen, zodat u deze actierecord kunt koppelen aan deze uitzonderingen of afhankelijkheden. 08585358375819913417237801890CU00 operation_ParentId Koppelings-id voor de werkstroom die de actie aangeroepen heeft f95138daff8ab129
Query uitvoeren op alleen trigger- of actie-gebeurtenissen
U kunt een query maken op basis van de tabel Aanvragen om een subset van bewerkingsgebeurtenissen weer te geven, op basis van de bewerkingscategorie en de naam van de werkstroom.
Selecteer indien nodig het tijdsbereik dat u wilt controleren. Deze waarde is standaard de afgelopen 24 uur.
Als u alle trigger gebeurtenissen in een specifieke werkstroom wilt weergeven, maakt en voert u een query uit met de eigenschapswaarde customDimensions.Category ingesteld op Workflow.Operations.Triggers en operation_Name ingesteld op de naam van de werkstroom, bijvoorbeeld:
requests | where customDimensions.Category == "Workflow.Operations.Triggers" and operation_Name == "Request-Response-Workflow"
Als u alle actie-gebeurtenissen in een specifieke werkstroom wilt weergeven, maakt u een query met de eigenschapswaarde customDimensions.Category ingesteld op Workflow.Operations.Actions en operation_Name ingesteld op de naam van de werkstroom, bijvoorbeeld:
requests | where customDimensions.Category == "Workflow.Operations.Actions" and operation_Name == "Request-Response-Workflow"
Querytrigger- of actie-gebeurtenissen per bewerkingstype
U kunt een query maken op basis van de tabel Aanvragen om gebeurtenissen voor een specifieke trigger of actietype weer te geven.
Selecteer indien nodig het tijdsbereik dat u wilt controleren. Deze waarde is standaard de afgelopen 24 uur.
Als u alle bewerkingsevenementen met een specifiek triggertype wilt weergeven, maakt en voert u een query uit met de waarde customDimensions.triggerType ingesteld op het gewenste triggertype, bijvoorbeeld:
requests | where customDimensions.triggerType == "Request"
Als u alle bewerkingsevenementen met een specifiek actietype wilt weergeven, maakt en voert u een query uit met de waarde customDimensions.actionType ingesteld op het gewenste actietype, bijvoorbeeld:
requests | where customDimensions.actionType == "Compose"
Querytrigger- en actie-gebeurtenissen op werkstroomuitvoerings-id
U kunt een query maken op basis van de tabel Aanvragen om een subset van bewerkingsgebeurtenissen weer te geven op basis van de uitvoerings-id van de werkstroom. Deze uitvoerings-id van de werkstroom is dezelfde id die u kunt vinden in de uitvoeringsgeschiedenis van de werkstroom.
Selecteer indien nodig het tijdsbereik dat u wilt controleren. Deze waarde is standaard de afgelopen 24 uur.
Als u alle bewerkingsevenementen met een specifieke werkstroomuitvoerings-id wilt weergeven, maakt en voert u een query uit met de waarde operation_Id ingesteld op de uitvoerings-id van de werkstroom, bijvoorbeeld:
requests | where operation_Id == "08585287554177334956853859655CU00"
Querytrigger- en actie-gebeurtenissen op basis van clienttracerings-id
U kunt een query maken op basis van de tabel Aanvragen om een subset van bewerkingsgebeurtenissen weer te geven, op basis van de naam van de werkstroom en de clienttracerings-id.
Selecteer indien nodig het tijdsbereik dat u wilt controleren. Deze waarde is standaard de afgelopen 24 uur.
Als u alle bewerkingsevenementen met een specifieke clienttracking-id in een specifieke werkstroom wilt weergeven, maakt en voert u een query uit met de waarde operation_Name ingesteld op de naam van de werkstroom en de eigenschapswaarde clientTrackingId ingesteld op de gewenste waarde, bijvoorbeeld:
requests | where operation_Name == "Request-Response-Workflow" | extend correlation = todynamic(tostring(customDimensions.correlation)) | where correlation.clientTrackingId == "123456"
Querytrigger- en actie-gebeurtenissen op oplossingsnaam
U kunt een query maken op basis van de tabel Aanvragen om een subset van bewerkingsgebeurtenissen weer te geven, op basis van de naam van de werkstroom en de naam van de oplossing.
Selecteer indien nodig het tijdsbereik dat u wilt controleren. Deze waarde is standaard de afgelopen 24 uur.
Als u alle bewerkingsevenementen met een specifieke clienttracerings-id in een specifieke werkstroom wilt weergeven, maakt en voert u een query uit met de operation_Name waarde die is ingesteld op de naam van de werkstroom en de waarde van de solutionName-eigenschap ingesteld op de gewenste waarde, bijvoorbeeld:
requests | where operation_Name == "Request-Response-Workflow" and customDimensions has "trackedProperties" | extend trackedProperties = todynamic(tostring(customDimensions.trackedProperties)) | where trackedProperties.solutionName == "LA-AppInsights"
Nieuwe pogingen
Als u wilt zien hoe deze gegevens in de tabel Aanvragen terechtkomen, gebruikt de volgende standaardwerkstroom een HTTP-actie die een URL aanroept, die niet wordt omgezet. De werkstroom heeft ook een beleid voor opnieuw proberen dat is ingesteld op een vast interval dat drie keer per 60 seconden opnieuw wordt geprobeerd.
Querytrigger- en actie-gebeurtenissen voor nieuwe pogingen
U kunt een query maken op basis van de tabel Aanvragen om een subset van bewerkingsgebeurtenissen weer te geven met nieuwe pogingen.
Selecteer indien nodig het tijdsbereik dat u wilt controleren. Deze waarde is standaard de afgelopen 24 uur.
Als u alleen trigger- en actie-gebeurtenissen wilt weergeven met de geschiedenis van opnieuw proberen, maakt en voert u de volgende query uit in Application Insights:
requests | extend retryHistory = tostring(tostring(customDimensions.retryHistory)) | where isnotempty(retryHistory)
Als u de nieuwe pogingen voor een specifieke bewerking met een beleid voor opnieuw proberen wilt weergeven, vouwt u de rij voor die bewerking uit.
In het volgende voorbeeld ziet u de uitgebreide details voor de HTTP-actie :
De eigenschapswaarden geslaagd en resultCode geven aan dat de HTTP-actie is mislukt. Samen met de eigenschappen die worden beschreven in de tabel Aanvragen voor alle trigger- en actie-gebeurtenissen, bevat de record de volgende informatie, waaronder drie nieuwe pogingen:
Eigenschappen Beschrijving Voorbeeld retryHistory Geschiedenisdetails voor een of meer nieuwe pogingen code Fouttype voor een specifieke poging om het opnieuw te proberen fout Details over de specifieke fout die is opgetreden
Querytrigger- en actie-gebeurtenissen voor connectorgebruik
U kunt een query maken op basis van de tabel Aanvragen om een subset van bewerkingsgebeurtenissen weer te geven op basis van specifiek connectorgebruik.
Selecteer indien nodig het tijdsbereik dat u wilt controleren. Deze waarde is standaard de afgelopen 24 uur.
Als u alle trigger-gebeurtenissen wilt weergeven met behulp van een specifiek connectortype, maakt en voert u een query uit met de volgende eigenschappen en waarden:
requests | where customDimensions.Category == "Workflow.Operations.Triggers" and customDimensions.triggerType =="ApiConnectionWebhook" and customDimensions.apiName =="commondataservice"
Eigenschappen Voorbeeldwaarde customDimensions.Category Workflow.Operations.Triggers customDimensions.triggerType Het bewerkingstype, bijvoorbeeld ApiConnectionWebhook customDimensions.apiName De API-naam van de connector in JSON-indeling, bijvoorbeeld commondataservice voor de Microsoft Dataverse-connector Als u alle actie-gebeurtenissen met specifiek connectorgebruik wilt weergeven, maakt en voert u een query uit met de waarde customDimensions.Category ingesteld op Workflow.Operations.Actions, de waarde customDimensions.triggerType ingesteld op het bewerkingstype en de customDimensions.apiName ingesteld op de API-naam van de connector in JSON-indeling, bijvoorbeeld:
Eigenschappen Voorbeeldwaarde customDimensions.Category Workflow.Operations.Actions customDimensions.triggerType Het bewerkingstype, bijvoorbeeld ApiConnection customDimensions.apiName De API-naam van de connector in JSON-indeling, bijvoorbeeld Office365 voor de Microsoft Office 365 Outlook-connector requests | where customDimensions.Category == "Workflow.Operations.Actions" and customDimensions.actionType == "ApiConnection" and customDimensions.apiName == "office365"
Voor zowel triggers als acties maakt Application Insights onderscheid tussen de typen verbindingen die bestaan. Mogelijk ziet u verschillende waarden in de velden actionType en triggerType op basis van of de verbinding ApiConnectionWebhook, het ingebouwde basistype zoals Aanvraag of het ingebouwde serviceprovidertype van de serviceprovider heeft.
Tabel Traceringen
De tabel Traces bevat velden die gegevens bijhouden over de volgende gebeurtenissen in de standaardwerkstroom:
Begin- en eindevenementen van de werkstroom
Deze informatie wordt weergegeven als twee afzonderlijke gebeurtenissen vanwege het potentieel voor langdurige werkstroomuitvoeringen.
Batchgebeurtenissen voor verzenden en ontvangen
Zie Ingebouwde Batch-bewerkingen gebruiken in Azure Logic Apps (Standard) voor meer informatie
De volgende lijst bevat voorbeeldquery's die u kunt maken en uitvoeren op de tabel Traces:
Opdracht | Stappen |
---|---|
Begin- en eindevenementen in alle werkstroomuitvoeringen weergeven | Query uitvoeren op begin- en eindevenementen in alle werkstroomuitvoeringen |
Begin- en eindevenementen in een specifieke werkstroomuitvoering weergeven | Query uitvoeren op begin- en eindevenementen in een werkstroomuitvoering |
Batchgebeurtenissen voor verzenden en ontvangen weergeven in alle werkstroomuitvoeringen | Query uitvoeren voor batchgebeurtenissen voor verzenden en batchgebeurtenissen in alle werkstroomuitvoeringen |
Query uitvoeren op begin- en eindevenementen in alle werkstroomuitvoeringen
U kunt een query maken op basis van de tabel Traces om alle begin- en eindgebeurtenissen voor alle werkstroomuitvoeringen weer te geven.
Selecteer indien nodig het tijdsbereik dat u wilt controleren. Deze waarde is standaard de afgelopen 24 uur.
Maak en voer een query uit met de waarde customDimensions.Category ingesteld op Workflow.Operations.Runs, bijvoorbeeld:
traces | where customDimensions.Category == "Workflow.Operations.Runs"
Query uitvoeren op begin- en eindevenementen in een specifieke werkstroomuitvoering
U kunt een query maken op basis van de tabel Traces om de begin- en eindgebeurtenissen voor een specifieke werkstroomuitvoering weer te geven.
Selecteer indien nodig het tijdsbereik dat u wilt controleren. Deze waarde is standaard de afgelopen 24 uur.
Maak en voer een query uit met de waarde customDimensions.Category ingesteld op Workflow.Operations.Runs en de waarde operation_Id ingesteld op de id van de werkstroomuitvoering, bijvoorbeeld:
traces | where customDimensions.Category == "Workflow.Operations.Runs" | and operation_Id == "08585287571846573488078100997CU00"
Query uitvoeren voor batchgebeurtenissen voor verzenden en batchgebeurtenissen in alle werkstroomuitvoeringen
U kunt een query maken op basis van de tabel Traces om de gebeurtenissen voor het verzenden en ontvangen van batchgebeurtenissen in alle werkstroomuitvoeringen weer te geven.
Selecteer indien nodig het tijdsbereik dat u wilt controleren. Deze waarde is standaard de afgelopen 24 uur.
Maak en voer een query uit met de waarde customDimensions.Category ingesteld op Workflow.Operations.Runs en de waarde operation_Id ingesteld op de id van de werkstroomuitvoering, bijvoorbeeld:
traces | where customDimensions.Category == "Workflow.Operations.Batch"
Tabel Uitzonderingen
De tabel Uitzonderingen bevat velden die gegevens bijhouden over uitzonderingsevenementen in Standaardwerkstroomuitvoeringen. Als u wilt zien hoe gegevens in deze velden terechtkomen, hebt u de volgende standaardwerkstroom die begint met de aanvraagtrigger, gevolgd door de actie Opstellen en de actie Antwoord. De actie Opstellen maakt gebruik van een expressie die een waarde deelt door nul, waarmee een uitzondering wordt gegenereerd:
Query uitvoeren op uitzonderingsevenementen in alle werkstroomuitvoeringen
U kunt een query maken op basis van de tabel Uitzonderingen om de uitzonderingsgebeurtenissen in alle werkstroomuitvoeringen weer te geven.
Selecteer indien nodig het tijdsbereik dat u wilt controleren. Deze waarde is standaard de afgelopen 24 uur.
Als u alle uitzonderingsevenementen wilt weergeven, maakt en voert u de volgende query uit in Application Insights:
exceptions | sort by timestamp desc
Als u de details van een specifieke uitzondering wilt weergeven, vouwt u de rij voor die uitzondering uit:
In het volgende voorbeeld ziet u de uitgebreide uitzondering voor de actie Opstellen en details over de uitzondering:
Eigenschappen Beschrijving problemId Uitzonderingstype of een korte beschrijving van de uitzondering die is opgetreden outerMessage Gedetailleerde beschrijving van de uitzondering bijzonderheden Uitgebreide en meest volledige informatie over de uitzondering clientTrackingId Clienttracerings-id, indien opgegeven workflowId Id voor de werkstroom die de uitzondering heeft ervaren workflowName Naam voor de werkstroom waarop de uitzondering is opgetreden runId Id voor het exemplaar van de werkstroomuitvoering actionName Naam voor de actie die is mislukt met de uitzondering operation_Name Naam voor de werkstroom waarop de uitzondering is opgetreden operation_Id Id voor het onderdeel of de werkstroom die zojuist is uitgevoerd. Deze id is hetzelfde als de runId-waarde voor het exemplaar van de werkstroomuitvoering. Deze waarde overschrijdt tabellen, zodat u deze uitzonderingsrecord kunt koppelen aan het exemplaar van de werkstroomuitvoering. operation_ParentId Id voor de werkstroom die de actie heeft aangeroepen, die u kunt koppelen aan de id van de actie in de tabel Aanvragen Als u de uitzonderingen voor een specifieke werkstroom wilt weergeven, maakt en voert u de volgende query uit:
exceptions | where operation_Name contains "Request-Response-Workflow-Exception"
Tabel met afhankelijkheden
De tabel Afhankelijkheden bevat velden die gegevens bijhouden over afhankelijkheidsevenementen in standaardwerkstroomuitvoeringen. Deze gebeurtenissen worden verzonden wanneer een resource een andere resource aanroept en wanneer beide resources Application Insights gebruiken. Voorbeelden voor Azure Logic Apps zijn een service die een andere service aanroept via HTTP, een database of bestandssysteem. Application Insights meet de duur van afhankelijkheidsaanroepen en of deze aanroepen slagen of mislukken, samen met informatie, zoals de naam van de afhankelijkheid. U kunt specifieke afhankelijkheidsaanroepen onderzoeken en deze correleren met aanvragen en uitzonderingen.
Als u wilt zien hoe gegevens in deze velden terechtkomen, hebt u het volgende voorbeeld van de bovenliggende standaardwerkstroom die een onderliggende werkstroom via HTTP aanroept met behulp van de HTTP-actie :
Query uitvoeren op afhankelijkheidsevenementen in een specifieke werkstroom
U kunt een query maken op basis van de tabel Afhankelijkheden om de afhankelijkheidsgebeurtenissen in een specifieke werkstroomuitvoering weer te geven.
Selecteer indien nodig het tijdsbereik dat u wilt controleren. Deze waarde is standaard de afgelopen 24 uur.
Als u afhankelijkheden tussen de bovenliggende werkstroom en de onderliggende werkstroom wilt weergeven, maakt en voert u de volgende query uit:
union requests, dependencies | where operation_Id contains "<runId>"
Deze query maakt gebruik van de samenvoegoperator voor het retourneren van records uit de tabel Aanvragen en afhankelijkheden. De query gebruikt ook de eigenschapswaarde operation_Id om de koppeling tussen records op te geven door de gewenste runId-waarde voor de werkstroom op te geven, bijvoorbeeld:
union requests, dependencies | where operation_Id contains "08585355753671110236506928546CU00"
In het volgende voorbeeld ziet u een afhankelijkheids gebeurtenis voor de opgegeven werkstroom, inclusief records voor de bewerkings gebeurtenissen in de bovenliggende werkstroom uit de tabel Aanvragen en vervolgens een afhankelijkheidsrecord uit de tabel Afhankelijkheden:
Voor de gebeurtenisrecords van de bewerking toont de kolom itemType de recordtypen als aanvraag. Voor de afhankelijkheidsrecord geeft de kolom itemType het recordtype aan als afhankelijkheid.
Eigenschappen Beschrijving runId Id voor het exemplaar van de werkstroomuitvoering actionName Naam voor de actie waar de afhankelijkheids gebeurtenis plaatsvindt operation_Id Id voor de opgegeven werkstroom. Deze id is hetzelfde als de runId-waarde voor het exemplaar van de werkstroomuitvoering. Deze waarde overschrijdt tabellen, zodat u deze afhankelijkheidsrecord kunt koppelen aan het exemplaar van de werkstroomuitvoering. operation_ParentId Id voor de actie waarbij de afhankelijkheids gebeurtenis plaatsvindt, waarmee ook de gebeurtenisrecord van de bewerking en de gebeurtenisrecord van de afhankelijkheid aan elkaar worden gekoppeld
Met uw query kunt u ook de afhankelijkheidsaanroep van een bovenliggende werkstroom visualiseren naar een onderliggende werkstroom wanneer u de toepassingstoewijzing in Application Insights gebruikt. De operation_Id waarde in uw query biedt de koppeling die deze visualisatie mogelijk maakt.
Als u het toepassingsoverzicht wilt openen, selecteert u in het resourcemenu van Application Insights onder Onderzoeken de optie Toepassingstoewijzing.
Gebeurtenissen filteren
In Application Insights kunt u gebeurtenissen op de volgende manieren filteren:
Query's maken en uitvoeren zoals beschreven in eerdere secties.
Filter op de bron door criteria op te geven die moeten worden geƫvalueerd voordat gebeurtenissen worden verzonden.
Door filters toe te passen op de bron, kunt u de hoeveelheid benodigde opslag verminderen en daardoor de operationele kosten.
Filteren toepassen op de bron
In de tabel Requests of Traces heeft een record een knooppunt met de naam customDimensions, dat een categorieeigenschap bevat. In de tabel Aanvragen ziet de aanvraagrecord voor een batchtriggergebeurtenis er bijvoorbeeld ongeveer als volgt uit:
In de tabel Aanvragen kunnen de volgende eigenschapswaarden voor categorieƫn u helpen bij het onderscheiden en koppelen van verschillende uitgebreidheidsniveaus:
Categoriewaarde | Beschrijving |
---|---|
Workflow.Operations.Triggers | Identificeert een aanvraagrecord voor een trigger-gebeurtenis |
Workflow.Operations.Actions | Identificeert een aanvraagrecord voor een actie-gebeurtenis |
Voor elke categoriewaarde kunt u onafhankelijk het uitbreidingsniveau instellen in het host.json-bestand voor uw logische app-resource of -project. Als u bijvoorbeeld alleen de records wilt retourneren voor trigger- of actie-gebeurtenissen met fouten, kunt u in het host.json bestand het volgende JSON-object voor logboekregistratie toevoegen, dat een logLevel JSON-object bevat met de gewenste uitgebreidheidsniveaus:
{
"logging": {
"logLevel": {
"Workflow.Operations.Actions": "Error",
"Workflow.Operations.Triggers": "Error"
}
}
}
In de volgende voorbeelden ziet u in de volgende voorbeelden hoe u het uitgebreidheidsniveau voor gebeurtenissen kunt wijzigen:
{
"logging": {
"logLevel": {
"Workflow.Host": "Warning",
"Workflow.Jobs": "Warning",
"Workflow.Runtime": "Warning"
}
}
}
In het volgende voorbeeld wordt het standaard uitgebreidheidsniveau van het logboek ingesteld op Waarschuwing, maar blijft het uitgebreidheidsniveau bij Informatie voor trigger-, actie- en werkstroomuitvoeringsevenementen:
{
"logging": {
"logLevel": {
"default": "Warning",
"Workflow.Operations.Actions": "Information",
"Workflow.Operations.Runs": "Information",
"Workflow.Operations.Triggers": "Information"
}
}
}
Als u geen logLevel-waarden opgeeft, is het standaard uitgebreidheidsniveau Informatie. Zie Logboekniveaus configureren voor meer informatie.
Fouten met opslagafhankelijkheid verwijderen
Als u fouten met opslagafhankelijkheid wilt filteren, zoals fouten met 404 niet gevonden en 412 mislukte voorwaarden, stelt u het logboekniveau Host.Workflow in op Geen, bijvoorbeeld:
{
"logging": {
"logLevel": {
"Workflow.Host": "Warning",
"Workflow.Jobs": "Warning",
"Workflow.Runtime": "Warning",
"Host.Workflow": "None"
}
}
}
Open uw resource voor de logische standaard-app in Azure Portal.
Selecteer Geavanceerde hulpprogramma's in het menu van de logische app onder Ontwikkelhulpprogramma's. Selecteer Go op de pagina Geavanceerde hulpprogramma's, waarmee de Kudu-hulpprogramma's worden geopend.
Selecteer CMD in het consolemenu Foutopsporing op de Kudu-pagina. Blader in de mapmaptabel naar het volgende bestand en selecteer Bewerken: site/wwwroot/host.json
Voeg in het bestand host.json het JSON-logboekregistratieobject toe met de logLevel-waarden ingesteld op de gewenste uitgebreidheidsniveaus:
{ "logging": { "logLevel": { "Workflow.Operations.Actions": "<verbosity-level>", "Workflow.Operations.Triggers": "<verbosity-level>" } } }
Metrische werkstroomgegevens weergeven in Application Insights
Met de telemetrieverbeteringen in Application Insights krijgt u ook werkstroominzichten in het dashboard met metrische gegevens.
Open het dashboard Metrische gegevens en stel basisfilters in
Open uw Application Insights-resource in Azure Portal als deze nog niet is geopend.
Selecteer in het resourcemenu van Application Insights onder Bewaking de optie Metrische gegevens.
Selecteer uw Application Insights-exemplaar in de lijst Bereik .
Selecteer workflow.operations in de lijst met metrische naamruimten.
Selecteer in de lijst met metrische gegevens een metrische waarde, bijvoorbeeld Uitvoeringen voltooid.
Selecteer in de lijst Aggregatie een type, bijvoorbeeld Count of Avg.
Wanneer u klaar bent, wordt in het dashboard met metrische gegevens een grafiek weergegeven met de voltooide werkstroomuitvoeringen.
Filteren op basis van een specifieke werkstroom
Wanneer u multidimensionale metrische gegevens inschakelt in het dashboard Metrische gegevens, kunt u zich richten op een subset van de algemene gebeurtenissen die zijn vastgelegd in Application Insights en gebeurtenissen filteren op basis van een specifieke werkstroom.
Schakel in uw Application Insights-resource multidimensionale metrische gegevens in.
Open in Application Insights het dashboard met metrische gegevens.
Selecteer Filter toevoegen op de grafiekwerkbalk.
Selecteer Werkstroom in de lijst Eigenschappen.
Selecteer in de lijst Operator het gelijkteken (=).
Selecteer in de lijst Waarden de gewenste werkstromen.
Logboekgegevens en metrische gegevens weergeven
Als verbeterde telemetrie van Application Insights is ingeschakeld, kunt u bijna realtime logboekgegevens en andere metrische gegevens bekijken vanuit uw Application Insights-exemplaar in Azure Portal. U kunt deze visualisatie gebruiken om binnenkomende aanvragen, uitgaande aanvragen en de algehele status uit te zetten. U krijgt ook een tabel voor diagnostische gegevens op traceerniveau.
Open uw Application Insights-resource in Azure Portal als deze nog niet is geopend.
Selecteer in het resourcemenu van Application Insights onder Onderzoeken de optie Live-metrische gegevens.
Op de pagina Metrische livegegevens worden de logboekgegevens en andere metrische gegevens weergegeven, bijvoorbeeld:
Zie Live metrische gegevens: bewaken en diagnosticeren met latentie van 1 seconde voor meer informatie.
Notitie
Aangezien werkstromen voor logische apps standaard zijn gebaseerd op Azure Functions, ondersteunt Live Metrics deze werkstromen voor logische apps.
Uitvoer van foutopsporing streamen en weergeven vanuit toepassingslogboekbestanden
Als verbeterde telemetrie van Application Insights is ingeschakeld, kunt u uitgebreide foutopsporingsgegevens streamen in Azure Portal voor de logboekbestanden van uw toepassing. Deze informatie is gelijk aan de uitvoer die wordt gegenereerd door foutopsporing in uw werkstroom in uw lokale Visual Studio Code-omgeving.
Open uw resource voor de logische standaard-app in Azure Portal.
Selecteer in het resourcemenu van uw logische app onder Bewaking de optie Logboekstream.
De pagina Logboekstream maakt verbinding met uw Application Insights-exemplaar en toont de uitvoer van foutopsporing. De volgende uitvoer bevat bijvoorbeeld aanvraag- en antwoordoproepen onder andere: