Observability in Google Cloud

Google Cloud Observability umfasst Beobachtbarkeitsdienste, mit denen Sie das Verhalten, den Zustand und die Leistung Ihrer Anwendungen, einschließlich agentenbasierter Anwendungen, besser verstehen können. Einblicke in das Verhalten von Anwendungen und die Verbindung von Komponenten helfen Ihnen, unerwartete Änderungen schneller und effektiver vorherzusagen, zu erkennen und auf sie zu reagieren.

Dieses Dokument enthält die folgenden Informationen:

Beobachtbarkeit

Beobachtbarkeit ist ein ganzheitlicher Ansatz zum Erfassen und Analysieren von Telemetriedaten, um den Zustand Ihrer Anwendungen, einschließlich Ihrer agentenbasierten Anwendungen, und ihrer Betriebsumgebung zu verstehen. Telemetriedaten umfassen Log-, Messwert- und Trace-Daten. Dazu können auch andere Daten gehören, die von Ihren Anwendungen generiert werden, z. B. Prompts und Antworten. Telemetriedaten liefern die Informationen, die Sie benötigen, um den Zustand und die Leistung Ihrer Anwendungen zu verstehen.

Messwertdaten
Messwertdaten sind numerische Daten zu Zustand oder Leistung, die das System in regelmäßigen Abständen misst, z. B. CPU-Auslastung und Anfragelatenz. Unerwartete Änderungen an Messwertdaten können auf ein Problem hindeuten, das untersucht werden muss. Mit der Zeit können Sie auch Muster analysieren, um Nutzungsmuster besser zu verstehen und Ressourcenanforderungen vorauszusehen.
Logdaten

Ein Log ist eine generierte Aufzeichnung von System- oder Anwendungsaktivitäten im Zeitverlauf. Jedes Log ist eine Sammlung von Logeinträgen mit Zeitstempel und jeder Logeintrag beschreibt ein bestimmtes Ereignis.

Logs enthalten oft detaillierte Informationen, die Ihnen helfen, zu verstehen, was in einem bestimmten Teil Ihrer Anwendung passiert ist. Aus Logdaten lässt sich jedoch nicht effektiv ableiten, wie sich eine Änderung in einer Komponente Ihrer Anwendung auf die Aktivität in anderen Komponenten auswirkt. Mit Trace-Daten lässt sich diese Lücke schließen.

Trace-Daten

Ein Trace stellt den Pfad einer Anfrage über alle Teile Ihrer verteilten Anwendung hinweg dar. Jeder Trace stellt also einen einzelnen End-to-End-Vorgang dar. Da Traces aus Spans bestehen, die Datensätze für eine einzelne Funktion oder einen einzelnen Vorgang sind, können Sie den Fluss von Anfragen nachvollziehen und Latenzdaten untersuchen. Anhand dieser Informationen können Sie die Ursache eines Problems ermitteln.

Bei Agent-basierten Anwendungen werden in Traces die Aktionen erfasst, die Ihr Agent ausführt. So kann ein Trace beispielsweise MCP-Aufrufe erfassen.

Weitere Daten

Sie können zusätzliche Statistiken erhalten, indem Sie Log-, Messwert- und Tracedaten zusammen mit anderen relevanten Informationen analysieren. Ein Label für den Schweregrad eines Vorfalls oder eine Kunden-ID in Logs liefern beispielsweise Kontext, der für die Fehlerbehebung und das Debugging nützlich sein kann.

Beobachtbarkeit von KI-Agenten

Agent-Observability bezieht sich auf Methoden zum Verständnis des internen Zustands und Verhaltens von Software-Agents, insbesondere von KI-gestützten Agents, die mit Large Language Models (LLMs) erstellt wurden. Da KI-Agents nicht deterministisch und komplex sind, ist die Beobachtbarkeit entscheidend, um ihre Leistung, Sicherheit und Zuverlässigkeit zu verstehen, zu debuggen, zu bewerten und zu verbessern.

