Ansatz für die Instrumentierung auswählen

Auf dieser Seite finden Sie Empfehlungen zur Instrumentierung Ihrer App auf verschiedenenGoogle Cloud Plattformen wie Google Kubernetes Engine (GKE) und Cloud Run. Wenn Ihre App noch nicht instrumentiert ist, können Sie diese Empfehlungen als Leitfaden verwenden, um Ihre App so zu instrumentieren, dass Telemetry-Daten an Google Cloudgesendet werden. Die Empfehlungen auf dieser Seite sind nicht die einzigen Lösungen. Es können auch andere Ansätze funktionieren. Weitere Informationen erhalten Sie vom Google Cloud -Support.

Es gibt Empfehlungen für folgende Optionen:

Informationen zu Beispielen für die Instrumentierung finden Sie in den Dokumenten im Abschnitt Codebeispiele.

GKE

Allgemeine Informationen zu GKE finden Sie in der GKE-Übersicht.

Typ Empfehlung
Messwerte

Wir empfehlen die Verwendung von Google Cloud Managed Service for Prometheus.

Führen Sie einen der folgenden Schritte aus, um die Instrumentierung zu aktivieren:

Traces

Gehen Sie dazu so vor:

  1. Verwenden Sie das OpenTelemetry SDK und den OTLP-Exporteur für Ihre Sprache.
  2. Konfigurieren Sie den OpenTelemetry Collector so, dass OTLP-Traces an Google Cloudgesendet werden.
Logs

Konfigurieren Sie Ihre App so, dass JSON-strukturierte Protokolle in stdout und stderr ausgegeben werden. Eine Liste der Frameworks finden Sie unter Empfohlene Logging-Frameworks.

GKE erfasst automatisch Logs, die in stdout und stderr geschrieben werden. Weitere Informationen finden Sie unter GKE-Logs.

Compute Engine

Allgemeine Informationen zur Compute Engine finden Sie unter VM-Instanzen.

Typ Empfehlung
Messwerte und Traces

Gehen Sie dazu so vor:

  1. Verwenden Sie das OpenTelemetry SDK und den OTLP-Exporteur für Ihre Sprache.
  2. Verwenden Sie den Ops-Agent, um Messwerte und Traces zu erfassen. Ein Beispiel finden Sie unter OTLP-Messwerte und -Traces (OpenTelemetry Protocol) erfassen.

Wenn Sie die Erfassung nur für Messwerte im Prometheus-Format konfigurieren möchten, können Sie auch den Ops-Agent-Prometheus-Empfänger verwenden, um Messwerte zu erfassen, die mit Prometheus-Clientbibliotheken oder dem OpenTelemetry SDK instrumentiert wurden.

Logs

Gehen Sie dazu so vor:

  1. Konfigurieren Sie Ihre App so, dass JSON-strukturierte Protokolle in eine Datei ausgegeben werden. Eine Liste der Frameworks finden Sie unter Empfohlene Logging-Frameworks.
  2. Installieren Sie den Ops-Agent und konfigurieren Sie einen Empfänger. Ein Beispiel finden Sie unter Logging-Empfänger.

Cloud Run

Allgemeine Informationen zu Cloud Run finden Sie unter Was ist Cloud Run?

Typ Empfehlung
Messwerte und Traces

Gehen Sie dazu so vor:

  1. Verwenden Sie das OpenTelemetry SDK und den OTLP-Exporteur für Ihre Sprache.
  2. Konfigurieren Sie die OpenTelemetry-Sidecar-Datei so, dass Messwerte und Traces erfasst werden. Ein Beispiel finden Sie unter OTLP-Messwerte mit einem OpenTelemetry-Sidecar schreiben.
  3. Legen Sie die CPU so fest, dass sie in Cloud Run immer zugewiesen wird. Da OpenTelemetry-Instrumentierung Hintergrundverarbeitungen ausführt, empfehlen wir, dass instrumentierte Cloud Run-Dienste eine immer zugewiesene CPU verwenden. Weitere Informationen finden Sie unter CPU-Zuweisung (Dienste).

Wenn Sie die Erfassung nur für Messwerte im Prometheus-Format konfigurieren möchten, können Sie alternativ den Prometheus-Sidecar für Cloud Run verwenden, um Messwerte zu erfassen, die mit Prometheus-Clientbibliotheken oder dem OpenTelemetry SDK instrumentiert wurden.

Logs

Konfigurieren Sie Ihre App so, dass JSON-strukturierte Protokolle in stdout und stderr ausgegeben werden. Eine Liste der Frameworks finden Sie unter Empfohlene Logging-Frameworks.

Cloud Run erfasst automatisch Logs, die in stdout und stderr geschrieben wurden. Weitere Informationen finden Sie unter Containerprotokolle schreiben.

Cloud Run-Funktionen

Allgemeine Informationen zu Cloud Run-Funktionen finden Sie unter Cloud Run-Funktionen – Übersicht.

Typ Empfehlung
Messwerte Das direkte Schreiben von Messwerten wird in Cloud Run-Funktionen nicht unterstützt. Wir empfehlen die Verwendung von logbasierten Messwerten.
Traces Verwenden Sie das SDK und den Cloud Trace-Exporteur für Ihre Sprache.
Logs

Konfigurieren Sie Ihre App so, dass JSON-strukturierte Protokolle in stdout und stderr ausgegeben werden. Eine Liste der Frameworks finden Sie unter Empfohlene Logging-Frameworks.

Cloud Run-Funktionen erfassen automatisch Logs, die in stdout und stderr geschrieben werden. Weitere Informationen finden Sie unter Cloud Run-Funktions-Logs ansehen und schreiben.

App Engine

Allgemeine Informationen zu App Engine finden Sie in der App Engine-Übersicht.

Typ Empfehlung
Messwerte Verwenden Sie das SDK und den Cloud Monitoring-Exporteur für Ihre Sprache.
Traces Verwenden Sie das SDK und den Cloud Trace-Exporteur für Ihre Sprache.
Logs

Konfigurieren Sie Ihre App so, dass JSON-strukturierte Protokolle in stdout und stderr ausgegeben werden. Eine Liste der Frameworks finden Sie unter Empfohlene Logging-Frameworks.

App Engine erfasst automatisch Logs, die in stdout und stderr geschrieben wurden. Weitere Informationen finden Sie unter Logs schreiben und ansehen.

Empfohlene Logging-Frameworks

Zum Erfassen von Protokollen empfehlen wir die Verwendung eines Frameworks, das so konfiguriert werden kann, dass serialisierte JSON-Objekte in stdout, stderr oder in eine Datei ausgegeben werden. Der Logging-Agent, ob integriert oder installiert, liest die Datei und schreibt strukturierte Logs für Cloud Logging. Für das Schreiben von Protokolldaten empfehlen wir Folgendes:

Codebeispiele

Codebeispiele, die zeigen, wie Sie Ihre Anwendung zum Senden von Telemetriedaten an Google Cloudinstrumentieren, finden Sie unter:

Verweise auf OpenTelemetry

In diesem Abschnitt finden Sie Links zum OpenTelemetry SDK und zu den Exporteuren für OTLP, Cloud Trace und Cloud Monitoring.

Allgemeine Referenzen:

Go

Java

JavaScript

Python