Treffer: Integrierte Observability: Code-Coverage und Distributed Tracing für .NET- Microservices
Weitere Informationen
In modernen Microservice-Architekturen kommunizieren mehrere Services über APIs und Message Broker, was das Auffinden von Performance-Engpässen und Fehlerursachen erschwert. In dieser Arbeit wird ein Coverage-Collector für .NET-Anwendungen entwickelt, der Daten zur Quellcode-Coverage automatisiert erhebt, mit verteiltem Tracing nach dem OpenTelemetry Standard verknüpft und in Grafana visualisiert. Häufig frequentierte Ausführungspfade werden anhand einer definierten Coverage-Metrik identifiziert und ihre Abdeckung durch End-to-End-Tests mittels OpenTelemetry Span-Tags abgebildet. Weiters werden Benchmarks durchgeführt, um den Einfluss des Coverage-Collectors auf die Performance von .NET-Anwendungen zu messen. Die Lösung ist in in bestehende Observability-Toolchains integrierbar und bietet eine Ergänzung zu den Funktionalitäten, welche aktuelle Advanced Performance Monitoring (APM)-Tools anbieten. Dies bietet einen genaueren Einblick in das Laufzeitverhalten und die Testabdeckung von .NET-Anwendungen. ; In modern microservice architectures, multiple services communicate via APIs and message brokers, which makes identifying performance bottlenecks and root causes of errors more difficult. This thesis develops a coverage collector for .NET applications that automatically gathers source-code coverage data, correlates it with distributed tracing according to the OpenTelemetry standard, and visualizes it in Grafana. Frequently executed code paths are identified using a defined coverage metric, and their end-to-end test coverage is assessed through targeted OpenTelemetry span tags. The impact of the coverage collector on .NET applications was measured by performing benchmarks. The solution can be integrated into existing observability toolchains and complements the capabilities of current Advanced Performance Monitoring (APM) tools. It offers more precise insights into the runtime behavior and test coverage of .NET applications. ; by: Samuel Fiedorowicz ; Masterarbeit Fachhochschule Technikum Wien 2025