Votrag bei der Java User Group Darmstadt
https://www.jug-da.de/2019/02/Monitoring-Tracing/
Abstract:
In verteilten Microservices ist es mitunter schwer, einen Überblick zu erhalten. Wie viel Zeit benötigen die einzelnen Teilschritte eines Aufrufs? An welcher Stelle tritt ein Fehler auf? Warum dauern einzelne Aufrufe länger als andere?
In unseren Projekten nutzen wir Tracing als Ergänzung zu Logging und Metriken, um diese Fragen zu beantworten. Tracing hilft, die Laufzeit von Teilschritten im Zusammenhang zu ermitteln, wiederholte Aufrufe zu identifizieren und unsinnige Reihenfolgen aufzudecken. Auch asynchrone Verarbeitung kann visualisiert werden. Insbesondere bei komplexen Zusammenhängen zwischen einzelnen Applikationen unterstützt es bei der Fehlersuche und spart damit Zeit.
Der Vortrag zeigt, wie mit OpenTracing und Jaeger vorhandene Spring-Boot-Anwendungen um Tracing erweitert werden. Für HTTP/REST, Datenbanken und Queues existieren bereits vorgefertigte Standard-Instrumentierungen. An anderen Stellen können Aufrufe von Hand instrumentiert werden. Der Vortrag gibt zusätzlich einen Überblick, welche Infrastruktur-Komponenten notwendig sind.