Google Cloud bietet Unterstützung für die Anwendungsbeobachtbarkeit mit Application Monitoring. Damit werden Dashboards erstellt, in denen Telemetrie, Messwerte für KI-Ressourcen und Informationen wie offene Vorfälle angezeigt werden. Weitere Informationen finden Sie im Abschnitt Beobachtbarkeit von Agenten und Anwendungen in Google Cloud in diesem Dokument.

Beobachtbarkeit von Anwendungen und APM

Application Performance Monitoring (APM) überwacht, diagnostiziert und verwaltet die Leistung, Verfügbarkeit und Nutzerfreundlichkeit von Softwareanwendungen, einschließlich agentenbasierter Anwendungen. Ein APM-System bietet in der Regel Dashboards, in denen Telemetriedaten und Dienste angezeigt werden, die Telemetriedaten überwachen. Diese Systeme helfen Ihnen, die Fehlerursache zu ermitteln.

Bei der Anwendungsbeobachtbarkeit werden Telemetriedaten verwendet, um Insights zu generieren, mit denen Sie das Verhalten Ihrer Anwendungen besser nachvollziehen können.

Google Cloud bietet Unterstützung für die Anwendungsbeobachtbarkeit mit Application Monitoring. Damit werden Dashboards erstellt, in denen Telemetrie, Messwerte für KI-Ressourcen und Informationen wie offene Vorfälle angezeigt werden. Weitere Informationen finden Sie im Abschnitt Beobachtbarkeit von Agenten und Anwendungen in Google Cloud in diesem Dokument.

Beobachtbarkeitsdienste

Observability-Dienste erfassen, analysieren und korrelieren Telemetriedaten wie Log-, Messwert- und Trace-Daten. Diese Dienste helfen Ihnen, die Zuverlässigkeit von Anwendungen aufrechtzuerhalten, indem sie die folgenden Funktionen bieten:

  • Probleme proaktiv erkennen, bevor sie sich auf Nutzer auswirken
  • Bekannte und neue Probleme beheben
  • Anwendungen während der Entwicklung debuggen
  • Auswirkungen von Änderungen an Ihren Anwendungen nachvollziehen
  • Durch die Datenexploration neue Erkenntnisse gewinnen

Weitere Informationen zu Zuverlässigkeitsverfahren, einschließlich der Grundsätze und Verfahren im Zusammenhang mit der Beobachtbarkeit, finden Sie im Buch Site Reliability Engineering: How Google Runs Production Systems. Zu den Themen gehören Monitoring verteilter Systeme, Benachrichtigungen und Fehlerbehebung.

Google Cloud Observability

Mit Diensten in Google Cloud Observability können Sie Telemetriedaten sowohl aus Ihren Anwendungen als auch aus der zugrunde liegenden Infrastruktur erfassen, analysieren und korrelieren. Außerdem bieten sie integrierte Standardeinstellungen, damit Ihr Einstieg schneller gelingt. Mit Application Monitoring werden beispielsweise Dashboards und Topologiekarten für Ihre in App Hub registrierten Anwendungen, Dienste und Arbeitslasten erstellt.

Automatische Erfassung von Telemetriedaten

Monitoring, Logging und Trace gehören zu den Diensten, die standardmäßig aktiviert werden, wenn Sie ein Google Cloud -Projekt erstellen. Diese Dienste bieten die wichtigsten Funktionen zum Erfassen, Analysieren und Visualisieren Ihrer Telemetriedaten:

  • Erfassen Sie automatisch Telemetriedaten für die meisten Google Cloud -Dienste.
  • Erfassen Sie automatisch Audit-Logs für die meisten Google Cloud-Dienste.
  • Visualisierungsdienste wie Dashboards und Telemetrie-Explorer bereitstellen, mit denen Sie Ihre Telemetrie ansehen und untersuchen können. Im Trace Explorer können Sie beispielsweise Traces, Spans und Metadaten ansehen, einschließlich multimodaler Prompts und Antworten. Weitere Informationen finden Sie unter Telemetriedaten abfragen und ansehen.
  • SQL-basierte Analysedienste für Ihre Log- und Tracedaten bereitstellen. Beispielsweise können Sie mit BigQuery URLs in Ihren Logs mit einem öffentlichen Dataset von bekannten schädlichen URLs vergleichen.
  • Anwendungs- und Telemetrie-Monitoring bereitstellen. Sie können beispielsweise Benachrichtigungsrichtlinien erstellen, mit denen Sie benachrichtigt werden, wenn Ihre Log- oder Messwertdaten die von Ihnen angegebenen Bedingungen erfüllen. Sie können auch synthetisches Monitoring verwenden, um die Leistung Ihrer Anwendungen zu testen.
  • Erfassen Sie Telemetriedaten aus Ihren instrumentierten Anwendungen. Bei der Instrumentierung handelt es sich um Code, den Sie einer Anwendung hinzufügen, um Telemetriedaten auszugeben.

    Wir empfehlen, für die Instrumentierung Ihrer Anwendung ein anbieterneutrales als Open Source veröffentlichtes Instrumentierungs-Framework wie OpenTelemetry anstelle von anbieter- und produktspezifischen APIs oder Clientbibliotheken zu verwenden. Informationen zu diesen Frameworks finden Sie unter Instrumentierung und Beobachtbarkeit und Instrumentierungsansatz auswählen.

