Nachdem Sie nun eine Vorstellung davon haben, was verteiltes Tracing ist, wollen wir uns eingehend mit der Funktionsweise befassen. Im Gegensatz zu einer monolithischen Anwendung werden Microservice-Umgebungen auf verteilten Backends ausgeführt, was es schwieriger macht, den Weg einer vollständigen Anfrage zu verfolgen. Glücklicherweise kann die verteilte Ablaufverfolgung die Aktionen eines Benutzers bei jedem Schritt verfolgen und überwachen, wie sich dies auf Ihre Anwendung auswirkt, vom Front-End bis zum Back-End.
Verteiltes Tracing beginnt mit der Instrumentierung Ihrer Microservice-Architektur. Sie können Open-Source-Tools wie OpenTelemetry verwenden, um mit der Instrumentierung und der Telemetrieerfassung zu beginnen.
Als Nächstes müssen Entwickler Code in Ihre Dienste implementieren, um Trace-Daten zu verfolgen und eindeutige Kennungen für jede Transaktion zu vergeben. Der verschlüsselte Trace-Kontext wird über die gesamte Anwendungsumgebung von einem Server zum anderen übertragen. Die Identifikatoren, die sich mit dem Transaktionsverlauf verbunden haben, geben Einblick in Ihre Customer Experience.
Verteilte Tracing-Tools verfolgen jede Aktivität oder jedes Segment, nachdem sie durch ein Ereignis ausgelöst wurden, während sie einen Server durchlaufen. Wenn ein Span erfasst wird, geht er zum nächsten über und so weiter. Diese Spans beginnen in der Regel mit einem übergeordneten Span und wechseln zu untergeordneten Spans.
Ihr Tool ordnet diese Aktionen und sammelt relevante Metriken wie benutzerdefinierte Attribute, Zeitstempel und Metadaten. In der Regel hilft Ihnen ein Tool zur verteilten Rückverfolgung dabei, diese Daten in einem Flammendiagramm oder einer Wasserfallansicht zu visualisieren. Diese Diagramme helfen Ingenieuren bei der Interpretation, in welchen Teilen eines verteilten Systems Engpässe, Verlangsamungen oder Leistungsprobleme auftreten.
Schließlich müssen Sie Ihr verteiltes Tracing-Tool mit einer Observability-Plattform kombinieren, um eine durchgängige Überwachung Ihrer Anwendung zu erhalten. Durch die Integration einer Plattform wie Instana® können Sie Daten extrahieren und verarbeiten, sodass Sie die richtigen nächsten Schritte zur Behebung von Anwendungsfehlern einleiten können.