Übersicht
Auf dieser Seite wird beschrieben, wie Sie Ihre Umgebung und Ihre Node.js-Anwendung für die Verwendung von Cloud Debugger konfigurieren.
In einigen Umgebungen müssen Sie, damit der Cloud Debugger-Agent Daten senden kann, den Zugriffsbereich explizit angeben.
Es wird empfohlen, den größtmöglichen Zugriffsbereich festzulegen und anschließend den Zugriff mit der Identitäts- und Zugriffsverwaltung einzuschränken.
Geben Sie den Zugriffsbereich entsprechend dieser Best Practice für alle Cloud APIs mit der Option cloud-platform
an.
Sprachversionen und Computing-Umgebungen
Cloud Debugger ist für Node.js 9 und höher in den folgenden Rechenumgebungen verfügbar:
App Engine-Standardumgebung | Flexible App Engine-Umgebung | Compute Engine | Google Kubernetes Engine | Cloud Run | Cloud Run for Anthos | Andernorts ausgeführte VMs und Container | Cloud Functions |
---|---|---|---|---|---|---|---|
Cloud Debugger einrichten
Führen Sie die folgenden Aufgaben aus, um Cloud Debugger einzurichten:
Prüfen Sie, ob die Cloud Debugger API für Ihr Projekt aktiviert ist.
Installieren und konfigurieren Sie den Debugger in der von Ihnen verwendeten Rechenumgebung.
Wählen Sie den Quellcode aus.
Prüfen, ob die Cloud Debugger API aktiviert ist
Wenn Sie Cloud Debugger verwenden möchten, muss die Cloud Debugger API aktiviert sein. Cloud Debugger ist standardmäßig für die meisten Projekte aktiviert.Cloud Debugger API aktivieren
Canary-Snapshots und -Logpoints
Aktivieren Sie den Canary-Modus für Debugger-Agent, damit Snapshots und Logpoints nicht auf allen ausgeführten Instanzen gleichzeitig geladen werden und der Job aufgrund eines potenziellen Programmfehlers im Debugger-Agent deaktiviert wird. Wenn der Canary-Modus aktiviert ist, wird ein Snapshot oder Logpoint auf eine Teilmenge der ausgeführten Instanzen angewendet und Debugger prüft, ob der Snapshot oder Logpoint diese Instanzen nicht beeinträchtigt. Nach Abschluss der Prüfung wird der Snapshot oder Logpoint auf alle Instanzen angewendet.
Informationen zur Verwendung des Debuggers im Canary-Modus finden Sie auf den Seiten Snapshots zur Fehlerbehebung und Logpoints zur Fehlerbehebung.
Canary-Snapshots und -Logpoints aktivieren
Wenn Sie die neueste Version des Debugger-Agents installieren, können Sie Canary-Tests aktivieren oder deaktivieren. Canary-Tests sind standardmäßig deaktiviert.
Wann Canary-Snapshots und -Logpoints aktiviert werden sollten
Um Bereitstellungs- und produktionskritische Arbeitslasten zu schützen, aktivieren Sie beim Debuggen dieser Arbeitslasten Canary-Tests.
Wenn Sie eine einzelne Instanz haben, können Sie zwar mit aktivierten Canary-Tests Fehler beheben, aber Ihre einzelne Instanz wird ausgeführt, ohne den Canary-Test am Snapshot oder Logpoint auszuführen.
Wann Canary-Snapshots und -Logpoints nicht aktiviert werden sollten
Aktivieren Sie Canary-Tests nicht für Arbeitslasten, die eine Ausführungszeit von weniger als 40 Sekunden haben, beispielsweise Jobs mit Cloud Functions.
Aktivieren Sie Canary-Tests nicht, wenn Sie einen schnelleren Auslösungszyklus für Snapshots wünschen.
Wenn Sie den Debugger-Agent so konfigurieren möchten, dass keine Snapshots und Logpoints erstellt werden, lesen Sie die Installationsanleitung für die verwendete Google Cloud Platform.
App Engine
Installieren Sie das Paket mit npm:
npm install --save @google-cloud/debug-agent
Aktivieren Sie den Agent am Anfang des Hauptskripts oder des Einstiegspunkts Ihrer Anwendung (aber gegebenenfalls nach
@google/cloud-trace
):So beheben Sie Fehler mit aktiviertem Canary-Test:
require('@google-cloud/debug-agent').start({serviceContext: {enableCanary: true}});
Wenn Sie das Debugging mit dem Canary-Release nicht aktivieren möchten, setzen Sie
enableCanary
auffalse
:require('@google-cloud/debug-agent').start({serviceContext: {enableCanary: false}});
Der Debugger ist jetzt bereit für die Verwendung mit Ihrer App.
Unter Quellcode automatisch auswählen erfahren Sie, wie in der Google Cloud Console auf der Seite „Fehlerbehebung“ automatisch Quellcode angezeigt wird, der mit der bereitgestellten Anwendung übereinstimmt.
Google Kubernetes Engine
GCLOUD
Mit den folgenden Schritten aktivieren Sie Debugger mit gcloud
:
Erstellen Sie Ihren Cluster mit einem der folgenden Zugriffsbereiche:
https://www.googleapis.com/auth/cloud-platform
gewährt Ihrem Cluster Zugriff auf alle Google Cloud APIs.https://www.googleapis.com/auth/cloud_debugger
gewährt Ihrem Cluster nur Zugriff auf die Debugger API. Verwenden Sie diesen Zugriffsbereich, um die Sicherheit Ihres Clusters zu härten.
gcloud container clusters create example-cluster-name \ --scopes=https://www.googleapis.com/auth/cloud_debugger
Fügen Sie die folgende Zeile Ihrem
Dockerfile
hinzu, um den Debugger-Agent hinzuzufügen:RUN npm install --save @google-cloud/debug-agent
Aktivieren Sie den Agent am Anfang des Hauptskripts oder des Einstiegspunkts Ihrer Anwendung (aber gegebenenfalls nach
@google/cloud-trace
):So beheben Sie Fehler mit aktiviertem Canary-Test:
require('@google-cloud/debug-agent').start({ serviceContext: { service: 'SERVICE', version: 'VERSION', enableCanary: true, } });
Wenn Sie das Debugging mit dem Canary-Release nicht aktivieren möchten, setzen Sie
enableCanary
auffalse
:enableCanary: false
Wobei:
SERVICE
ist ein Name für Ihre Anwendung, z. B.MyApp
,Backend
oderFrontend
.VERSION
ist eine Version, z. B.v1.0
,build_147
oderv20170714
.
Wir empfehlen, diese über Umgebungsvariablen festzulegen, damit Sie den Quellcode nicht bei jeder Bereitstellung ändern müssen.
Der Debugger ist jetzt einsatzbereit, wenn Sie Ihre containerisierte Anwendung bereitstellen.
Unter Quellcode automatisch auswählen erfahren Sie, wie in der Google Cloud Console auf der Seite „Fehlerbehebung“ automatisch Quellcode angezeigt wird, der mit der bereitgestellten Anwendung übereinstimmt.
KONSOLE
So aktivieren Sie Debugger mit der Google Cloud Console:
Wählen Sie im Abschnitt Knotenpools die Option Sicherheit und dann Zugriff für jede API festlegen aus.
Debugger aktivieren
Optional: Wählen Sie Uneingeschränkten Zugriff auf alle Cloud-APIs zulassen aus.
Fügen Sie die folgende Zeile Ihrem
Dockerfile
hinzu, um den Debugger-Agent hinzuzufügen:RUN npm install --save @google-cloud/debug-agent
Aktivieren Sie den Agent am Anfang des Hauptskripts oder des Einstiegspunkts Ihrer Anwendung (aber gegebenenfalls nach
@google/cloud-trace
):So beheben Sie Fehler mit aktiviertem Canary-Test:
require('@google-cloud/debug-agent').start({ serviceContext: { service: 'SERVICE', version: 'VERSION', enableCanary: true, } });
Wenn Sie das Debugging mit dem Canary-Release nicht aktivieren möchten, setzen Sie
enableCanary
auffalse
:enableCanary: false
Wobei:
SERVICE
ist ein Name für Ihre Anwendung, z. B.MyApp
,Backend
oderFrontend
.VERSION
ist eine Version, z. B.v1.0
,build_147
oderv20170714
.
Wir empfehlen, diese über Umgebungsvariablen festzulegen, damit Sie den Quellcode nicht bei jeder Bereitstellung ändern müssen.
Compute Engine
Stellen Sie sicher, dass Ihre Compute Engine-VM-Instanzen mit der Zugriffsbereichsoption Vollen Zugriff auf alle Cloud-APIs zulassen eingerichtet sind oder einen der folgenden Zugriffsbereiche haben:
https://www.googleapis.com/auth/cloud-platform
https://www.googleapis.com/auth/cloud_debugger
Installieren Sie das Paket mit npm:
npm install --save @google-cloud/debug-agent
Aktivieren Sie den Agent am Anfang des Hauptskripts oder des Einstiegspunkts Ihrer Anwendung (aber gegebenenfalls nach
@google/cloud-trace
):So beheben Sie Fehler mit aktiviertem Canary-Test:
require('@google-cloud/debug-agent').start({ serviceContext: { service: 'SERVICE', version: 'VERSION', enableCanary: true, } });
Wenn Sie das Debugging mit dem Canary-Release nicht aktivieren möchten, setzen Sie
enableCanary
auffalse
:enableCanary: false
Wobei:
SERVICE
ist ein Name für Ihre Anwendung, z. B.MyApp
,Backend
oderFrontend
.VERSION
ist eine Version, z. B.v1.0
,build_147
oderv20170714
.
Wir empfehlen, diese über Umgebungsvariablen festzulegen, damit Sie den Quellcode nicht bei jeder Bereitstellung ändern müssen.
Der Debugger ist jetzt bereit für die Verwendung mit Ihrer App.
Unter Quellcode automatisch auswählen erfahren Sie, wie in der Google Cloud Console auf der Seite „Fehlerbehebung“ automatisch Quellcode angezeigt wird, der mit der bereitgestellten Anwendung übereinstimmt.
Cloud Run und Cloud Run for Anthos
Installieren Sie das Paket mit npm:
npm install --save @google-cloud/debug-agent
Aktivieren Sie den Agent am Anfang des Hauptskripts oder des Einstiegspunkts Ihrer Anwendung (aber gegebenenfalls nach
@google/cloud-trace
):So beheben Sie Fehler mit aktiviertem Canary-Test:
require('@google-cloud/debug-agent').start({serviceContext: {enableCanary: true}});
Wenn Sie das Debugging mit dem Canary-Release nicht aktivieren möchten, setzen Sie
enableCanary
auffalse
:enableCanary: false
Der Debugger ist jetzt einsatzbereit, wenn Sie Ihre Anwendung bereitstellen.
Lokal und an anderer Stelle
Installieren Sie das Paket mit npm:
npm install --save @google-cloud/debug-agent
Laden Sie Anmeldedaten für das Dienstkonto herunter.
Wenn Sie den Cloud Debugger-Agent für Node.js auf einer Maschine verwenden möchten, die nicht von Google Cloud gehostet wird, muss sich der Agent mithilfe der Anmeldedaten eines Google Cloud-Dienstkontos beim Cloud Debugger-Dienst authentifizieren.
Erstellen Sie auf der Seite „Dienstkonten“ der Google Cloud Console eine Datei mit Anmeldedaten für ein vorhandenes oder neues Dienstkonto. Das Dienstkonto muss mindestens die Rolle
Cloud Debugger Agent
haben.Konfigurieren und aktivieren Sie den Agent mit den heruntergeladenen Anmeldedaten.
So beheben Sie Fehler mit aktiviertem Canary-Test:
require('@google-cloud/debug-agent').start({ projectId: 'your-project-id', keyFilename: '/path/to/key.json', serviceContext: { service: 'SERVICE', version: 'VERSION', enableCanary: true, } });
Wenn Sie das Debugging mit dem Canary-Release nicht aktivieren möchten, setzen Sie
enableCanary
auffalse
:enableCanary: false
Wobei:
SERVICE
ist ein Name für Ihre Anwendung, z. B.MyApp
,Backend
oderFrontend
.VERSION
ist eine Version, z. B.v1.0
,build_147
oderv20170714
.
Wir empfehlen, diese über Umgebungsvariablen festzulegen, damit Sie den Quellcode nicht bei jeder Bereitstellung ändern müssen.
Der Debugger ist jetzt bereit für die Verwendung mit Ihrer App.
Auf der Seite „Fehlerbehebung“ in der Google Cloud Console können lokale Quelldateien ohne Hochladen für die lokale Entwicklung angezeigt werden. Weitere Informationen finden Sie unter Quellcode manuell auswählen.