LinkMesh

Doku, Blog und Changelog durchsuchen

Die Dokumentation ist nur auf Englisch verfügbar.

ENDE
Ein Förderband trägt einen dichten Strom identischer Teile an einer scharf gezeichneten Stahlschiene vorbei
LinkMeshObservability Data Collection Management
OpenTelemetryObservability

Durchsatz, den Sie wirklich sehen können

Live-Datensätze pro Sekunde auf jeder Kante – gemessen, nicht geschätzt, und nicht pro Gigabyte bepreist.

linkmesh.io
Philippe BraxmeierPhilippe Braxmeier← Zurück zum Blog
5 Min. Lesezeit

Hier ist eine Frage, die über die eigene Observability-Einrichtung überraschend schwer zu beantworten ist: Wie viel Telemetrie fliesst gerade jetzt durch sie hindurch?

Für die meisten Teams lautet die ehrliche Antwort „Ich weiss es nächsten Monat, wenn die Rechnung kommt.“ Volumen ist etwas, das man im Nachhinein aus einer Rechnung oder einem Anbieter-Dashboard rekonstruiert, das nur zählt, was Ihnen berechnet wird – aufgenommene Bytes, nicht bewegte Datensätze. Bis Sie es sehen können, ist es bereits geschehen.

Das ist verkehrt herum. Der Ort, an dem Volumen tatsächlich fliesst, ist Ihre Pipeline – die Collectors, Routen und Ziele, die Datensätze von Ihren Services zu Ihrem Backend bewegen. Also ist das der Ort, an dem die Zahl stehen sollte.

Datensätze pro Sekunde, direkt auf der Leitung

LinkMesh setzt eine Live-Durchsatz-Anzeige auf die Topologie-Canvas. Schalten Sie den Throughput-Umschalter um, und jede Kante des Graphen trägt eine Rate – wie viele Datensätze pro Sekunde sie tatsächlich überqueren.

Die Topologie-Canvas mit aktivierten Durchsatz-Overlays: Collectors, die ein Grafana-Cloud-Ziel speisen, mit einer Live-Rate von 1,4 Datensätzen pro Sekunde an der Kante zum Ziel.

Diese 1.4 rec/s an der Kante zu Grafana Cloud sind keine Schätzung und keine gesampelte Vermutung – es ist das, was dieser Exporter sendet. Und es kostet Sie nichts extra, es zu sehen: Die Zahl stammt aus der eigenen Selbst-Telemetrie des Collectors, den otelcol_*-Metriken, die jeder OpenTelemetry Collector ohnehin schon über sich selbst emittiert. LinkMesh liest sie lediglich und zeichnet sie in den Graphen. Kein zusätzlicher Agent, keine Instrumentierung, keine separate Metrik-Pipeline, die man aufsetzen müsste.

Warum standardmässig Datensätze und nicht Bytes? Weil Datensätze die ehrliche Einheit sind. Der OpenTelemetry Collector zählt Items – Log-Datensätze, Metrik-Datenpunkte, Spans –, sodass Datensätze pro Sekunde das ist, was er akkurat berichten kann, ohne eine durchschnittliche Ereignisgrösse zu erraten. Es ist auch die Achse, die Ihnen nichts verkaufen will: LinkMesh ist nicht pro Gigabyte bepreist, hat also keinen Grund, Ihnen eine Byte-Zahl aufzudrängen.

Die ganze Flotte auf einen Blick

Die Canvas ist die Pro-Kante-Ansicht. Für die Ein-Zahl-Antwort – wie viel bewegt meine ganze Flotte? – summiert das Dashboard sie auf.

Das LinkMesh-Dashboard: Übersichtskarten für Collectors, Routen, Durchsatz (2,8 Datensätze pro Sekunde, keine Fehler) und Ziele, über einer Flotten-Status-Tabelle mit einer Pro-Collector-Durchsatzspalte.

2,8 rec/s, keine Fehler, über drei Collectors – und die Flotten-Tabelle schlüsselt es pro Collector auf, sodass ein Host, der plötzlich das Zehnfache seiner Nachbarn leistet (oder einer, der verstummt ist), sofort ins Auge fällt. Das ist die Zahl, auf die Sie blicken, um zu wissen, dass Ihre Pipeline lebt und ungefähr dort liegt, wo sie sein sollte, noch bevor Sie je einen Graphen öffnen.

Eine Kante, eine ganze Ebene

Wenn Collectors zu einer horizontal skalierten Ingest-Ebene gruppiert sind, rollt die Canvas die ganze Gruppe zu einem einzigen Knoten auf – und die Kante zu ihrem Ziel trägt den summierten Durchsatz über jedes Mitglied hinweg, nicht den Anteil eines einzelnen Collectors.