Beobachtbarkeit von Agenten und Anwendungen

Application Monitoring in Google Cloud bietet sowohl Agent- als auch Anwendungsbeobachtbarkeit. Dieser Dienst bietet Dashboards und Topologiekarten, mit denen Sie den Zustand und die Leistung Ihrer App Hub-Anwendungen, -Dienste und -Arbeitslasten nachvollziehen können. Außerdem werden Messwerte wie Fehlerraten und Tokennutzung für KI-Ressourcen generiert und angezeigt. Zum Generieren dieser Messwerte werden Ihre Trace-Daten von Application Monitoring mit anwendungsspezifischen Labels und Ereignissen gefiltert und zusammengefasst, die den semantischen OpenTelemetry-Konventionen für generative KI entsprechen.

Für die Beobachtbarkeit von Agenten empfehlen wir, Ihre Agenten mit dem Agent Development Kit (ADK) Framework zu erstellen. Da das ADK auf OpenTelemetry basiert, entspricht die vom ADK generierte Telemetrie den semantischen OpenTelemetry-Konventionen für generative KI.

Wenn Sie Fehler beheben, Kosten im Blick behalten oder das Verhalten von Agents analysieren möchten – auch von Gemini Enterprise Agent Platform-, Agent Gateway- und Model Armor-Agents –, benötigen Sie Log-, Messwert- und Tracedaten:

  • Protokolle enthalten Informationen zu Ereignissen und Fehlern.
  • Mit Messwerten können Sie Ihre Latenz und die Tokennutzung im Blick behalten.
  • Traces enthalten Informationen zu Ausführungspfaden und werden analysiert, um Messwerte wie die Anzahl der Modellaufrufe oder die Gesamtzahl der verwendeten Tokens abzuleiten. Diese abgeleiteten Messwerte geben Aufschluss über die Leistung und das Verhalten von Agents. Weitere Informationen finden Sie unter KI-Ressourcen ansehen.
  • Mit Prompt- und Antwortdaten können Sie die Qualität und Entscheidungsfindung von Agents mit dem Gen AI Evaluation Service bewerten.

Im Dashboard „Application Monitoring“ für eine Anwendung wird eine Liste der Dienste und Arbeitslasten der Anwendung angezeigt, z. B. Gemini Enterprise-Apps, Gemini Enterprise Agent Platform-Agents und MCP-Server:

Eine Übersicht, in der die Dienste und Arbeitslasten in einer Anwendung aufgeführt sind.

Sie können Agent-basierte Dienste und Arbeitslasten anhand des Infrastrukturtyps oder des App Hub-Funktionstyps identifizieren. Die Spalte „Funktionstyp“ ist standardmäßig ausgeblendet.

Codebeispiele finden Sie hier:

Unterstützung bei der Identifizierung von Fehlern

Error Reporting analysiert Logeinträge aus Cloud Logging auf Fehler. Wenn Error Reporting Fehler findet, werden die zugehörigen Logeinträge mit Anmerkungen versehen und eine Fehlergruppe wird erstellt. Sehen Sie sich diese Fehlergruppen an, um die Ursache und den Verlauf des Fehlers zu ermitteln.

Unterstützung für die Profilerstellung

Mit Cloud Profiler können Sie die CPU- und Arbeitsspeichernutzung Ihrer Anwendungen analysieren, um Möglichkeiten zur Leistungssteigerung zu ermitteln.

Jetzt starten

In diesem Abschnitt werden Schritte beschrieben, mit denen Sie sich mit den Funktionen zur Beobachtbarkeit in Google Cloudvertraut machen können.

Kurzanleitungen ausprobieren

Probieren Sie die Kurzanleitungen aus, um sich mit den verfügbaren Diensten vertraut zu machen.

Automatisch erhobene Daten ansehen

Die meisten Google Cloud Dienste generieren automatisch Log- und Messwertdaten. Das bedeutet, dass Sie sich ohne zusätzliche Konfiguration einige beobachtbare Daten für unterstützteGoogle Cloud -Dienste ansehen können.

  • Einige Google Cloud Dienste wie Google Kubernetes Engine (GKE), Compute Engine und Cloud SQL stellen Standard-Dashboards in der Google Cloud Console bereit, damit sich Beobachtbarkeitsdaten im Kontext des Dienstes aufrufen lassen.
  • Compute Engine, GKE und Cloud Run generieren standardmäßig Systemmesswerte und Logs und Sie konfigurieren die Erfassung zusätzlicher Daten.
  • Cloud Run-Funktionen und App Engine generieren automatisch Messwerte, Logs und Traces.

Sie können auch erfasste Messwerte im Metrics Explorer in einem Diagramm darstellen, Logs im Log-Explorer ansehen oder Traces in Trace aufrufen. Wenn Sie zusammengehörige Daten gemeinsam analysieren möchten, können Sie benutzerdefinierte Dashboards erstellen. Sie können beispielsweise ein Dashboard erstellen, das Protokolle, Leistungsmesswerte und Benachrichtigungsrichtlinien für virtuelle Maschinen enthält.

Compute Engine-VMs zum Erfassen zusätzlicher Daten konfigurieren

Standardmäßig werden von Compute Engine-VMs nur grundlegende Systemmesswerte und Logs erfasst. Sie können jedoch den Ops-Agent installieren, um zusätzliche Telemetriedaten aus Ihren Compute Engine-Instanzen und -Anwendungen zur Fehlerbehebung, Leistungsüberwachung und für Benachrichtigungen zu erfassen. Der Ops-Agent ist keine agentische Anwendung. Stattdessen ist es eine deterministische Software, die Telemetriedaten erfasst.

GKE-Cluster für die Erfassung zusätzlicher Daten konfigurieren

Standardmäßig senden GKE-Cluster Systemlogs und ‑messwerte an Logging und Monitoring. Google Cloud Managed Service for Prometheus übernimmt die Erfassung von benutzerdefinierten Messwerten und solchen von Drittanbietern.

  • Verwenden Sie Pakete für Messwerte zur Beobachtbarkeit, um den Status Ihrer Anwendungen und Clusterressourcen besser zu verstehen. Messwerte der Steuerungsebene sind beispielsweise nützlich, um SLOs zum Überwachen der Dienstverfügbarkeit und ‑latenz zu erstellen.
  • Überwachen Sie Anwendungen von Drittanbietern wie Postgres, MongoDB und Redis. Diese Integrationen bieten vorkonfigurierte Dashboards und Benachrichtigungsrichtlinien.

Cloud Run für die Erfassung benutzerdefinierter Daten konfigurieren

Wenn Sie einen Cloud Run-Dienst haben, derPrometheus-Messwerte schreibt, können Sie denPrometheus-Sidecar verwenden, um die Messwerte an Cloud Monitoring zu senden.

Wenn Ihr Cloud Run-Dienst stattdessen OTLP-Messwerte schreibt, können Sie einen OpenTelemetry-Sidecar verwenden. Ein Beispiel finden Sie in der Anleitung zum Erfassen von OTLP-Messwerten mit dem Sidecar.