Úvod
V této lekci se podíváme na monitorování konceptů aplikací v Javě.
Proč monitorování?
V jakémkoli prostředí je důležité sledovat způsob, jakým uživatelé používají váš systém, sledovat využití prostředků a obecně monitorovat stav a výkon systému. Tyto informace můžete použít jako diagnostickou pomůcku k rozpoznání a opravě problémů a také k tomu, abyste si všimli potenciálních problémů a zabránili jejich výskytu.
Formuláře monitorování
Monitorování obecně trvá čtyři formy:
Protokoly: Trvalé neměnné záznamy událostí uložených v konzistentním tabulkovém formátu, pokud ne v úplné databázi. Událost může značit jednu z mnoha podmínek, mezi které patří:
- Změna stavu monitorované komponenty (například z zaneprázdněného na "k dispozici").
- Dokončení úkolu nebo pořadí instrukcí
- Milník v progresi dat prostřednictvím sítě nebo dostupnost jednotek v síti.
- Chyba, která v tomto kontextu představuje chování, které systém nebo aplikace nenaprogramovaly tak, aby zpracovávaly nebo zmírňovaly.
Metriky : Hodnoty, které představují relativní stav, stabilitu a dostupnost služby nebo aplikace nebo infrastruktury, která ji hostuje.
Trasování : Záznamy cest provádění programů a služeb, zejména v vysoce distribuovaném systému, označující posloupnost instrukcí, které se mohly aktivovat (přímo nebo nepřímo) události.
Výstrahy: Výstrahy vás aktivně upozorňují na problémy s vaší infrastrukturou nebo aplikací. Umožňují vám identifikovat a řešit problémy předtím, než si je uživatelé systému všimnou.
Platformy monitorování Azure
Azure poskytuje Azure Monitor, který zahrnuje sadu služeb, které můžou vývojáři a správci použít ke shromažďování, analýze a provádění telemetrie týkající se výkonu aplikací a infrastruktury, která je hostuje.
Log Analytics je nástroj na webu Azure Portal, který umožňuje upravovat a spouštět dotazy na protokoly z dat, která protokoly služby Azure Monitor shromažďuje, a interaktivně analyzovat výsledky. Pomocí dotazů Log Analytics můžete načíst záznamy odpovídající konkrétním kritériím, identifikovat trendy, analyzovat vzory a poskytovat různé přehledy o vašich datech.
Application Insights, která je funkcí služby Azure Monitor, je rozšiřitelná služba APM (Application Performance Management) pro vývojáře a odborníky v DevOps. Automaticky rozpozná anomálie výkonu a obsahuje analytické nástroje, které vám pomůžou diagnostikovat problémy a pochopit, co uživatelé ve skutečnosti dělají s vaší aplikací.
Upozornění služby Azure Monitor: Data monitorování se můžou posílat také do jiných umístění, aby podporovala určité scénáře, a některé prostředky se můžou zapisovat do jiných umístění, než je bude možné shromažďovat do protokolů nebo metrik.
- Upozornění na metriky aktivují upozornění při překročení zadané prahové hodnoty. Upozornění na metriku vás například může upozornit, když je využití procesoru vyšší než 95 procent.
- Upozornění protokolu jsou založená na datech zapsaných do souborů protokolu. Upozornění protokolu vás může například upozornit, když webový server vrátil mnoho odpovědí 404 nebo 500.
Pomocí libovolného monitorovacího systému, jako je Elastic Stack, Splunk, New Relic, Dynatrace a App Dynamics, můžete monitorovat aplikace, služby a infrastrukturu Azure. V tomto modulu se ale zaměříme na Azure Monitor, Log Analytics a Application Insights.