Quickstart: Azure Spring Apps-apps bewaken met logboeken, metrische gegevens en tracering

Notitie

Azure Spring Apps is de nieuwe naam voor de Azure Spring Cloud-service. Hoewel de service een nieuwe naam heeft, ziet u de oude naam op sommige plaatsen terwijl we werken aan het bijwerken van assets, zoals schermopnamen, video's en diagrammen.

Dit artikel is van toepassing op: ✔️ Basic/Standard ❌ Enterprise

Met de ingebouwde bewakingsmogelijkheid in Azure Spring Apps kunt u complexe problemen opsporen en bewaken. Azure Spring Apps integreert gedistribueerde tracering van Steeltoe met Application Insights van Azure. Deze integratie biedt krachtige logboeken, metrische gegevens en functies voor gedistribueerde tracering via Azure Portal.

In de volgende procedures wordt uitgelegd hoe u logboekstreaming, logboekanalyse, metrische gegevens en gedistribueerde tracering gebruikt met de voorbeeld-app die u in de voorgaande quickstarts hebt geïmplementeerd.

Vereisten

Logboeken

Er zijn twee manieren om logboeken te bekijken in Azure Spring Apps: Logboekstreaming van realtime logboeken per app-exemplaar of Log Analytics voor samengevoegde logboeken met geavanceerde querymogelijkheden.

Logboekstreaming

U kunt logboekstreaming in de Azure CLI gebruiken met de volgende opdracht.

az spring app logs --name solar-system-weather --follow

U ziet uitvoer die vergelijkbaar is met het volgende voorbeeld:

