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 biedt ingebouwde integratie met Application Insights voor het bewaken van de uitvoering van functies. 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. 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.

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.

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 ook meestal metrische platformgegevens routeren naar Azure Monitor-logboeken/Log Analytics, zodat u er query's op kunt uitvoeren met andere logboekgegevens. Zie de diagnostische instelling voor metrische gegevens voor meer informatie. Zie Diagnostische instellingen maken in Azure Monitor voor informatie over het configureren van diagnostische instellingen voor een service.

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

In de volgende voorbeelden worden metrische gegevens van Azure Monitor gebruikt om de kosten van het uitvoeren van uw functie-app in een verbruiksabonnement te schatten. Zie De kosten van het verbruiksabonnement schatten voor meer informatie over het schatten van de kosten van het verbruiksabonnement.

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

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

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

  3. Kies in Metrisch het aantal uitvoeringen van functies en som voor aggregatie. Hiermee wordt de som van de uitvoeringsaantallen tijdens de gekozen periode aan de grafiek toegevoegd.

    Een metrische functie-app definiëren die moet worden toegevoegd aan de grafiek

  4. Selecteer Metrische gegevens toevoegen en herhaal stap 2-4 om functie-uitvoeringseenheden toe te voegen aan de grafiek.

De resulterende grafiek bevat de totalen voor beide metrische uitvoeringsgegevens in het gekozen tijdsbereik, in dit geval twee uur.

Grafiek van het aantal uitvoeringen van functies en uitvoeringseenheden

Omdat het aantal uitvoeringseenheden zoveel groter is dan het aantal uitvoeringen, worden in de grafiek alleen uitvoeringseenheden weergegeven.

In deze grafiek ziet u een totaal van 1,11 miljard Function Execution Units verbruikt in een periode van twee uur, gemeten in MB-milliseconden. Als u wilt converteren naar GB-seconden, deelt u deze door 1024000. In dit voorbeeld verbruikt 1110000000 / 1024000 = 1083.98 de functie-app GB-seconden. U kunt deze waarde nemen en vermenigvuldigen met de huidige prijs van de uitvoeringstijd op de pagina Functions-prijzen, die u de kosten van deze twee uur geeft, ervan uitgaande dat u al gratis toekenningen van uitvoeringstijd hebt gebruikt.

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. Dit zijn alleen aanbevolen waarschuwingen. 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
Metric Gemiddelde verbindingen Wanneer het aantal verbindingen een ingestelde waarde overschrijdt
Metric HTTP 404 Wanneer HTTP 404-antwoorden een ingestelde waarde overschrijden
Metric 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: