


Was ist Beobachtbarkeit? Alles, was ein Anfänger wissen muss
Der Begriff Observability stammt aus dem Ingenieurwesen und erfreut sich in den letzten Jahren auch im Bereich der Softwareentwicklung immer größerer Beliebtheit. Einfach ausgedrückt ist Beobachtbarkeit die Fähigkeit, den internen Zustand eines Systems anhand externer Outputs zu verstehen. IBM definiert Beobachtbarkeit als:
Im Allgemeinen bezieht sich Beobachtbarkeit auf den Grad, in dem der interne Zustand oder Zustand eines komplexen Systems basierend auf der Kenntnis seiner externen Ausgabe verstanden werden kann. Je besser das System beobachtbar ist, desto schneller und genauer kann die Ursache eines Leistungsproblems ermittelt werden, ohne dass zusätzliche Tests oder Codierung erforderlich sind.
Im Cloud Computing bezieht sich Observability auch auf die Softwaretools und -praktiken zum Aggregieren, Korrelieren und Analysieren von Daten aus verteilten Anwendungssystemen und der Infrastruktur, die ihren Betrieb unterstützt, um Anwendungssysteme effektiver zu überwachen und zu steuern um die Optimierung des Kundenerlebnisses, Service Level Agreements (SLAs) und andere Geschäftsziele zu erreichen.
Da die IT-Architektur komplexer wird, werden Systemmanagement und Fehlerbehebung komplexer. In vielen Szenarien reichen herkömmliche Ansätze nicht mehr aus, um eine optimale Leistung sicherzustellen. Beobachtbarkeit wird oft als eine Ableitung der Überwachung betrachtet. Bei der Überwachung geht es oft darum, einen bestimmten Satz von Metriken zu verfolgen, etwa die CPU-Auslastung oder den Netzwerkverkehr, und Warnungen auszulösen, wenn diese Metriken Schwellenwerte überschreiten. Bei der Überwachung gibt es bestimmte Einschränkungen, während bei der Beobachtbarkeit das Sammeln und Analysieren eines größeren Datenspektrums erforderlich ist, um einen umfassenderen Überblick über das Systemverhalten zu erhalten.
In der Softwareentwicklung bezieht sich Beobachtbarkeit auf die Fähigkeit, das Anwendungsverhalten und die Leistung basierend auf den von der Anwendung generierten Daten, einschließlich Protokollen, Metriken, Ablaufverfolgungen und anderen Daten, zu verstehen. Durch die Analyse dieser Daten können Entwickler die Leistung ihrer Anwendung verstehen und Verbesserungsmöglichkeiten identifizieren.
Beobachtbarkeitsfall
Plattformsicherheit ist ein praktischer Anwendungsfall der Beobachtbarkeit.
Plattformsicherheitsteams erhalten große Datenmengen in verschiedenen Formaten aus mehreren Quellen. Die Analyse unübersichtlicher, qualitativ minderwertiger Daten verlangsamt die Fähigkeit, Schwachstellen zu erkennen, neue Bedrohungen zu finden und bei Sicherheitsverstößen zu reagieren. Darüber hinaus besteht beim Einsatz mehrerer Sicherheitstools auch das Problem, dass Informationen nicht zwischen verschiedenen Sicherheitstools ausgetauscht werden können.
Die Lösung besteht darin, Observability-Filter zu definieren, um potenzielle Sicherheitsbedrohungen zu identifizieren und die Qualität der eingehenden zu analysierenden Daten zu verbessern. Der nächste Schritt besteht darin, die Daten mit unterstützenden Daten aus externen Datenbanken anzureichern, um die Analyse und Identifizierung von Sicherheitsbedrohungen zu unterstützen. Von DNS-Informationen über IP-Adressen bis hin zu Benutzerkennungen kann alles hinzugefügt werden.
Vorteile von Observability
Einer der Hauptvorteile von Observability besteht darin, dass es Entwicklern hilft, Probleme mit ihren Anwendungen schnell zu erkennen und zu beheben. Durch die Analyse der von einer Anwendung generierten Telemetriedaten können Entwickler deren Leistung verstehen und Richtungen identifizieren, in denen die Leistung verbessert werden kann. Dies trägt dazu bei, Ausfallzeiten zu reduzieren und das allgemeine Benutzererlebnis zu verbessern.
Mit der Automatisierung werden die Aktualität und Genauigkeit der Überwachung und Steuerung verbessert. Gleichzeitig trägt es dazu bei, die gesamten Überwachungs- und Wartungskosten zu senken.
Säulen der Beobachtbarkeit
Beobachtbarkeit basiert im Allgemeinen auf drei Säulen:
Protokolle
Viele Prozesse können Protokolle ihrer Aktivitäten erstellen. Im Allgemeinen sind sie für die Beobachtbarkeit nützlich, in einigen Fällen müssen sie jedoch angepasst werden, um den in den Protokollen angezeigten Detaillierungsgrad zu erhöhen, damit sie nützlich sind.
Tracking
Protokolle sind sehr nützlich, aber Vorwärts- und Rückwärtsverfolgung sind auch notwendig, um zu sehen, warum ein Ereignis aufgetreten ist und welche Konsequenzen es hat.
Metriken
Mit Metriken messen wir Anomalien und lösen bei Bedarf Korrekturmaßnahmen aus. Vereinfacht ausgedrückt muss man den Normalzustand kennen und Abweichungen vom Normalzustand erkennen. Daher ist es ein Muss, über Indikatoren zu verfügen, die den Normalzustand definieren.
Implementierung von Observability
Observability kann auch mit einigen älteren Tools implementiert werden, diese weisen jedoch einige Einschränkungen hinsichtlich Anwendbarkeit und Abdeckung auf. Um Beobachtbarkeit zu erreichen, ist eine Reihe von Techniken und Werkzeugen erforderlich, die die drei Säulen der Beobachtbarkeit abdecken: Protokolle, Spuren und Metriken.
Mit diesen Tools können Manager, Überwacher und Entwickler Daten aus einer Vielzahl von Quellen sammeln und analysieren, einschließlich Anwendungscode, Infrastruktur und Benutzerverhalten. Durch die gemeinsame Verwendung dieser Tools können Systemadministratoren einen vollständigen Überblick über das Verhalten und die Leistung eines gesamten Systems oder eines einzelnen Systems erhalten und so Probleme genauer und schneller identifizieren und lösen.
Instrumentierung
Der erste Schritt besteht darin, Tools einzusetzen, die die Leistung des Gesamtsystems oder einzelner Systeme messen. Diese Tools müssen Protokolle, Metriken und Traces abdecken, um Daten über Systemverhalten und Leistung zu sammeln. Durch die Verbindung von Netzwerkmanagement- und Steuerungssystemen wird die Beobachtbarkeit verbessert.
Sammeln
Nachdem Sie das Dashboard installiert haben, müssen Sie die vom System generierten Daten sammeln. Zum Sammeln von Daten können Tools wie Protokollierungsframeworks, Metrikerfassungssysteme und Ablaufverfolgungsbibliotheken verwendet werden.
Sie müssen die von jedem Tool bereitgestellten Daten überprüfen und entscheiden, welche Daten gespeichert, sicher ignoriert oder verworfen werden sollen.
Speicher
Der nächste Schritt besteht darin, festzulegen, wie die Daten Ihres Telefons gespeichert werden. Durch das Speichern von Daten an einem zentralen Ort, beispielsweise in einer Datenbank oder einem Data Lake, können die Daten später einfacher abgefragt oder analysiert werden. Cloud-Speicher ist in dieser Hinsicht sehr nützlich. Viele Unternehmen verwenden Klassifizierungssysteme, bei denen neue Daten sofort verfügbar sind, während historische Daten für einige Zeit in einem Online-Repository verbleiben. Automatische Abrufsysteme können auf ältere, offline gespeicherte Daten zugreifen.
Regelmäßige Datensicherung gehört zum täglichen Betriebsablauf. Wie Sie den Grenzpunkt zwischen Sofort-, Online- und Offline-Speicher definieren, hängt von den Geschäftsanforderungen ab.
Analyse
Als nächstes können Sie mit der Analyse der gesammelten Daten beginnen, um das Verhalten und die Leistung Ihres Systems zu verstehen. Der Analyseprozess umfasst den Einsatz von Tools wie Dashboards, Warnsystemen und Modellen für maschinelles Lernen.
Sie können Ihre Daten sofort analysieren, um Nutzungsänderungen zu erkennen und zu verwalten, beispielsweise um die Auswirkungen von Marketingkampagnen auf Ihre E-Commerce-Anwendung zu beobachten. Sie können auch historische Trends analysieren. Beispielsweise ist die Hauptsaison für den Teppichkauf auf der Nordhalbkugel normalerweise im Herbst, etwa Anfang Oktober. Die historische Analyse wird ähnliche Muster im Unternehmen aufdecken.
Visualisierung
Visualisierung ist der entscheidende Punkt. Die Darstellung von Daten erfolgt in verschiedenen Formen wie Diagrammen und Grafiken. Die Visualisierung hilft dabei, Trends und Muster im Systemverhalten zu erkennen. Es gibt viele Visualisierungstools, sogar Microsoft Excel kann diesen Prozess durchführen.
Insgesamt erfordert das Erreichen von Beobachtbarkeit eine Kombination aus Tools, Prozessen und Best Practices, die es Ihnen ermöglichen, das Verhalten und die Leistung Ihres Systems sowohl auf ganzheitlicher als auch auf granularer Ebene zu verstehen. Dies hilft Entscheidungsträgern in Unternehmen und Abteilungen, Probleme schneller zu erkennen und zu lösen.
Endlich
Observability ist ein leistungsstarkes Konzept, das Entwicklern helfen kann, Einblicke in das Verhalten und die Leistung ihrer Anwendungen zu gewinnen. Durch das Sammeln und Analysieren von Telemetriedaten können Entwickler Probleme schnell identifizieren und lösen, wodurch das Benutzererlebnis insgesamt verbessert und Ausfallzeiten reduziert werden.
Das obige ist der detaillierte Inhalt vonWas ist Beobachtbarkeit? Alles, was ein Anfänger wissen muss. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



1. Einführung in den SpringBootActuator-Endpunkt 1.1 Was ist der Actuator-Endpunkt? SpringBootActuator ist ein Unterprojekt zur Überwachung und Verwaltung von SpringBoot-Anwendungen. Es bietet eine Reihe integrierter Endpunkte (Endpunkte), mit denen der Status, der Betriebsstatus und die Betriebsindikatoren der Anwendung angezeigt werden können. Aktor-Endpunkte können externen Systemen über HTTP, JMX oder andere Formen zugänglich gemacht werden, um dem Betriebs- und Wartungspersonal die Überwachung, Diagnose und Verwaltung von Anwendungen zu erleichtern. 1.2 Die Rolle und Funktion des Endpunkts Der Actuator-Endpunkt wird hauptsächlich zur Implementierung der folgenden Funktionen verwendet: Bereitstellung einer Gesundheitsprüfung der Anwendung, einschließlich Datenbankverbindung, Caching,

Es war einmal, als ich gerade meinen Abschluss in Informatik machte und viele Stellenausschreibungen auf Rekrutierungswebsites durchstöberte. Ich war verwirrt von den schillernden technischen Positionen: F&E-Ingenieur, Betriebs- und Wartungsingenieur, Testingenieur... Während des Studiums , meine beruflichen Studiengänge waren mittelmäßig, ganz zu schweigen davon, dass ich eine technische Vision hatte und ich keine klare Vorstellung davon hatte, welche technische Richtung ich einschlagen sollte. Bis ein älterer Student zu mir sagte: „Erledigen Sie den Betrieb und die Wartung. Sie müssen nicht jeden Tag Code schreiben, um den Betrieb und die Wartung durchzuführen. Sie müssen nur in der Lage sein, Liunx zu spielen! Das ist viel einfacher als die Entwicklung!“ Zu glauben... Ich bin seit mehr als zehn Jahren in der Branche tätig, habe viel gelitten, viel Schuld auf mich genommen, Server getötet und Abteilungsentlassungen erlebt. Wenn mir jetzt jemand sagt, dass Betrieb und Wartung einfacher sind als Entwicklung , dann werde ich es tun

Mit der rasanten Entwicklung des Internets nimmt die Komplexität von Unternehmensanwendungen von Tag zu Tag zu. Als Reaktion auf diese Situation entstand die Microservice-Architektur. Aufgrund seiner Modularität, unabhängigen Bereitstellung und hohen Skalierbarkeit ist es heute die erste Wahl für die Anwendungsentwicklung auf Unternehmensebene. Als hervorragende Microservice-Architektur hat Spring Cloud in praktischen Anwendungen große Vorteile gezeigt. In diesem Artikel werden die Bereitstellung sowie der Betrieb und die Wartung der SpringCloud-Microservice-Architektur vorgestellt. 1. Stellen Sie die SpringCloud-Microservice-Architektur SpringCloud bereit

Vor den Feiertagen habe ich mit der PG China-Community zusammengearbeitet, um eine Online-Live-Übertragung darüber durchzuführen, wie man D-SMART für den Betrieb und die Wartung der PG-Datenbank nutzt. Es kam vor, dass einer meiner Kunden aus der Finanzbranche meiner Einführung zuhörte und vorbeikam zum Chatten. Sie entscheiden sich für die Datenbank Xinchuang und haben mehrere inländische Datenbanken ausprobiert. Schließlich werden sie sich für TDSQL entscheiden. Ich war damals ein wenig überrascht, dass sie seit 2020 inländische Datenbanken ausgewählt hatten, aber es schien, dass die ersten Erfahrungen nach der Verwendung von TDSQL nicht sehr gut waren. Später, nach der Kommunikation, erfuhr ich, dass sie gerade mit der Verwendung der verteilten Datenbank von TDSQL begonnen hatten und feststellten, dass die Forschungs- und Entwicklungsanforderungen zu hoch waren. Daher entschieden sie sich alle für die zentralisierte MYSQL-Instanz von TDSQL. Nach der Verwendung stellten sie fest, dass sie sehr einfach zu verwenden war . Die gesamte Datenbank-Cloud

Durch Interviews und Einreichungen werden Veteranen im Bereich Betrieb und Wartung eingeladen, fundierte Einblicke zu geben und zusammenzuarbeiten, um einen fortgeschrittenen Konsens zu erzielen und die Branche zu einer besseren Weiterentwicklung zu bewegen. In dieser Ausgabe laden wir Zou Yi ein, den Betriebs- und Wartungsleiter von Tuyou Games, der sich oft scherzhaft als Betriebs- und Wartungsvertreter der 5 Millionen größten Unternehmen der Welt bezeichnet Die Betriebs- und Wartungskonstruktionsideen kleiner und mittlerer Unternehmen unterscheiden sich von denen großer Unternehmen. Heute haben wir ein paar Fragen und bitten Herrn Zou, uns von seiner Reise zur Integration von Forschung und Betrieb für kleine und mittlere Unternehmen zu erzählen. große Unternehmen. Dies ist die 6. Ausgabe des bodenständigen und hochkarätigen „Betriebs- und Wartungsforums“, die jetzt startet! Fragenvorschau Tuyou ist ein Spieleunternehmen. Was sind Ihrer Meinung nach die einzigartigen Merkmale des Spielebetriebs und der Wartung? Was sind für Sie die größten betrieblichen Herausforderungen? Wie haben Sie diese Herausforderungen gelöst? Spielbetriebs- und Wartungspersonal

Der Begriff Observability stammt ursprünglich aus dem Ingenieurwesen und erfreut sich in den letzten Jahren zunehmender Beliebtheit im Bereich der Softwareentwicklung. Einfach ausgedrückt ist Beobachtbarkeit die Fähigkeit, den internen Zustand eines Systems anhand externer Ausgaben zu verstehen. IBM definiert Beobachtbarkeit als: Im Allgemeinen bezieht sich Beobachtbarkeit auf den Grad, in dem der interne Zustand oder Zustand eines komplexen Systems basierend auf der Kenntnis seiner externen Ausgabe verstanden werden kann. Je besser das System beobachtbar ist, desto schneller und genauer kann die Ursache eines Leistungsproblems ermittelt werden, ohne dass zusätzliche Tests oder Codierung erforderlich sind. Beim Cloud Computing bezieht sich Beobachtbarkeit auch auf Softwaretools und -praktiken, die Daten von verteilten Anwendungssystemen und der Infrastruktur, die ihren Betrieb unterstützt, aggregieren, korrelieren und analysieren, um Anwendungssysteme effektiver zu überwachen, Fehler zu beheben und zu debuggen und so ein Kundenerlebnis zu erreichen Optimierung und Service Level Agreement

Lernen Sie Golang nicht für Betrieb und Wartung. Die Gründe dafür sind: 1. Golang wird hauptsächlich zur Entwicklung von Anwendungen mit hohen Leistungs- und gleichzeitigen Leistungsanforderungen verwendet. 2. Die von Betriebs- und Wartungsingenieuren häufig verwendeten Tools und Skriptsprachen können bereits erfüllt werden die meisten Management- und Wartungsanforderungen; 3. Das Erlernen von Golang erfordert eine gewisse Programmiergrundlage und Erfahrung. 4. Das Hauptziel des Betriebs- und Wartungsingenieurs besteht darin, die Stabilität und hohe Verfügbarkeit des Systems sicherzustellen, nicht die Entwicklung von Anwendungen.

Dieser Artikel ist ein Artikel des Uber-Ingenieurs Gergely Orosz. Die ursprüngliche Adresse lautet: https://blog.pragmaticengineer.com/operating-a-high-scale-distributed-system/ In den letzten Jahren habe ich gebaut und betrieben ein groß angelegtes verteiltes System: Ubers Zahlungssystem. In dieser Zeit habe ich viel über verteilte Architekturkonzepte gelernt und die Herausforderungen beim Betrieb von Hochlast- und Hochverfügbarkeitssystemen aus erster Hand miterlebt (ein System ist noch lange nicht fertig, wenn es entwickelt wird, und die Herausforderungen beim Online-Betrieb sind es tatsächlich). noch größer). Der Aufbau des Systems selbst ist ein interessantes Unterfangen. Wie Planungssysteme mit 10x/100 umgehen