=> ConnectionId:0HM2HOMHT82UK => RequestPath:/weatherforecast RequestId:0HM2HOMHT82UK:00000003, SpanId:|e8c1682e-46518cc0202c5fd9., TraceId:e8c1682e-46518cc0202c5fd9, ParentId: => Microsoft.Azure.SpringCloud.Sample.SolarSystemWeather.Controllers.WeatherForecastController.Get (Microsoft.Azure.SpringCloud.Sample.SolarSystemWeather)
Executing action method Microsoft.Azure.SpringCloud.Sample.SolarSystemWeather.Controllers.WeatherForecastController.Get (Microsoft.Azure.SpringCloud.Sample.SolarSystemWeather) - Validation state: Valid
←[40m←[32minfo←[39m←[22m←[49m: Microsoft.Azure.SpringCloud.Sample.SolarSystemWeather.Controllers.WeatherForecastController[0]

=> ConnectionId:0HM2HOMHT82UK => RequestPath:/weatherforecast RequestId:0HM2HOMHT82UK:00000003, SpanId:|e8c1682e-46518cc0202c5fd9., TraceId:e8c1682e-46518cc0202c5fd9, ParentId: => Microsoft.Azure.SpringCloud.Sample.SolarSystemWeather.Controllers.WeatherForecastController.Get (Microsoft.Azure.SpringCloud.Sample.SolarSystemWeather)
Retrieved weather data from 4 planets
←[40m←[32minfo←[39m←[22m←[49m: Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker[2]

=> ConnectionId:0HM2HOMHT82UK => RequestPath:/weatherforecast RequestId:0HM2HOMHT82UK:00000003, SpanId:|e8c1682e-46518cc0202c5fd9., TraceId:e8c1682e-46518cc0202c5fd9, ParentId: => Microsoft.Azure.SpringCloud.Sample.SolarSystemWeather.Controllers.WeatherForecastController.Get (Microsoft.Azure.SpringCloud.Sample.SolarSystemWeather)
Executing ObjectResult, writing value of type 'System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.String, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]][]'.
←[40m←[32minfo←[39m←[22m←[49m: Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker[2]

Tip

Gebruik az spring app logs -h om meer parameters en functionaliteit van logboekstreaming te verkennen.

Log Analytics

  1. Ga in de Azure-portal naar de pagina service | Overzicht en selecteer Logboeken in de sectie Bewaking. Selecteer Uitvoeren op een van de voorbeeldquery's voor Azure Spring Apps.

    Schermopname van Azure Portal met het deelvenster Logboeken met de pagina Query's geopend en Uitvoeren gemarkeerd.

  2. Bewerk de query om de WHERE-componenten te verwijderen die de weergave beperken tot waarschuwings- en foutenlogboeken.

  3. Selecteer Uitvoeren. U ziet logboeken. Zie Aan de slag met logboekquery's in Azure Monitor voor meer informatie.

    Schermopname van Azure Portal met het resultaat van de Logs Analytics-query.

  4. Zie Azure Monitor-logboekquery's voor meer informatie over de querytaal die wordt gebruikt in Log Analytics. Als u een query wilt uitvoeren op al uw Log Analytics-logboeken vanaf een gecentraliseerde client, bekijkt u Azure Data Explorer.

Metrische gegevens voor

  1. Ga in Azure Portal naar de pagina service | Overzicht en selecteer Metrische gegevens in de sectie Bewaking. Voeg uw eerste metriek toe door een van de .NET-metrische gegevens te selecteren onder Prestaties (.NET) of Aanvraag (.NET) in de vervolgkeuzelijst Metrische gegevens en Gem voor aggregatie om de tijdlijn voor die metrische waarde te bekijken.

    Schermopname van Azure Portal met de pagina Metrische gegevens met beschikbare filters.

  2. Selecteer Filter toevoegen op de werkbalk en selecteer App=solar-system-weather deze optie om het CPU-gebruik alleen te zien voor de app solar-system-weather .

    Schermopname van Azure Portal met de pagina Metrische gegevens, met de filtereigenschappen, operator en waarden gemarkeerd.

  3. Sluit het filter dat u in de vorige stap hebt gemaakt, selecteer Splitsen toepassen en selecteer App for Values om het CPU-gebruik door verschillende apps te bekijken.

    Schermopname van Azure Portal met de pagina Metrische gegevens met de opties voor het splitsen van waarden, Limieten en Sorteren gemarkeerd.

Gedistribueerde tracering

  1. Ga in Azure Portal naar de pagina service | Overzicht en selecteer Gedistribueerde tracering in de sectie Bewaking. Selecteer vervolgens aan de rechterkant het tabblad Toepassingsoverzicht weergeven.

    Schermopname van Azure Portal met de pagina Gedistribueerde tracering.

  2. U ziet nu de status van aanroepen tussen apps.

    Schermopname van Azure Portal met de pagina Toepassingsoverzicht.

  3. Selecteer de koppeling tussen solar-system-weather en planet-weather-provider voor meer informatie, zoals de langzaamste aanroepen via HTTP-methoden.

    Schermopname van Azure Portal met de details van de toepassingskaart.

  4. Selecteer ten slotte Prestaties onderzoeken om krachtigere, ingebouwde prestatieanalyse te verkennen.

    Schermopname van Azure Portal met de pagina Prestaties.

Met de ingebouwde bewakingsmogelijkheid in Azure Spring Apps kunt u complexe problemen opsporen en bewaken. Azure Spring Apps integreert Spring Cloud Sleuth met Application Insights van Azure. Deze integratie biedt krachtige logboeken, metrische gegevens en functies voor gedistribueerde tracering via Azure Portal. In de volgende procedures wordt uitgelegd hoe u logboekstreaming, Log Analytics, Metrische gegevens en gedistribueerde tracering gebruikt met geïmplementeerde PetClinische apps.

Vereisten

Logboeken

Er zijn twee manieren om logboeken te bekijken in Azure Spring Apps: Logboekstreaming van realtime logboeken per app-exemplaar of Log Analytics voor samengevoegde logboeken met geavanceerde querymogelijkheden.

Logboekstreaming

U kunt logboekstreaming in de Azure CLI gebruiken met de volgende opdracht.

az spring app logs \
    --resource-group <resource-group-name> \
    --service <service-instance-name> \
    --name api-gateway \
    --follow

U ziet logboeken zoals deze:

Schermopname van de streaming-uitvoer van azure CLI-logboeken.

Tip

Gebruik az spring app logs -h om meer parameters en de functionaliteiten van logboekstreaming te verkennen.

Zie Azure Monitor-logboekquery's voor meer informatie over de querytaal die wordt gebruikt in Log Analytics. Als u een query wilt uitvoeren op al uw Log Analytics-logboeken vanaf een gecentraliseerde client, bekijkt u Azure Data Explorer.

Log Analytics

  1. Ga naar de pagina service | Overzicht en selecteer Logboeken in de sectie Bewaking. Selecteer Uitvoeren op een van de voorbeeldquery's voor Azure Spring Apps.

    Schermopname van Azure Portal met de pagina Query's met Uitvoeren gemarkeerd.

  2. Vervolgens worden gefilterde logboeken weergegeven. Zie Aan de slag met logboekquery's in Azure Monitor voor meer informatie.

    Schermopname van Azure Portal met het queryresultaat van gefilterde logboeken.

Metrische gegevens voor

Navigeer naar de pagina Application Insights en navigeer vervolgens naar de pagina Metrische gegevens . U kunt metrische gegevens bekijken die zijn bijgedragen door Spring Boot-apps, Spring-modules en afhankelijkheden.

In de volgende grafiek ziet u gateway_requests (Spring Cloud Gateway), hikaricp_connections (JDBC Verbinding maken ions) en http_client_requests.

Schermopname van Azure Portal met de pagina Metrische gegevens van Application Insights met een grafiek van de geselecteerde waarden.

Spring Boot registreert verschillende kerngegevens, waaronder JVM, CPU, Tomcat en Logback. Met de automatische configuratie van Spring Boot kunt u de instrumentatie van aanvragen die worden verwerkt door Spring MVC. Alle drie de REST-controllers (OwnerResource, PetResourceen VisitResource) worden geïnstrueerd door de @Timed micrometeraantekening op klasseniveau.

Voor de customers-service toepassing zijn de volgende aangepaste metrische gegevens ingeschakeld:

  • @Timed: petclinic.owner
  • @Timed: petclinic.pet

Voor de visits-service toepassing zijn de volgende aangepaste metrische gegevens ingeschakeld:

  • @Timed: petclinic.visit

U kunt deze aangepaste metrische gegevens zien op de pagina Metrische gegevens :

Schermopname van Azure Portal met de pagina Metrische gegevens van Application Insights met aangepaste metrische gegevens.

U kunt de functie Beschikbaarheidstest in Application Insights gebruiken en de beschikbaarheid van toepassingen controleren:

Schermopname van Azure Portal met de application insights-beschikbaarheidspagina met de sectie Beschikbaarheidstest gemarkeerd.

Ga naar de pagina Live Metrics om live metrische gegevens met lage latenties (minder dan één seconde) te zien:

Schermopname van Azure Portal met de pagina Metrische gegevens van Application Insights met lage latenties.

Tracering

Open de Application Insights die door Azure Spring Apps is gemaakt en begin met het bewaken van Spring-toepassingen.

Ga naar de pagina Toepassingsoverzicht :

Schermopname van Azure Portal met de application mappagina van Application Insights met kaartonderdelen.

Ga naar de pagina Prestaties :

Schermopname van Azure Portal met de pagina Prestaties van Application Insights met bewerkingsgegevens.

Ga naar het tabblad Afhankelijkheden , waar u het prestatienummer voor afhankelijkheden kunt zien, met name SQL-aanroepen:

Schermopname van Azure Portal met de pagina Prestaties van Application Insights met de tabel Depencies gemarkeerd.

Selecteer een SQL-aanroep om de end-to-end-transactie in context weer te geven:

Schermopname van Azure Portal met de pagina end-to-end transactiedetails.

Ga naar de pagina Fouten en het tabblad Uitzonderingen , waar u een verzameling uitzonderingen kunt zien:

Schermopname van Azure Portal met de pagina Application Insights-fouten.

Selecteer een uitzondering om de end-to-end transactie en stacktrace in context te zien:

Schermopname van Azure Portal met de pagina end-to-end transactiedetails met uitzonderingsdetails en aanroepstack.

Resources opschonen

Als u van plan bent om verder te gaan met volgende snelstarts en zelfstudies, kunt u deze resources het beste intact laten. Als u de resourcegroep niet meer nodig hebt, verwijdert u deze. Hierdoor worden ook de resources in de resourcegroep verwijderd. Als u de resourcegroep wilt verwijderen met behulp van Azure CLI, gebruikt u de volgende opdrachten:

echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."

In een voorgaande quickstart hebt u ook de standaardnaam van de resourcegroep ingesteld. Als u niet van plan bent om door te gaan naar de volgende quickstart, wist u die standaardinstelling door de volgende CLI-opdracht uit te voeren:

az config set defaults.group=

Volgende stappen

Als u meer bewakingsmogelijkheden van Azure Spring Apps wilt verkennen, raadpleegt u: