In diesem Dokument wird beschrieben, wie Sie den von Google entwickelten OpenTelemetry Collector in Compute Engine ausführen, um OTLP-Logs, ‑Messwerte und ‑Traces aus instrumentierten Anwendungen zu erfassen und diese Daten dann nach zu exportieren Google Cloud.
Hinweis
Für die Ausführung des von Google entwickelten OpenTelemetry Collector sind die folgenden Ressourcen erforderlich:
- Melden Sie sich in Ihrem Google Cloud -Konto an. Wenn Sie noch kein Google Cloud-Konto haben, erstellen Sie ein Konto, um die Leistung unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud Logging, Cloud Monitoring, and Cloud Trace APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud Logging, Cloud Monitoring, and Cloud Trace APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.- Eine Compute Engine-Instanz. Wenn Sie keine Compute Engine Instanz haben, folgen Sie der Anleitung unter Compute Engine-Instanz erstellen und starten.
- Eine Installation von
gcloud. Informationen zur Installation vongcloudfinden Sie untergcloudinstallieren CLI.
Berechtigungen für den Collector konfigurieren
Standardmäßig verwenden Compute Engine-Instanzen das
Compute Engine-Standarddienstkonto,
PROJECT_NUMBER-compute@developer.gserviceaccount.com.
Dieses Dienstkonto hat in der Regel die IAM-Rollen (Identity and Access Management), die zum Schreiben der in diesem Dokument beschriebenen Messwerte und Logs erforderlich sind:
- Monitoring-Messwert-Autor (
roles/monitoring.metricWriter) - Log-Autor (
roles/logging.logWriter) - Cloud Trace-Agent
Wenn Sie anstelle des Standarddienstkontos ein nutzerverwaltetes Dienstkonto verwenden möchten, müssen ihm dieselben Rollen zugewiesen werden. Weitere Informationen finden Sie unter Dienstkonten.
Collector installieren
So installieren Sie den von Google entwickelten OpenTelemetry Collector als Paket für Ihre Compute Engine-Instanz:
Debian und Ubuntu
Stellen Sie mit SSH oder einem ähnlichen Tool eine Terminalverbindung zu Ihrer VM-Instanz her und prüfen Sie, ob Sie
sudo-Zugriff haben.Führen Sie den folgenden Befehl aus, um das Paket-Repository einzurichten:
sudo mkdir -p /etc/apt/keyrings sudo curl -o /etc/apt/keyrings/otelcol-google.asc https://packages.cloud.google.com/apt/doc/apt-key.gpg cat <<EOF | sudo tee /etc/apt/sources.list.d/otelcol-google.list deb [signed-by=/etc/apt/keyrings/otelcol-google.asc] https://us-apt.pkg.dev/projects/cloud-ops-agents-artifacts google-cloud-opentelemetry-collector-apt main EOFAktualisieren Sie Ihren Paketmanager und installieren Sie das Paket:
sudo apt update sudo apt install otelcol-googleNach der Installation wird der von Google entwickelte OpenTelemetry Collector automatisch gestartet.
CentOS, RHEL und Rocky Linux
Stellen Sie mit SSH oder einem ähnlichen Tool eine Terminalverbindung zu Ihrer VM-Instanz her und prüfen Sie, ob Sie
sudo-Zugriff haben.Führen Sie den folgenden Befehl aus, um das Paket-Repository einzurichten:
cat <<EOF | sudo tee /etc/yum.repos.d/otelcol-google.repo [otelcol-google] name=Google Built OpenTelemetry Collector baseurl=https://us-yum.pkg.dev/projects/cloud-ops-agents-artifacts/google-cloud-opentelemetry-collector-yum autorefresh=0 enabled=1 type=rpm-md gpgcheck=1 repo_gpgcheck=0 gpgkey=http://dl.google.com/linux/linux_signing_key.pub EOFInstallieren Sie das Paket:
sudo yum install otelcol-googleNach der Installation wird der von Google entwickelte OpenTelemetry Collector automatisch gestartet.
SLES
Stellen Sie mit SSH oder einem ähnlichen Tool eine Terminalverbindung zu Ihrer VM-Instanz her und prüfen Sie, ob Sie
sudo-Zugriff haben.Führen Sie den folgenden Befehl aus, um das Paket-Repository einzurichten:
cat <<EOF | sudo tee /etc/zypp/repos.d/otelcol-google.repo [otelcol-google] name=Google Built OpenTelemetry Collector baseurl=https://us-yum.pkg.dev/projects/cloud-ops-agents-artifacts/google-cloud-opentelemetry-collector-yum autorefresh=0 enabled=1 type=rpm-md gpgkey=http://dl.google.com/linux/linux_signing_key.pub EOFInstallieren Sie das Paket:
sudo zypper install otelcol-googleNach der Installation wird der von Google entwickelte OpenTelemetry Collector automatisch gestartet.
Windows
Stellen Sie mithilfe von RDP oder einem ähnlichen Tool eine Verbindung zu Ihrer Instanz her und melden Sie sich bei Windows an.
Öffnen Sie ein PowerShell-Terminal mit Administratorberechtigungen. Klicken Sie dazu mit der rechten Maustaste auf das PowerShell-Symbol und wählen Sie Als Administrator ausführen aus.
Führen Sie den folgenden PowerShell-Befehl aus, um das Paket-Repository einzurichten:
googet addrepo otelcol-google ` https://us-googet.pkg.dev/projects/cloud-ops-agents-artifacts/repos/google-cloud-opentelemetry-collector-googetInstallieren Sie das Paket:
googet install otelcol-googleNach der Installation wird der von Google entwickelte OpenTelemetry Collector automatisch gestartet.
Collector bereitstellen
Der von Google entwickelte OpenTelemetry Collector enthält standardmäßig eine minimale Konfiguration, die keine Telemetriedaten exportiert. Wenn Sie Ihre Telemetriedaten exportieren möchten, konfigurieren Sie den Collector nach der Installation, indem Sie die Standard konfiguration überschreiben. Fügen Sie Ihre Konfiguration für den Collector in die folgenden Dateien ein:
- Für Linux:
/etc/otelcol-google/config.yaml - Für Windows:
C:\Program Files\Google\OpenTelemetry Collector\config.yaml
Collector konfigurieren
Wir stellen eine OpenTelemetry Collector-Konfiguration zur Verfügung, die Sie mit dem von Google entwickelten Collector verwenden können. Diese Konfiguration ist für die Bereitstellung großer Mengen von OTLP-Messwerten, ‑Logs und ‑Traces konzipiert. Außerdem soll sie häufige Probleme bei der Aufnahme verhindern. Sie können der Konfiguration Elemente hinzufügen, wir empfehlen jedoch dringend, keine Elemente zu entfernen.
In diesem Abschnitt werden die bereitgestellte Konfiguration, die wichtigsten Komponenten wie Exporteure, Prozessoren und Empfänger sowie andere verfügbare Komponenten beschrieben.
Bereitgestellte Collector-Konfiguration
Die Collector-Konfiguration finden Sie imgoogle-built-opentelemetry-collector
Verzeichnis im
opentelemetry-operations-collector Repository:
Exporteure
Die Collector-Konfiguration enthält die folgenden Exporteure:
googlecloud-Exporter für Logs und Traces. Dieser Exporter ist mit einem Standardlognamen konfiguriert.googlemanagedprometheus-Exporter für Messwerte. Für diesen Exporter ist keine Konfiguration erforderlich, es gibt aber Konfigurationsoptionen. Informationen zu den Konfigurations optionen für dengooglemanagedprometheusExporter finden Sie unter Erste Schritte mit dem OpenTelemetry Collector in der Dokumentation zu Google Cloud Managed Service for Prometheus.
Prozessoren
Die Collector-Konfiguration enthält die folgenden Prozessoren:
batch: Konfiguriert, um Telemetrieanfragen mit der Google Cloud maximalen Anzahl von Einträgen pro Anfrage oder mit dem Google Cloud minimalen Intervall von 5 Sekunden (je nachdem, was zuerst erreicht ist) in Batches zu verarbeiten.memory_limiter: Begrenzt die Arbeitsspeichernutzung des Collectors, um Abstürze aufgrund von Arbeitsspeichermangel zu verhindern. Dazu werden Datenpunkte verworfen, wenn das Limit überschritten wird.resourcedetection: Erkennt automatisch Google Cloud Ressourcenlabels wieproject_id.
Empfänger
Die Collector-Konfiguration enthält nur den
otlp Empfänger.
Informationen zum Instrumentieren Ihrer Anwendungen, um OTLP-Traces
und ‑Messwerte an den OTLP-Endpunkt des Collectors zu senden, finden Sie unter
Instrumentierungsansatz
auswählen.
Verfügbare Komponenten
Der von Google entwickelte OpenTelemetry Collector enthält die Komponenten, die die meisten Nutzer benötigen, um Google Cloud Observability optimal nutzen zu können. Eine vollständige Liste der
verfügbaren Komponenten finden Sie unter
Komponenten
im opentelemetry-operations-collector Repository.
Wenn Sie Änderungen oder Ergänzungen an den verfügbaren Komponenten anfordern möchten,
öffnen Sie eine Funktionsanfrage.
im opentelemetry-operations-collector Repository.
Telemetriedaten generieren
Sie können Ihre Konfiguration mit dem Open-Source
telemetrygen Tool testen. Eine Anleitung zum Herunterladen und Ausführen des Tools finden Sie unter dem Link. Zum Ausführen des Tools müssen Sie entweder Go oder Docker installieren.
Nach einigen Minuten beginnt die von der Anwendung generierte Telemetrie, durch den Collector an die Google Cloud Console zu fließen.
Telemetriedaten ansehen
Der von Google entwickelte OpenTelemetry Collector sendet Messwerte, Logs und Traces aus Ihren instrumentierten Anwendungen an Google Cloud Observability. Der Collector sendet auch Messwerte zur Selbstbeobachtbarkeit. In den folgenden Abschnitten wird beschrieben, wie Sie diese Telemetriedaten ansehen.
Messwerte ansehen
Der von Google entwickelte OpenTelemetry Collector erfasst Prometheus-Messwerte, die Sie mit dem Metrics Explorer aufrufen können. Die erfassten Messwerte hängen von der Instrumentierung der App ab. Der von Google entwickelte Collector schreibt aber auch einige eigene Messwerte.
So rufen Sie die vom von Google entwickelten OpenTelemetry Collector erfassten Messwerte auf:-
Rufen Sie in der Google Cloud Console das leaderboard Metrics Explorer auf:
Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Monitoring ist.
- Wählen Sie in der Symbolleiste der Google Cloud Console Ihr Projekt von Google Cloud aus. Wählen Sie für App Hub-Konfigurationen das App Hub-Hostprojekt oder das Verwaltungsprojekt des für Apps aktivierten Ordners aus.
- Maximieren Sie im Element Messwert das Menü Messwert auswählen , geben Sie
Prometheus Targetin die Filterleiste ein und wählen Sie dann über die Untermenüs einen bestimmten Ressourcentyp und Messwert aus:- Wählen Sie im Menü Aktive Ressourcen die Option Prometheus-Ziel aus.
- Einen Messwert wählen Sie in den Menüs Aktive Messwertkategorien und Aktive Messwerte aus.
Messwerte, die vom von Google entwickelten OpenTelemetry Collector erfasst werden, haben das Präfix
prometheus.googleapis.com. - Klicken Sie auf Übernehmen.
Verwenden Sie das Filter-Element, um Filter hinzuzufügen, mit denen Zeitreihen aus den Abfrageergebnissen entfernt werden.
- Konfigurieren Sie, wie die Daten angezeigt werden.
Wenn die Messungen für einen Messwert kumulativ sind, normalisiert Metrics Explorer die gemessenen Daten automatisch nach dem Ausrichtungszeitraum. Dadurch wird im Diagramm eine Rate angezeigt. Weitere Informationen finden Sie unter Arten, Typen und Umwandlungen.
Wenn ganzzahlige oder doppelte Werte gemessen werden, z. B. mit
counter-Messwerten, summiert der Metrics Explorer automatisch alle Zeitachsen. Wenn Sie dieses Verhalten ändern möchten, legen Sie im ersten Menü des Eintrags Aggregation die Option Keine fest.Weitere Informationen zum Konfigurieren eines Diagramms finden Sie unter Messwerte bei Verwendung von Metrics Explorer auswählen.
Traces ansehen
So rufen Sie Ihre Trace-Daten auf:
-
Rufen Sie in der Google Cloud Console die Seite
Trace Explorer auf:
Sie können diese Seite auch über die Suchleiste finden.
- Wählen Sie in der Symbolleiste der Google Cloud Console, Ihr Google Cloud Projekt aus. Wählen Sie für App Hub Konfigurationen das App Hub-Hostprojekt oder das Verwaltungsprojekt aus.
- Wählen Sie im Tabellenbereich der Seite eine Zeile aus.
Wählen Sie im Gantt-Diagramm im Bereich Trace-Details einen Span aus.
Ein Steuerfeld mit Informationen zur getraceten Anfrage wird geöffnet. Zu diesen Details gehören die Methode, der Statuscode, die Anzahl der Byte und der User-Agent des Aufrufers.
Wählen Sie den Tab Logs und Ereignisse aus, um die mit diesem Trace verknüpften Logs aufzurufen.
Auf dem Tab werden einzelne Logs angezeigt. Maximieren Sie den Logeintrag, um die Details anzusehen. Sie können auch auf Logs ansehen klicken und das Log mit dem Log-Explorer aufrufen.
Weitere Informationen zur Verwendung von Cloud Trace-Explorer finden Sie unter Traces suchen und untersuchen.
Logs ansehen
Im Log-Explorer können Sie Ihre Logs prüfen und sich auch die zugehörigen Traces ansehen, sofern vorhanden.
-
Rufen Sie in der Google Cloud Console das Segment und die Seite Log-Explorer auf:
Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis mit der Zwischenüberschrift Logging aus.
Suchen Sie einen Logeintrag aus Ihrer instrumentierten App. Maximieren Sie den Logeintrag, um die Details aufzurufen.
Klicken Sie auf
Traces für einen Logeintrag mit einer Trace
Nachricht und wählen Sie dann Trace-Details anzeigen aus.Der Bereich Trace-Details wird geöffnet und zeigt den ausgewählten Trace an.
Weitere Informationen zur Verwendung des Log-Explorers finden Sie unter Logs mit dem Log-Explorer ansehen.
Collector beobachten und debuggen
Der von Google entwickelte OpenTelemetry Collector bietet automatisch Messwerte zur Selbstbeobachtbarkeit, mit denen Sie die Leistung überwachen und eine kontinuierliche Verfügbarkeit der OTLP-Aufnahmepipeline gewährleisten können.
Wenn Sie den Collector überwachen möchten, installieren Sie das Beispiel-Dashboard für den Collector. Dieses Dashboard bietet einen übersichtlichen Überblick über verschiedene Messwerte des Collectors, einschließlich Betriebszeit, Arbeitsspeichernutzung und API-Aufrufe an Google Cloud Observability.
So installieren Sie das Dashboard:
-
Öffnen Sie in der Google Cloud Console die Dashboards Seite:
Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Monitoring ist.
- Klicken Sie auf Dashboard-Vorlagen.
- Suchen Sie nach dem Dashboard OpenTelemetry Collector.
- Optional: Wenn Sie eine Vorschau des Dashboards aufrufen möchten, wählen Sie es aus.
Klicken Sie auf playlist_add Dashboard in Liste aufnehmen und füllen Sie das Dialogfeld aus.
Im Dialogfeld können Sie den Namen des Dashboards auswählen und Labels hinzufügen.
Weitere Informationen zum Installieren von Dashboards finden Sie unter Dashboard Vorlage installieren.