Inleiding
In deze les kijken we naar het bewaken van Java-toepassingsconcepten.
Waarom bewaking?
In elke omgeving is het belangrijk om de manier bij te houden waarop mensen uw systeem gebruiken, het resourcegebruik traceren en over het algemeen de status en prestaties van uw systeem bewaken. U kunt deze informatie gebruiken als een diagnostisch hulpmiddel om problemen op te sporen en op te lossen, en ook om te helpen potentiƫle problemen op te sporen en te voorkomen dat deze zich voordoen.
Bewakingsformulieren
Bewaking heeft over het algemeen vier vormen:
Logboeken: Permanente, onveranderbare records van gebeurtenissen die zijn opgeslagen in een consistente tabelindeling, indien niet in een volledige database. Een gebeurtenis kan duiden op een van de vele voorwaarden, waaronder:
- Een wijziging in de status van een bewaakt onderdeel (bijvoorbeeld van 'bezet' naar 'beschikbaar').
- Het voltooien van een taak of reeks instructies.
- Een mijlpaal in de voortgang van gegevens via een netwerk of de beschikbaarheid van eenheden in een netwerk.
- Een fout, die in deze context een gedrag is dat het systeem of de toepassing niet is geprogrammeerd om af te handelen of te beperken.
Metrische gegevens: waarden die de relatieve status, stabiliteit en beschikbaarheid van een service of toepassing of de infrastructuur vertegenwoordigen die als host fungeert.
Traceringen : Records van de uitvoeringspaden voor programma's en services, met name in een zeer gedistribueerd systeem, waarmee de volgorde wordt aangegeven van instructies die mogelijk rechtstreeks of indirect een gebeurtenis hebben geactiveerd.
Waarschuwingen: waarschuwingen melden u proactief wanneer er problemen zijn gevonden met uw infrastructuur of toepassing. Hiermee kunt u problemen identificeren en oplossen voordat de gebruikers van uw systeem ze opmerken.
Azure Monitoring Platforms
Azure biedt Azure Monitor, dat een set services bevat die ontwikkelaars en beheerders kunnen gebruiken om telemetriegegevens te verzamelen, analyseren en erop te reageren over de prestaties van toepassingen en de infrastructuur waarop ze worden gehost.
Log Analytics is een hulpprogramma in Azure Portal om logboekquery's te bewerken en uit te voeren op basis van gegevens die door Azure Monitor-logboeken worden verzameld en om hun resultaten interactief te analyseren. U kunt Log Analytics-query's gebruiken om records op te halen die overeenkomen met bepaalde criteria, trends te identificeren, patronen te analyseren en verschillende inzichten te geven in uw gegevens.
Application Insights, een functie van Azure Monitor, is een uitbreidbare APM-service (Application Performance Management) voor ontwikkelaars en DevOps-professionals. Het detecteert automatisch prestatieafwijkingen en bevat analysehulpprogramma's om u te helpen bij het diagnosticeren van problemen en om te begrijpen wat gebruikers daadwerkelijk met uw app doen.
Azure Monitor-waarschuwingen: bewakingsgegevens kunnen ook worden verzonden naar andere locaties ter ondersteuning van bepaalde scenario's en sommige resources kunnen naar andere locaties schrijven voordat ze kunnen worden verzameld in logboeken of metrische gegevens.
- Met waarschuwingen van het type Metrische gegevens kunt u een waarschuwing activeren wanneer een opgegeven drempel wordt overschreden. Een metrische waarschuwing kan u bijvoorbeeld waarschuwen wanneer het CPU-gebruik de 95 procent overschrijdt.
- Logboekwaarschuwingen zijn gebaseerd op gegevens die naar logboekbestanden zijn geschreven. Een logboekwaarschuwing kan u bijvoorbeeld waarschuwen wanneer een webserver veel 404 of 500 antwoorden heeft geretourneerd.
U kunt Azure-toepassingen, -services en -infrastructuur bewaken met behulp van bewakingssystemen van uw keuze, zoals Elastic Stack, Splunk, New Relic, Dynatrace en App Dynamics. In deze module richten we ons echter op Azure Monitor, Log Analytics en Application Insights.