Die Topologie-Canvas zeigt eine „us-east-ingest“-Collector-Gruppe aus zwei gesunden Mitgliedern mit einer einzigen Kante zu Grafana Cloud, beschriftet mit 19 Datensätzen pro Sekunde – der aggregierten Rate über die gesamte Gruppe.

So liest sich eine Fünf-Knoten-Ingest-Ebene als eine Zahl, der Sie vertrauen können, und ein Mitglied, das abweicht, zeigt sich gegenüber der eigenen Baseline der Gruppe, statt sich in einem flottenweiten Durchschnitt zu verstecken.

Bytes – gemessen, wenn Sie sie wirklich brauchen

Manchmal brauchen Sie doch Bytes: Sie rechnen Egress ab oder dimensionieren einen nachgelagerten Vertrag. LinkMesh gibt Ihnen auch Bytes – aber gemessen, nicht geraten.

Schalten Sie für einen Collector detaillierte Telemetrie ein, und seine Netzwerk-Kanten-Overlays – die Kanten zu Zielen und zu anderen Collectors – erhalten gemessene Bytes pro Sekunde, entnommen den Transport-Grössen-Histogrammen des Collectors, statt eine Datensatzanzahl mit einer angenommenen Durchschnittsgrösse zu multiplizieren. Es ist pro Collector optional, weil detaillierte Telemetrie die Selbst-Metrik-Serien des Collectors vervielfacht, sodass Sie sie genau dort aktivieren, wo Byte-genaue Abrechnung zählt, und den Rest Datensätze zählen lassen. Bytes erscheinen nur dort, wo Daten die Leitung überqueren – knoteninterne Zählungen bleiben in Datensätzen, weil dort eine ehrliche Byte-Zahl nicht existiert.

Gemessen-statt-geschätzt ist der ganze Sinn. Eine Byte-Zahl, die Sie nicht auf eine echte Messung zurückführen können, ist nur eine hübschere Vermutung.

Lies die Pipeline, nicht nur die Summe

Eine einzelne Durchsatzzahl sagt Ihnen, dass sich die Pipeline bewegt. Die Overlays sagen Ihnen, ob sie die richtigen Dinge bewegt:

  • Routen zeigen offered vs. matched – wie viele Datensätze eine Route erreichten und wie viele sie behielt. Eine Route, die „nur Fehler“ behalten soll und 95 % des Angebotenen matcht, ist ein zu lockerer Filter, und Sie sehen es, ohne zu warten, bis die Kosten dieser Extra-Datensätze nachgelagert auftauchen.
  • Ziele zeigen einen Queue-Füllstand-Balken und ein Fehler-Flag – die früheste Warnung, dass ein Backend nicht mithält und Datensätze kurz davor sind, verworfen zu werden.
  • Processor-Schritte zeigen den Drop-Prozentsatz jedes Schritts – sodass ein Filter, der still weit mehr abwirft als beabsichtigt, am Schritt sichtbar ist, nicht aus einem Loch in Ihren Daten erschlossen.

Das ist Durchsatz als Diagnose, nicht nur als Anzeige. Sie erwischen den Filter, der zu viel frisst, oder das Ziel, das sich staut, an dem Punkt, an dem es geschieht – statt es später aus fehlenden Logs und einer überraschenden Rechnung zu rekonstruieren.

Vom Hinschauen zum Benachrichtigtwerden

Eine Zahl auf einer Canvas setzt immer noch voraus, dass jemand hinsieht. Dieselbe gemessene Rate kann stattdessen einen Schwellenwert speisen, sodass die Pipeline Ihnen sagt, wenn sich das Volumen ändert, statt darauf zu warten, dass es Ihnen auffällt.

Eine Alert-Regel in LinkMesh anlegen: ein Dialog mit Erkennungsmodus „Schwellenwert”, Metrik „Durchsatz in Datensätzen pro Sekunde”, einem Vergleichsoperator, einem Wert und einer Severity.

Weil es dieselbe Messung ist, liest sich eine Regel so, wie Sie das Problem laut beschreiben würden — dieser Collector sollte mehr als ein Rinnsal bewegen oder diese Route sollte nie überschreiten, was das Ziel aufnehmen kann. Und die Richtung „zu wenig Durchsatz” zählt genauso viel wie „zu viel”: Ein Collector, der still aufhört, Daten zu empfangen, sieht aus wie ein gesunder — bis jemand die Logs sucht, die nie ankamen.

Durchsatz, den Sie sehen können, ist Durchsatz, dem Sie vertrauen können

Volumen sollte nichts sein, wovon Sie im Nachhinein erfahren. Setzen Sie eine live gemessene, datensatzorientierte Zahl auf jede Kante der Pipeline, und sie wird zu etwas, nach dem Sie operieren: Sie wissen, was fliesst, wohin, und ob es die Daten sind, die Sie behalten wollten – in Echtzeit, aus Metriken, die der Collector ohnehin schon produzierte.


Weiterlesen: