Unternehmen, die ihren Mitbewerbern eine Nasenlänge voraus sein wollen, müssen über ihre Systemleistung genauestens im Bilde sein. Die dafür nötigen Einblicke bietet Telemetrie, mit deren Hilfe Unternehmen bessere geschäftliche Entscheidungen treffen können.
Mit diesem Artikel möchten wir euch einen Überblick zum Thema Telemetrie geben. Wir werden uns ansehen, wie Telemetrie funktioniert und welche Typen von Telemetriedaten es gibt. Und wir werfen einen Blick auf die Vorteile dieser Daten für eure tägliche Arbeit, aber auch auf die Herausforderungen bei der Implementierung.
Sehen wir uns zunächst eine Definition an: Telemetrie ist die Erfassung und Analyse von Daten aus Remote-Quellen mit dem Ziel, Einblicke zur Leistung eines Systems zu erlangen und Bereiche mit Verbesserungsbedarf auszumachen.
Telemetrie spielt eine unterstützende, mitunter sogar entscheidende Rolle in vielen Branchen wie Software und IT, Landwirtschaft, Gesundheitswesen, Wettervorhersage und Forschung. In Krankenhäusern etwa dient sie zur Überwachung kritischer Patientendaten wie Blutdruck und Herzfrequenz.
In der Technologie- und Softwarebranche, in der es in diesem Artikel hauptsächlich geht, ist Telemetrie die automatische Erfassung von Daten aus verschiedenen Softwarebereitstellungen. Mit Telemetrie könnt ihr tiefere Einblicke in euer Produkt gewinnen und bessere Entscheidungen treffen, um das Produkt zu verbessern.
So kommt Telemetrie etwa in vielen Softwaresystemen zum Einsatz, um Benutzerinteraktionen mit Anwendungen oder Websites zu überwachen. In diesem Fall könntet ihr beispielsweise folgende Metriken nachverfolgen:
(Hier erfahrt ihr mehr über den MELT-Ansatz – Metriken, Ereignisse, Logs und Traces.)
Monitoring und Telemetrie werden in der Umgangssprache oft gleichgesetzt. Tatsächlich gibt es zwar eine begriffliche Überlappung, aber auch ein paar Unterschiede:
Kurzum, Monitoring lässt sich als Teilmenge der Telemetrie begreifen. Letztere bietet tiefergehende Überwachungsfunktionen und ermöglicht ein umfassendes Verständnis des Systems.
(Verwandte Themen: eBPF sowie Telemetrie, Monitoring und Observability im Vergleich)
Je nach ihren Anforderungen sammeln und überwachen Unternehmen verschiedene Typen von Telemetriedaten.
Beispiele für Telemetriedaten aus der IT-Infrastruktur sind Transaktions- und Fehlerraten, Antwortzeiten, CPU- und Arbeitsspeicherauslastung, Datenträger-E/A und Netzwerkdurchsatz.
Diese Daten werden erfasst, wenn Benutzer mit Produktfunktionen interagieren, also z. B. auf Schaltflächen klicken, sich im System anmelden, bestimmte Seiten aufrufen oder bestimmte Fehler angezeigt bekommen.
Für Netzwerke sind beispielsweise die Überwachung der Bandbreitenkapazität, von bestimmten Netzwerkports oder von Speicherlösungen relevant. Wichtig sind aber auch Zustandsdaten von Netzwerkgeräten, etwa die CPU- oder Arbeitsspeicherauslastung von Routern oder Switches, die Geräteverfügbarkeit oder die Temperatur.
(Lest unseren Leitfaden zur Netzwerktelemetrie.)
Anwendungen erzeugen verschiedene Telemetriedaten, die von Benutzern erfasst und überwacht werden können. Dazu gehören Kennzahlen wie Latenz, Transaktionen pro Sekunde, Datenbankzugriff, Datenbankabfragen, in der Anwendung generierte Fehler und Aktivitäten in Bezug auf die Anwendungsbereitstellung wie Bereitstellung und Bereitstellungstopologie.
Darüber hinaus sind weitere Einblicke möglich, etwa zu den meistgenutzten Betriebssystemen, zu Browsertyp/-version und zu den Gerätedetails.
(Alles Wichtige über Application Performance Monitoring oder APM erfahrt ihr hier.)
Unternehmen können auch cloudspezifische Telemetriedaten messen, z. B. Weiterleitungsentscheidungen, Konfigurationsänderungen, Änderungen an Sicherheitsgruppen oder Cloud-Nutzungsdaten.
Wenn ihr wisst, wie es geht, könnt ihr Telemetrie für viele verschiedene Zwecke einsetzen. Wir haben ein paar Anregungen für euch.
Telemetriedaten können Aufschluss darüber geben, welche Funktionen Benutzer am häufigsten und am seltensten verwenden. Mit diesem Wissen können Produktteams Feature-Verbesserungen priorisieren und Features verwerfen, an denen eure Benutzer kein Interesse haben.
Telemetriedaten helfen Unternehmen dabei, fehlerhafte und leistungsschwache Bereiche oder Funktionen ihrer Software oder Plattform zu ermitteln. Probleme lassen sich so schneller eingrenzen und beheben, bevor sie sich zu schwerwiegenden Vorfällen auswachsen.
Telemetriedaten können auch auf Leistungsengpässe hindeuten, beispielsweise Webseiten oder Komponenten mit langer Ladezeit. An diesen Stellen können Entwickler dann ansetzen, um die Performance zu steigern.
Wird eine Funktion verändert oder erweitert, könnt ihr mithilfe von Telemetriedaten validieren, ob diese Änderungen den gewünschten Effekt haben, z. B.:
Telemetriedaten können verdächtige Aktivitäten und Nutzungsmuster sichtbar machen. Security-Teams haben die Möglichkeit, durch Untersuchung historischer Telemetriedaten Sicherheitsvorfälle und deren mögliche Ursachen zu verstehen. Und außerdem lässt sich anhand von Telemetriedaten leicht erkennen, ob eine Softwareversion veraltet ist, sodass Security-Patches schnell bereitgestellt werden können.
Das Erfassen von Daten ist vergleichsweise simpel, doch wie gewinnt ihr aus euren Telemetriedaten echten Mehrwert? Wir erklären euch in fünf Schritten, wie ihr dazu vorgeht.
Zuerst müsst ihr eure Telemetrieanforderungen und den Ansatz für die Datenerfassung festlegen. Welche Frage möchtet ihr beantworten? Für welche Fragen sucht ihr nach Informationen? Außerdem solltet ihr Folgendes bestimmen:
Beispielsweise müsst ihr das Schema der Telemetrienachrichten des Zielsystems definieren. Wenn ihr mehrere Systeme überwachen wollt, müsst ihr die gängigen Nachrichtenformate festlegen.
Hier geht es darum, das Zielsystem, das Daten an das Remote-System übermittelt, mit den Telemetrie-Tools zu integrieren. Wenn ihr beispielsweise benutzer- oder anwendungsbezogene Telemetriedaten überwachen wollt, sollte die Anwendung bei bestimmten Ereignissen Daten gemäß dem definierten Schema weiterleiten können.
Und wenn das System Daten über ein Warteschlangensystem senden soll, müsst ihr es entsprechend konfigurieren. Daten müssen korrekt validiert werden. Achtet darauf, sensible Informationen entweder auszuschließen oder gemäß den Datenschutz- und Sicherheitsrichtlinien eures Unternehmens zu schützen.
(Lest hier nach, wie Ereigniskorrelation funktioniert.)
Die erforderlichen Telemetriedaten müssen entweder in Echtzeit oder in festen Intervallen vom Zielsystem an den Remote-Speicher übermittelt werden. Je nach System und Datentypen können dabei verschiedene Protokolle und Methoden zum Einsatz kommen. Um die Daten an die Empfängerseite zu senden, können z. B. spezifische Nachrichtenwarteschlangen verwendet werden.
Womöglich müssen die Zielsysteme auch bestimmte Anforderungen hinsichtlich der Telemetriekonfiguration erfüllen. Unter Umständen könnte etwa ein Daten-Sampling-Verfahren erforderlich sein, um die Datenmenge und Übertragungsrate zu steuern.
Telemetriedaten werden in einer zentralen Datenbank oder einem Data Lake gesammelt. Das Speichersystem ist entsprechend der aufzunehmenden Datenmenge zu dimensionieren. Darüber hinaus muss es Echtzeit- und historische Analysen ermöglichen, damit eure Teams Trends, Anomalien und Muster im Zeitverlauf erkennen können.
Zu guter Letzt werden die im Telemetriespeicher erfassten Daten mithilfe verschiedener Tools analysiert. So könnt ihr Informationen extrahieren, die euch helfen, Fehler zu erkennen und zu beheben, das Nutzungserlebnis zu verbessern und fundierte Entscheidungen für die Feature-Entwicklung zu treffen.
Visualisiert die Daten und Informationen je nach den Anforderungen eurer Stakeholder (nicht mehr und nicht weniger), damit diese Trends und Muster leicht identifizieren können.
Und damit kommen wir zum schwierigen Teil. Telemetrie kann dazu beitragen, Antworten auf wichtige Fragen zu liefern und so die Systemleistung zu verbessern. Doch wer von Telemetrie profitieren will, muss sich auch mit den Herausforderungen auseinandersetzen, die damit einhergehen.
Manche Unternehmen übermitteln möglicherweise sensible Daten wie Benutzernamen und IP-Adressen, die für brauchbare Einblicke unerlässlich sind. Dies kann jedoch ernsthafte Datenschutzprobleme aufwerfen.
Unternehmen müssen Datenschutzvorschriften wie die DSGVO und CCPA erfüllen und personenbezogene oder sensible Daten angemessen schützen. Es kann sein, dass Benutzer Telemetriefunktionen aus Datenschutzgründen deaktivieren – die Folge sind dann unvollständige oder verzerrte Daten.
Im Telemetrie-Verarbeitungssystem können große Datenmengen anfallen, insbesondere wenn Daten aus mehreren Produkten oder Systemen oder in Zeiten intensiver Nutzung erfasst werden. Die Speicherung solcher Daten und die Skalierung für immer größere Datenvolumen kann viel Aufwand und hohe Kosten bereiten. Die eingesetzten Lösungen sollten daher möglichst einfach skalierbar, zuverlässig und kostengünstig sein.
(Hier erfahrt ihr mehr über Big-Data-Analysen.)
Die Netzwerklatenz hat potenziell negative Auswirkungen auf die Echtzeit-Datenanalyse. Noch dazu kann die Übertragung großer Mengen an Telemetriedaten die Bandbreite erheblich schmälern und die Betriebskosten in die Höhe treiben.
Falls das Telemetriesystem in mehrere Clients oder Systeme eingebunden ist, können Gerätefehlfunktionen, Software-Bugs oder Übertragungsfehler zu Dateninkonsistenz führen. Solche Integritätsprobleme können wiederum die Datengenauigkeit beeinträchtigen. Bei verschiedenen Systemen und Technologie-Stacks müssen zudem Kommunikation und Datenaustausch mit dem Telemetriesystem nahtlos möglich sein – was mitunter gar nicht so einfach zu bewerkstelligen ist.
(Lest nach, wie OpenTelemetry das Problem geschlossener Datenplattformen löst.)
Die Analyse großer Datenmengen ist mitunter zeit- und ressourcenintensiv. Wenn ihr aus euren Daten nützliche Erkenntnisse ableiten wollt, braucht ihr also effiziente Tools und Techniken zur Datenverarbeitung und -analyse.
Unternehmen, die ihre Performance verbessern und eine optimale User Experience bieten möchten, kommen heutzutage nicht um Telemetriesysteme herum. Moderne Telemetrie ermöglicht tiefere Einblicke in Systeme als typische Monitoring-Prozesse und erfasst viele verschiedene Datentypen.
Telemetrie bietet zahlreiche Vorteile, darunter eine bessere Prioritätensetzung bei der Feature-Entwicklung, ein höheres Maß an Sicherheit und die Validierung von Änderungen. Allerdings gibt es auch einige Herausforderungen, die ihr mitdenken müsst, wenn ihr diese Vorteile nutzbar machen wollt.
Für alle, die mehr über Telemetrie erfahren möchten, haben wir hier nützliche weiterführende Ressourcen (in englischer Sprache) zusammengestellt:
Ihr habt einen Fehler entdeckt oder eine Anregung? Bitte lasst es uns wissen und schreibt eine E-Mail an ssg-blogs@splunk.com.
Dieser Beitrag spiegelt nicht zwingend die Position, Strategie oder Meinung von Splunk wider.
Weltweit führende Unternehmen verlassen sich auf Splunk, ein Cisco-Unternehmen, um mit unserer Plattform für einheitliche Sicherheit und Observability, die auf branchenführender KI basiert, kontinuierlich ihre digitale Resilienz zu stärken.
Unsere Kunden vertrauen auf die preisgekrönten Security- und Observability-Lösungen von Splunk, um ihre komplexen digitalen Umgebungen ungeachtet ihrer Größenordnung zuverlässig zu sichern und verbessern.