Delen via


Azure Functions controleren

In dit artikel wordt het volgende beschreven:

  • De typen bewakingsgegevens die u voor deze service kunt verzamelen.
  • Manieren om die gegevens te analyseren.

Notitie

Als u al bekend bent met deze service en/of Azure Monitor en alleen wilt weten hoe u bewakingsgegevens analyseert, raadpleegt u de sectie Analyseren aan het einde van dit artikel.

Wanneer u kritieke toepassingen en bedrijfsprocessen hebt die afhankelijk zijn van Azure-resources, moet u waarschuwingen voor uw systeem bewaken en ontvangen. De Azure Monitor-service verzamelt en aggregeert metrische gegevens en logboeken van elk onderdeel van uw systeem. Azure Monitor biedt een overzicht van beschikbaarheid, prestaties en tolerantie, en geeft u een overzicht van problemen. U kunt de Azure-portal, PowerShell, Azure CLI, REST API of clientbibliotheken gebruiken om bewakingsgegevens in te stellen en weer te geven.

Inzichten

Sommige services in Azure hebben een ingebouwd bewakingsdashboard in Azure Portal dat een beginpunt biedt voor het bewaken van uw service. Deze dashboards worden inzichten genoemd en u kunt ze vinden in de Insights Hub van Azure Monitor in Azure Portal.

Analyses van toepassingen

Azure Functions heeft ingebouwde integratie met Application Insights om de uitvoering van functies te bewaken. Zie de volgende artikelen voor gedetailleerde informatie over het integreren, configureren en gebruiken van Application Insights voor het bewaken van Azure Functions:

Resourcetypen

Azure maakt gebruik van het concept van resourcetypen en id's om alles in een abonnement te identificeren. Resourcetypen maken ook deel uit van de resource-id's voor elke resource die wordt uitgevoerd in Azure. Eén resourcetype voor een virtuele machine is Microsoft.Compute/virtualMachinesbijvoorbeeld . Zie Resourceproviders voor een lijst met services en de bijbehorende resourcetypen.

Azure Monitor organiseert op dezelfde manier kernbewakingsgegevens in metrische gegevens en logboeken op basis van resourcetypen, ook wel naamruimten genoemd. Er zijn verschillende metrische gegevens en logboeken beschikbaar voor verschillende resourcetypen. Uw service is mogelijk gekoppeld aan meer dan één resourcetype.

Zie de naslaginformatie over bewakingsgegevens van Azure Functions voor meer informatie over de resourcetypen voor Azure Functions.

Gegevensopslag

Voor Azure Monitor:

  • Metrische gegevens worden opgeslagen in de metrische gegevensdatabase van Azure Monitor.
  • Logboekgegevens worden opgeslagen in het logboekarchief van Azure Monitor. Log Analytics is een hulpprogramma in Azure Portal waarmee een query kan worden uitgevoerd op dit archief.
  • Het Azure-activiteitenlogboek is een afzonderlijk archief met een eigen interface in Azure Portal.

U kunt eventueel metrische gegevens en activiteitenlogboekgegevens routeren naar het logboekarchief van Azure Monitor. Vervolgens kunt u Log Analytics gebruiken om een query uit te voeren op de gegevens en deze te correleren met andere logboekgegevens.

Veel services kunnen diagnostische instellingen gebruiken om metrische gegevens en logboekgegevens te verzenden naar andere opslaglocaties buiten Azure Monitor. Voorbeelden hiervan zijn Azure Storage, gehoste partnersystemen en niet-Azure-partnersystemen, met behulp van Event Hubs.

Zie het Azure Monitor-gegevensplatform voor gedetailleerde informatie over hoe Azure Monitor gegevens opslaat.

Metrische gegevens van het Azure Monitor-platform

Azure Monitor biedt metrische platformgegevens voor de meeste services. Deze metrische gegevens zijn:

  • Afzonderlijk gedefinieerd voor elke naamruimte.
  • Opgeslagen in de metrische gegevensdatabase van Azure Monitor.
  • Lichtgewicht en in staat om bijna realtime waarschuwingen te ondersteunen.
  • Wordt gebruikt om de prestaties van een resource in de loop van de tijd bij te houden.

