What is telemetry data?
Definition: Telemetriedaten
Telemetriedaten liefern wichtige Einblicke in die Leistung Ihrer Systeme. Sie sind entscheidend für eine proaktive Problembehebung und für fundierte Entscheidungen. Dazu dürfen Sie sich jedoch nicht nur auf Rohdaten verlassen, sondern benötigen Zugriff auf Echtzeit-Einblicke. Dafür brauchen Sie Telemetriedaten.
Telemetrie beschreibt die Erfassung, Übermittlung und Analyse von Daten aus Remote-Quellen wie Servern, Anwendungen und Überwachungsgeräten. Dieser Prozess lässt sich in die folgenden Schritte unterteilen:
- Datenerfassung: Sensoren, Software und andere Überwachungs-Tools sammeln Daten wie etwa Nutzerverhalten, Leistungsmetriken und Umgebungsbedingungen.
- Datenübertragung: Die gesammelten Daten werden an ein zentrales System übermittelt.
- Analyse und Überwachung: Anschließend können die empfangenen Daten verarbeitet, analysiert und angezeigt werden, um Einblicke in den Status, die Leistung und das Verhalten der überwachten Systeme zu liefern.
Dazu benötigen Sie jedoch die richtigen Telemetriedaten. Dabei handelt es sich um alle Rohdaten, inklusive beispielsweise Logs, Metriken, Events und anderen Traces, die von Systemen, Anwendungen oder Geräten erstellt werden. Ohne diese Rohdaten sind Analyse und Überwachung weniger nützlich und exakt.
Arten von Telemetriedaten
Logdaten
Logs sind Listen von Textdatensätzen, die eigenständige Ereignisse beschreiben, die in Systemen oder Anwendungen auftreten. Jeder Eintrag enthält einen Zeitstempel sowie ausführliche Informationen für Debugging und Analyse. Diese Daten sind wichtig für Debugging und Fehlerbehebung, Complianceberichte, Analysen des Nutzerverhaltens sowie verschiedene Auditing-Typen.
Es gibt verschiedene Arten von Logs, wie etwa Anwendungs-Logs, System-Logs, Netzwerk-Logs und Zugriffs-Logs. Sie alle enthalten wertvolle Telemetriedaten, die ein genaues Bild davon liefern können, was wann geschehen ist und wer (oder was) daran beteiligt war.
Traces
Ein Trace ist eine Art von Brotkrumenspur, die eine Anforderung auf ihrem Weg durch ein System hinterlässt. Sie erfasst den Weg, den die Anforderung nimmt, sowie den Ablauf und das exakte Timing über verschiedene Dienste hinweg. Dazu gehören beispielsweise verteilte Anwendungs-Traces und End-to-End-Anwendungs-Traces in Microservice-Architekturen.
Als Telemetriedaten liefern diese Traces eine wertvolle Unterstützung für die Leistungsoptimierung, die Analyse von Systemabhängigkeiten, Ursachenanalysen und zum Identifizieren von Leistungsengpässen.
Metriken
Metriken sind numerische, zur Laufzeit vorgenommene Messungen von System-, Software- oder Anwendungsparametern. Diese Metriken ermöglichen quantitative Analysen der Leistung über einen Zeitraum und umfassen zum Beispiel CPU-Nutzung, Anforderungs- und Fehlerraten, Antwortzeiten und Arbeitsspeicherauslastung.
Bei der Telemetrie liefern diese Metriken wichtige Einblicke in Faktoren wie Systemintegrität, -leistung und -verhalten. Diese Einblicke sind wiederum hilfreich für eine Vielzahl von Tools, von der Leistungsüberwachung und Anomalieerkennung bis hin zur Kapazitätsplanung und zur Überwachung der SLA-Compliance.
Events
Events sind Einträge von wichtigen Vorkommnissen oder Zustandsänderungen in Ihrem System. Sie erfassen wichtige Momente oder Änderungen, die sich auf Ihr System oder Ihren Geschäftsbetrieb auswirken, und unterscheiden sich von Logs dadurch, dass sie oft zusätzliche Kontextinformationen umfassen. Events enthalten Daten wie Nutzeraktionen (Anmeldungen, Käufe usw.), Zustandsänderungen im System sowie geschäftsspezifische Ereignisse.
Durch die zusätzlichen Kontextinformationen sind Events entscheidend für Business Intelligence, Überwachung der Systemintegrität, Compliance-Auditing und zum Auslösen von Automatisierungen. Sie eignen sich auch hervorragend für Analysen des Nutzerverhaltens, da Sie genau erkennen können, wer was wann getan hat.
Einrichten und Verwenden von Telemetriedaten
Schritt 1: Ihre Ziele definieren
Beim Einrichten Ihrer Telemetriedaten müssen Sie zunächst genau festlegen, was Sie erreichen möchten. Identifizieren Sie spezifische Ziele für die Erfassung Ihrer Telemetriedaten, etwa zum Verbessern von Systemleistung oder Nutzererlebnis, oder zum Identifizieren von Sicherheitsbedrohungen. Dazu ist es oft hilfreich, Ihre Telemetrieziele mit Ihren vorhandenen Geschäftszielen abzugleichen.
Ermitteln Sie anschließend, welche Leistungskennzahlen (Key Performance Indicator, KPI) und Metriken Sie brauchen, um diese Werte nachzuverfolgen. Wenn Sie Ihre Systemleistung verbessern möchten, kann es beispielsweise hilfreich sein, Daten wie Antwortzeiten, Fehlerraten und Ressourcenverwendung zu erfassen. Datenschutz und Compliance sind weitere wichtige Faktoren beim Festlegen Ihrer Telemetrieziele. Überprüfen Sie die entsprechenden Vorgaben (CCPA, DSGVO usw.) und definieren Sie Richtlinien für die Datenerfassung, die diese Vorgaben erfüllen und den Datenschutz Ihrer Nutzer gewährleisten.
Schritt 2: Tools konfigurieren
Im nächsten Schritt wählen Sie die passenden Tools zum Erfüllen Ihrer Ziele aus und konfigurieren sie. Wählen Sie für die Telemetrieerfassung Tools aus, die Sie dabei unterstützen und die sich nahtlos in Ihren vorhandenen Tech-Stack integrieren lassen. Dazu gehören beispielsweise APM-Tools (Application Performance Monitoring), Log-Aggregatoren oder benutzerdefinierte SDKs.
Sie müssen Erfassungsmechanismen implementieren, Logging-Frameworks oder Überwachungs-Agents in Ihre Anwendungen integrieren. OpenTelemetry bietet sich dafür als gute, anbieterneutrale Option an. Dazu müssen Sie vermutlich Code instrumentieren oder vorhandene Systeme für den Empfang der benötigten Daten konfigurieren.
Um Ihre Erfassungsparameter zu konfigurieren, müssen Sie Datenerfassungsparameter wie Abtastraten, Arten der zu erfassenden Events und die Detailstufe Ihrer Logs einrichten. Anschließend konfigurieren Sie Datenfilter, um sensible Informationen herauszufiltern und die Daten gemäß geltender Datenschutzvorschriften zu anonymisieren.
Schritt 3: Daten versenden
Im nächsten Schritt werden Sie Ihre Telemetriedaten übermitteln. Dazu müssen Sie zunächst Übertragungsprotokolle für den Versand Ihrer Daten implementieren. Mögliche Optionen sind HTTPS (oder HTTP) für Web-Apps, MQTT für IoT-Geräte oder sogar spezialisierte Protokolle wie OpenTelemetry (OTLP). Stellen Sie dabei sicher, dass die Übertragung mit Verschlüsselungs- und Authentifizierungsmechanismen geschützt wird.
Für den Fall von Netzwerkunterbrechungen und zur Verbesserung der Zuverlässigkeit sollten Sie eine lokale Datenpufferung und eine Wiederholungslogik einrichten. Außerdem müssen Sie Volumen und Häufigkeit Ihrer Datenübertragung ausbalancieren, um die potenziellen Auswirkungen auf Anwendungsleistung und Netzwerkbandbreite zu minimieren.
Schritt 4: Daten speichern
Als Nächstes brauchen Sie eine passende Speicherlösung, um Ihre Telemetriedaten zu empfangen. Sie können verschiedene Speicherlösungen für unterschiedliche Datentypen konfigurieren oder ganz einfach eine verteilte Speicherlösung mit Elasticsearch und clusterübergreifenden Such- und Replikationsfunktionen verwenden, um ein Data Mesh zu erstellen.
Anschließend müssen Sie Aufbewahrungsrichtlinien implementieren und festlegen, wie lange die unterschiedlichen Datentypen gespeichert werden sollen. Dazu sollten Sie die Analyse- und die gesetzlichen Anforderungen im Hinblick auf Ihre Daten berücksichtigen. Bei den Entscheidungen rund um die Speicherung Ihrer Telemetriedaten müssen Sie oft einen Mittelweg zwischen Analyseleistung und Speicherkosten finden.
Ein weiterer wichtiger Faktor ist die Partitionierung und Indizierung: Organisieren Sie Ihren Speicher mit Optionen wie zeitbasierter Partitionierung und Indexierung für eine optimale Abfrageleistung. Achten Sie auch auf Backups und Notfallwiederherstellung, um sich vor Datenverlusten zu schützen und durchgängigen Zugang zu den Telemetriedaten zu gewährleisten.
Schritt 5: Telemetriedaten analysieren
Zuletzt müssen Sie in der Lage sein, Ihre Telemetriedaten zu analysieren und zu visualisieren. Dazu gehört die Entwicklung von Dashboards und Visualisierungen, um wichtige Metriken und Trends abzubilden. Außerdem müssen Sie Alerting-Systeme implementieren, um benachrichtigt zu werden, wenn Metriken vordefinierte Schwellenwerte überschreiten oder wenn Anomalien erkannt werden.
Für eine optimale Nutzung Ihrer Telemetriedaten empfehlen wir erweiterte Analysen, wie etwa statistische Analysen und Machine Learning, um Muster besser zu identifizieren und zukünftige Trends vorherzusagen. Dies funktioniert besonders gut, wenn Sie Einblicke aus verschiedenen Datentypen kombinieren, um eine umfassende Übersicht über Systemaktivität und Nutzerverhalten zu gewinnen.
Vorteile von Telemetriedaten
Effektive Telemetrieprozesse auf Basis Ihrer Daten liefern unter anderem die folgenden wichtigen Vorteile:
- Einblicke in Echtzeit: Durch die Nachverfolgung und Analyse wichtiger Metriken und Logs erhalten Sie sofortige Einblicke in gut laufende und verbesserungsfähige Vorgänge.
- Proaktive Erkennung und Behebung von Problemen: Mit Ihren Telemetriedaten können Sie Anomalien und Muster identifizieren, die auf potenzielle Probleme hindeuten können, noch bevor diese eskalieren.
- Verbesserte Betriebseffizienz: Implementieren Sie automatisierte Überwachung und Datenerfassung, um Ihre Workflows zu optimieren und Ihre Produktivität zu steigern.
- Schnellere Problembehandlung: Mit Ihren ausführlichen Telemetriedaten können Sie die Ursachen von Problemen schnell ermitteln und die mittlere Behebungsdauer (MTTR) reduzieren.
- Bessere Entscheidungen: Dank der Verfügbarkeit wichtiger Daten können Sie datengestützte und fundierte strategische Entscheidungen im Hinblick auf Ressourcenzuteilung, Produktentwicklung und UX-Verbesserungen treffen.
Um Ihre Telemetriedaten optimal nutzen zu können, ist es wichtig, die Daten in einer einheitlichen Plattform zu konsolidieren. Auf diese Weise können Sie Ihre Daten aus unterschiedlichen Quellen zusammenführen und Kontextwechsel minimieren.
Mit dieser Konsolidierung erhalten Sie nicht nur die genannten Vorteile, sondern verbessern auch Skalierbarkeit sowie Kosteneffizienz und garantieren eine durchgängig konsistente Datenverarbeitung. Darum sind offene Standards wie die OpenTelementry Semantic Conventions (Otel SemConv) so wichtig. Diese Standards sorgen für Interoperabilität zwischen Ihren verschiedenen Tools und Plattformen.
Herausforderungen im Zusammenhang mit Telemetriedaten
Wie bei jeder Technologie sind auch Telemetriedaten mit Vorteilen und Herausforderungen verbunden. Um diese Herausforderungen zu überwinden, ist es wichtig, sie zu kennen und den Umgang mit ihnen zu planen.
- Datensicherheit und Datenschutz: Die Sicherheit und der Schutz Ihrer Kunden- und Nutzerdaten ist entscheidend. Nicht nur, weil dies den Best Practices entspricht, sondern auch, weil dies andernfalls Ihren guten Ruf gefährden und strafrechtliche Folgen haben kann. Daher brauchen Sie robuste Sicherheitsmaßnahmen wie Verschlüsselung, Zugriffskontrollen und umfassendes Logging. Außerdem müssen Sie vertrauliche Informationen schützen und den Zugriff auf Ihre Daten streng kontrollieren.
- Integration von Legacy-Software: Sie müssen eine Vielzahl von Datenformaten und -quellen unterstützen, indem Sie eine flexible Dateningestion implementieren. Auf diese Weise können Sie Telemetriedaten von modernen und Legacy-Systemen in eine einheitliche Plattform integrieren.
- Kosteneffektiver Speicher: Mit mehrstufigen Speicheroptionen und Richtlinien für die Lebenszyklusverwaltung der Daten (Information Lifecycle Management, ILM) können Sie Ihre Speicherkosten optimieren und gleichzeitig dafür sorgen, dass Ihre Daten abrufbar sind. Mit einer Heiß-Warm-Kalt-Architektur können Sie einen Ausgleich zwischen Leistung und Kosten schaffen.
- Unterstützung für offene Standards: Verwenden Sie zur Sicherstellung der Interoperabilität so früh wie möglich offene Standards wie OpenTelemetry. Auf diese Weise können Sie Ihre Telemetrieinfrastruktur zukunftssicher gestalten und mühelos mit anderen Tools und Plattformen integrieren.
OpenTelemetry mit Elastic
Weiter oben in dieser Anleitung haben wir OpenTelemetry angesprochen, das Open-Source-Framework für Observability, mit dem Sie die Datenerfassung vereinheitlichen und die Formate Ihrer Telemetriedaten standardisieren können. Außerdem erhalten Sie einen anbieterneutralen Telemetrieansatz, mit dem Sie sich nicht binden müssen, und der hervorragend für den Umgang mit großen Datenvolumen skaliert.
Dies passt gut zu der Elastic-Selbstverpflichtung zu offenen Standards. Daher haben wir unsere eigene Open-Source-Spezifikation, das Elastic Common Schema (ECS), zu OpenTelemetry beigesteuert.
Außerdem ist die nahtlose Ingestion von OTel-formatierten Daten im Rahmen unserer allgemeinen Observability-Funktion in Elasticsearch enthalten. Sie können also die erweiterten Analyse- und Suchfunktionen von Elasticsearch mit OTel-Daten verwenden und Ihre Observability-Plattform zukunftssicher planen.
Diese Kombination aus Elastic und OpenTelemetry löst viele der wichtigen Herausforderungen, denen Sie vermutlich begegnen werden:
- Heterogene Datenquellen konsolidieren
- Datensicherheit und Datenschutz garantieren
- Integration von Legacy-Software verwalten
- Speicherkosten optimieren
- Vielfältige Datentypen verarbeiten
- Offene Standards für Interoperabilität unterstützen