Verzameling: Azure Monitor verzamelt automatisch metrische platformgegevens. Er is geen configuratie vereist.

Routering: U kunt sommige metrische platformgegevens ook routeren naar Azure Monitor-logboeken/Log Analytics, zodat u er query's op kunt uitvoeren met andere logboekgegevens. Controleer de DS-exportinstelling voor elke metriek om te zien of u een diagnostische instelling kunt gebruiken om de metrische gegevens te routeren naar Azure Monitor-logboeken/Log Analytics.

Zie Ondersteunde metrische gegevens in Azure Monitor voor een lijst met alle metrische gegevens die kunnen worden verzameld voor alle resources in Azure Monitor.

Zie de naslaginformatie over bewakingsgegevens van Azure Functions voor een lijst met beschikbare metrische gegevens voor Azure Functions.

Notitie

Metrische gegevens van App Service (Microsoft.Web/sites) zijn niet beschikbaar wanneer uw functie-app wordt uitgevoerd op Linux in een verbruiksabonnement.

Azure Monitor-resourcelogboeken

Resourcelogboeken bieden inzicht in bewerkingen die zijn uitgevoerd door een Azure-resource. Logboeken worden automatisch gegenereerd, maar u moet ze routeren naar Azure Monitor-logboeken om ze op te slaan of er query's op uit te voeren. Logboeken zijn ingedeeld in categorieën. Een bepaalde naamruimte kan meerdere resourcelogboekcategorieën hebben.

Verzameling: Resourcelogboeken worden pas verzameld en opgeslagen als u een diagnostische instelling maakt en de logboeken doorsturen naar een of meer locaties. Wanneer u een diagnostische instelling maakt, geeft u op welke categorieën logboeken moeten worden verzameld. Er zijn meerdere manieren om diagnostische instellingen te maken en te onderhouden, waaronder Azure Portal, programmatisch en hoewel Azure Policy.

Routering: de voorgestelde standaardinstelling is het routeren van resourcelogboeken naar Azure Monitor-logboeken, zodat u er query's op kunt uitvoeren met andere logboekgegevens. Andere locaties, zoals Azure Storage, Azure Event Hubs en bepaalde Microsoft-bewakingspartners, zijn ook beschikbaar. Zie Azure-resourcelogboeken en resourcelogboekbestemmingen voor meer informatie.

Zie Diagnostische instellingen in Azure Monitor voor gedetailleerde informatie over het verzamelen, opslaan en routeren van resourcelogboeken.

Zie Ondersteunde resourcelogboeken in Azure Monitor voor een lijst met alle beschikbare resourcelogboekcategorieën in Azure Monitor.

Alle resourcelogboeken in Azure Monitor hebben dezelfde koptekstvelden, gevolgd door servicespecifieke velden. Het algemene schema wordt beschreven in het schema voor resourcelogboeken van Azure Monitor.

Azure Functions kan worden geïntegreerd met Azure Monitor-logboeken om functies te bewaken. Zie Diagnostische instellingen maken in Azure Monitor voor gedetailleerde instructies voor het instellen van diagnostische instellingen voor het configureren en routeren van resourcelogboeken.

Schermopname van het toevoegen van een diagnostische instelling voor Azure Functions.

Zie de referentie voor bewakingsgegevens van Azure Functions voor de beschikbare resourcelogboekcategorieën, de bijbehorende Log Analytics-tabellen en de logboekschema's voor Azure Functions.

Azure-activiteitenlogboek

Het activiteitenlogboek bevat gebeurtenissen op abonnementsniveau waarmee bewerkingen voor elke Azure-resource worden bijgehouden, zoals van buiten die resource wordt gezien; Bijvoorbeeld het maken van een nieuwe resource of het starten van een virtuele machine.

Verzameling: gebeurtenissen in activiteitenlogboeken worden automatisch gegenereerd en verzameld in een afzonderlijk archief voor weergave in Azure Portal.

Routering: U kunt activiteitenlogboekgegevens verzenden naar Azure Monitor-logboeken, zodat u deze naast andere logboekgegevens kunt analyseren. Andere locaties, zoals Azure Storage, Azure Event Hubs en bepaalde Microsoft-bewakingspartners, zijn ook beschikbaar. Zie Overzicht van het Azure-activiteitenlogboek voor meer informatie over het routeren van het activiteitenlogboek.

Andere logboeken

Azure Functions biedt ook de mogelijkheid om meer dan Azure Monitor-resourcelogboeken te verzamelen. Als u een bijna realtime stroom van toepassingslogboekbestanden wilt weergeven die zijn gegenereerd door uw functie die wordt uitgevoerd in Azure, kunt u verbinding maken met Application Insights en Live Metrics Stream gebruiken. U kunt ook het ingebouwde logboekstreaming van het App Service-platform gebruiken om een stroom toepassingslogboekbestanden weer te geven. Zie Logboeken voor streaming-uitvoering inschakelen in Azure Functions voor meer informatie.

Bewakingsgegevens analyseren

Er zijn veel hulpprogramma's voor het analyseren van bewakingsgegevens.

Azure Monitor-hulpprogramma's

Azure Monitor ondersteunt de volgende basishulpprogramma's:

Hulpprogramma's waarmee complexere visualisaties mogelijk zijn, zijn onder andere:

  • Dashboards waarmee u verschillende soorten gegevens kunt combineren in één deelvenster in Azure Portal.
  • Werkmappen, aanpasbare rapporten die u kunt maken in Azure Portal. Werkmappen kunnen tekst, metrische gegevens en logboekquery's bevatten.
  • Grafana, een open platformhulpprogramma dat excelleert in operationele dashboards. U kunt Grafana gebruiken om dashboards te maken die gegevens uit meerdere andere bronnen dan Azure Monitor bevatten.
  • Power BI, een business analytics-service die interactieve visualisaties biedt in verschillende gegevensbronnen. U kunt Power BI zo configureren dat logboekgegevens automatisch vanuit Azure Monitor worden geïmporteerd om te profiteren van deze visualisaties.

Azure Monitor-exporthulpprogramma's

U kunt gegevens uit Azure Monitor ophalen in andere hulpprogramma's met behulp van de volgende methoden:

Als u aan de slag wilt gaan met de REST API voor Azure Monitor, raadpleegt u de stapsgewijze instructies voor Azure Monitoring REST API.

Metrische gegevens analyseren voor Azure Functions

Functions biedt deze twee dynamische schaalplannen die ondersteuning bieden voor serverloze hosting:

Biedt snelle horizontale schaalaanpassing, met flexibele rekenopties, integratie van virtuele netwerken en volledige ondersteuning voor verbindingen met behulp van Microsoft Entra ID-verificatie. In dit plan worden exemplaren dynamisch uitgeschaald op basis van geconfigureerde gelijktijdigheid per exemplaar, binnenkomende gebeurtenissen en workloads per functie voor optimale efficiëntie. Flex Consumption is het aanbevolen plan voor serverloze hosting. Zie Hosting van Azure Functions Flex Consumption-abonnement voor meer informatie.

De metrische gegevens op app-niveau die beschikbaar zijn voor uw app, zijn afhankelijk van het type verbruiksabonnement dat u gebruikt.

Deze metrische gegevens van Azure Monitor zijn gerelateerd aan facturering van flexverbruiksabonnementen:

Metrische gegevens Beschrijving Meterberekening
Aantal uitvoeringen van functie op aanvraag Totaal aantal uitvoeringen van functies in on-demand instanties. OnDemandFunctionExecutionCount houdt verband met de Totale uitvoeringen op aanvraag-meter.
Aantal always ready-functieuitvoeringen Het totale aantal uitvoeringen van functies in altijd gereede exemplaren. AlwaysReadyFunctionExecutionCount heeft betrekking op de meter Altijd Gereed Totale Uitvoeringen.
Uitvoeringsunits voor functies op aanvraag Totaal aantal MB-milliseconden van on-demand instanties tijdens het actief uitvoeren van functies. De OnDemandFunctionExecutionUnits / 1,024,000 is de On Demand-uitvoeringstijdmeter, aangegeven in GB-seconden.
Altijd beschikbaar uitvoeringseenheden Totaal aantal MB-milliseconden van altijd gereede exemplaren tijdens het actief uitvoeren van functies. AlwaysReadyFunctionExecutionUnits / 1,024,000 is de "Always Ready" uitvoeringstijdmeter, in GB-seconden.
Eenheden die altijd gereed zijn De totale MB-milliseconden van altijd gereede exemplaren die aan de app zijn toegewezen, ongeacht of functies actief worden uitgevoerd. AlwaysReadyUnits / 1,024,000 is de meter van de Always Ready Baseline, in GB-seconden.

Zie de naslaginformatie over bewakingsgegevens van Azure Functions voor meer informatie.

Als u de kosten van uw functies beter wilt begrijpen, gebruikt u Azure Monitor om kostengerelateerde metrische gegevens weer te geven die door uw functie-apps worden gegenereerd. U kunt metrische gegevens van Monitor weergeven met behulp van een van de volgende hulpprogramma's:

Gebruik Metrics Explorer van Azure Monitor om kostengerelateerde gegevens weer te geven voor uw Flex Consumption-functie-apps in een grafische indeling.

  1. Ga in Azure Portal naar uw functie-app.

  2. Schuif in het linkerdeelvenster omlaag naar Bewaking en selecteer Metrische gegevens.

  3. Selecteer in Metrisch het aantal uitvoeringen van de functie Op aanvraag en som voor aggregatie. Met deze selectie wordt de som van het aantal uitvoeringen tijdens de gekozen periode aan de grafiek toegevoegd.

  4. Selecteer Voeg metriek toe en voeg Uitvoeringseenheden voor functie op aanvraag toe, Uitvoeringsaantallen Altijd Gereed Functie, Uitvoeringseenheden Altijd Gereed Functie en Altijd Gereed Eenheden aan de grafiek.

De resulterende grafiek bevat de totalen voor alle metrische gegevens over de uitvoering van Flex Consumption in het gekozen tijdsbereik. In dit voorbeeld is dit een aangepast tijdsbereik.

Grafiek van het aantal uitvoeringen van functies op aanvraag en eenheden voor het uitvoeren van functies op aanvraag.

Omdat het aantal uitvoereenheden voor functie op aanvraag groter is dan het aantal uitvoeringen van functies op aanvraag en er geen altijd gereede exemplaren in de app zijn, worden in de grafiek alleen uitvoeringseenheden voor functie op aanvraag weergegeven.

In deze grafiek ziet u in totaal 3,54 miljard On Demand Function Execution Units verbruikt in een periode van 16 minuten, gemeten in MB-milliseconden. Als u wilt converteren naar GB-seconden, deelt u deze door 1.024.000. In dit voorbeeld verbruikt 3,540,000,000 / 1,024,000 = 3,457.03 de functie-app GB-seconden. U kunt deze waarde nemen en vermenigvuldigen met de huidige prijs van Uitvoeringstijd op aanvraag op de pagina Functions-prijzen, die u de kosten van deze 16 minuten geeft, ervan uitgaande dat u al gratis toekenningen van uitvoeringstijd hebt gebruikt. U kunt dezelfde berekening gebruiken met de metrische gegevens van de always ready-functieuitvoeringseenheden en de factureringsmeter voor Always Ready-uitvoeringstijd, evenals met de meetwaarde Always Ready Units en de factureringsmeter voor Always Ready Baseline om de kosten voor gb-seconden voor altijd gereede exemplaren te achterhalen.

Als u de kosten voor totale uitvoeringen op aanvraag wilt berekenen, neemt u de som van het aantal uitvoerbewerkingen op aanvraag voor dezelfde periode, converteert dit naar miljoenen en vermenigvuldigt het vervolgens met de prijs voor totale uitvoeringen op aanvraag op de pagina Functions-prijzen. In het bovenstaande voorbeeld worden bijvoorbeeld 2100 uitvoeringen geconverteerd naar 0.0021 miljoen uitvoeringen. U kunt dezelfde berekening gebruiken met de meetwaarde Always Ready Function Execution Count en de factureringsmeter Always Ready Total Executions om de kosten voor uitvoeringen te achterhalen die worden verwerkt door een altijd gereed exemplaar.

Voor meer informatie over het schatten van kosten voor deze abonnementen, zie Kosten voor verbruiksabonnementen schatten.

Logboeken analyseren voor Azure Functions

Azure Functions schrijft alle logboeken naar de FunctionAppLogs-tabel onder LogManagement in de Log Analytics-werkruimte waar u de gegevens verzendt. U kunt Kusto-query's gebruiken om een query uit te voeren op de gegevens.

Schermopname van het queryvenster voor Azure Functions in een Log Analytics-werkruimte.

Kusto-query's

U kunt bewakingsgegevens analyseren in de Azure Monitor-logboeken/Log Analytics-opslag met behulp van de Kusto-querytaal (KQL).

Belangrijk

Wanneer u Logboeken selecteert in het menu van de service in de portal, wordt Log Analytics geopend met het querybereik ingesteld op de huidige service. Dit bereik betekent dat logboekquery's alleen gegevens uit dat type resource bevatten. Als u een query wilt uitvoeren die gegevens uit andere Azure-services bevat, selecteert u Logboeken in het menu Azure Monitor . Zie Log-querybereik en tijdsbereik in Azure Monitor Log Analytics voor meer informatie.

Zie de interface voor Log Analytics-query's voor een lijst met algemene query's voor elke service.

Met de volgende voorbeeldquery's kunt u al uw app-logboeken voor functies bewaken:


FunctionAppLogs
| order by TimeGenerated desc

FunctionAppLogs
| project TimeGenerated, HostInstanceId, Message, _ResourceId
| order by TimeGenerated desc

Met de volgende voorbeeldquery kunt u de logboeken van een specifieke functie-app bewaken:

FunctionAppLogs
| where FunctionName == "<Function name>" 
| order by TimeGenerated desc

De volgende voorbeeldquery kan u helpen bij het bewaken van uitzonderingen op al uw app-logboeken voor functies:


FunctionAppLogs
| where ExceptionDetails != ""  
| order by TimeGenerated asc

Met de volgende voorbeeldquery kunt u uitzonderingen in de logboeken van een specifieke functie-app bewaken:

FunctionAppLogs
| where ExceptionDetails != ""  
| where FunctionName == "<Function name>" 
| order by TimeGenerated desc

Waarschuwingen

Azure Monitor-waarschuwingen melden u proactief wanneer er specifieke voorwaarden worden gevonden in uw bewakingsgegevens. Met waarschuwingen kunt u problemen in uw systeem identificeren en oplossen voordat uw klanten ze opmerken. Zie Azure Monitor-waarschuwingen voor meer informatie.

Er zijn veel bronnen van algemene waarschuwingen voor Azure-resources. Zie Voorbeeldquery's voor logboekwaarschuwingen voor voorbeelden van veelvoorkomende waarschuwingen voor Azure-resources. De site Azure Monitor Baseline Alerts (AMBA) biedt een semi-geautomatiseerde methode voor het implementeren van belangrijke metrische platformwaarschuwingen, dashboards en richtlijnen. De site is van toepassing op een voortdurend uitbreidende subset van Azure-services, inclusief alle services die deel uitmaken van de Azure Landing Zone (ALZ).

Het algemene waarschuwingsschema standaardiseert het verbruik van Azure Monitor-waarschuwingsmeldingen. Zie Algemeen waarschuwingsschema voor meer informatie.

Typen waarschuwingen

U kunt een waarschuwing ontvangen voor elke metrische gegevensbron of logboekgegevensbron in het Azure Monitor-gegevensplatform. Er zijn veel verschillende typen waarschuwingen, afhankelijk van de services die u bewaakt en de bewakingsgegevens die u verzamelt. Verschillende typen waarschuwingen hebben verschillende voordelen en nadelen. Zie Het juiste waarschuwingstype voor bewaking kiezen voor meer informatie.

In de volgende lijst worden de typen Azure Monitor-waarschuwingen beschreven die u kunt maken:

  • Metrische waarschuwingen evalueren met regelmatige tussenpozen resourcegegevens. Metrische gegevens kunnen metrische platformgegevens, aangepaste metrische gegevens, logboeken van Azure Monitor zijn geconverteerd naar metrische gegevens of metrische Gegevens van Application Insights. Metrische waarschuwingen kunnen ook meerdere voorwaarden en dynamische drempelwaarden toepassen.
  • Met logboekwaarschuwingen kunnen gebruikers een Log Analytics-query gebruiken om resourcelogboeken met een vooraf gedefinieerde frequentie te evalueren.
  • Waarschuwingen voor activiteitenlogboeken worden geactiveerd wanneer een nieuwe gebeurtenis van het activiteitenlogboek plaatsvindt die overeenkomt met gedefinieerde voorwaarden. Resource Health-waarschuwingen en Service Health-waarschuwingen zijn waarschuwingen voor activiteitenlogboeken die rapporteren over uw service en resourcestatus.

Sommige Azure-services ondersteunen ook waarschuwingen voor slimme detectie, Prometheus-waarschuwingen of aanbevolen waarschuwingsregels.

Voor sommige services kunt u op schaal bewaken door dezelfde waarschuwingsregel voor metrische gegevens toe te passen op meerdere resources van hetzelfde type dat in dezelfde Azure-regio aanwezig is. Afzonderlijke meldingen worden verzonden voor elke bewaakte resource. Zie Meerdere resources bewaken met één waarschuwingsregel voor ondersteunde Azure-services en -clouds.

Notitie

Als u een toepassing maakt of uitvoert die op uw service wordt uitgevoerd, biedt Azure Monitor Application Insights mogelijk meer typen waarschuwingen.

Waarschuwingsregels voor Azure Functions

De volgende tabel bevat algemene en aanbevolen waarschuwingsregels voor Azure Functions. Deze waarschuwingen zijn slechts aanbevelingen. U kunt waarschuwingen instellen voor elke vermelding van metrische gegevens, logboekvermeldingen of activiteitenlogboeken die worden vermeld in de verwijzing naar bewakingsgegevens voor Azure Functions.

Waarschuwingstype Voorwaarde Beschrijving
Metrische gegevens Gemiddelde verbindingen Wanneer het aantal verbindingen een ingestelde waarde overschrijdt
Metrische gegevens HTTP 404 Wanneer HTTP 404-antwoorden een ingestelde waarde overschrijden
Metrische gegevens HTTP-serverfouten Wanneer HTTP 5xx-fouten een ingestelde waarde overschrijden
Activiteitenlogboek Functie-app maken of bijwerken Wanneer de app wordt gemaakt of bijgewerkt
Activiteitenlogboek De functie-app verwijderen Wanneer de app wordt verwijderd
Activiteitenlogboek Functie-app opnieuw starten Wanneer de app opnieuw wordt gestart
Activiteitenlogboek Functie-app stoppen Wanneer de app is gestopt

Advisor-aanbevelingen

Voor sommige services, als er kritieke omstandigheden of aanstaande wijzigingen optreden tijdens resourcebewerkingen, wordt een waarschuwing weergegeven op de pagina Serviceoverzicht in de portal. Meer informatie en aanbevolen oplossingen voor de waarschuwing vindt u in Advisor-aanbevelingen onder Bewaking in het linkermenu. Tijdens normale bewerkingen worden er geen aanbevelingen van advisor weergegeven.

Zie het overzicht van Azure Advisor voor meer informatie over Azure Advisor.

Zie de volgende artikelen voor meer informatie over het bewaken van Azure Functions: