Sie können Cloud Trace für Ruby-Anwendungen mit der Cloud Trace-Bibliothek für Ruby aktivieren.
Bibliothek installieren
Installieren Sie Ruby 2.2 oder höher.
Fügen Sie das Stackdriver-Gem in Ihr Gemfile ein:
Installieren Sie das Gem mit Bundler:
bundle install
Bibliothek aktivieren
Rails
Wenn Sie Ruby on Rails verwenden, lädt Bundler automatisch die Bibliothek in Ihre Anwendung, wenn sie gestartet wird.
Andere (nicht Rails)
Andere rackbasierte Anwendungen können die Rack-Middleware aus der Bibliothek verwenden:
Weitere Informationen oder Angaben zum Melden von Problemen mit der Bibliothek finden Sie im Quellcode-Repository der Bibliothek.
Client konfigurieren
Sie können das Verhalten der Cloud Trace-Bibliothek für Ruby anpassen. Die Konfiguration der Bibliothek enthält eine Liste der Konfigurationsmöglichkeiten.
Benutzerdefinierten Trace-Span hinzufügen
Die Cloud Trace-Bibliothek für Ruby erstellt automatisch einen Trace-Eintrag für jede Anfrage, die Ihre Rack-Anwendung erhält. Sie können auch benutzerdefinierte Trace-Spans in jeder Anfrage hinzufügen:
Plattform konfigurieren
Sie können Cloud Trace in Google Cloud und auf anderen Plattformen verwenden.
In Google Cloud ausführen
Wenn Ihre Anwendung in Google Cloud ausgeführt wird, müssen Sie für die Clientbibliothek keine Anmeldedaten zur Authentifizierung in der Clientbibliothek angeben. Sie müssen jedoch sicherstellen, dass Ihre Google Cloud Platform Zugriffsbereich der Cloud Trace API aktiviert.
Eine Liste der unterstützten Google Cloud-Umgebungen finden Sie unter Umgebungsunterstützung.
Für die folgenden Konfigurationen wird die Cloud Trace API über die Standardeinstellungen für den Zugriffsbereich aktiviert:
- Flexible App Engine-Umgebung
App Engine-Standardumgebung
Google Kubernetes Engine (GKE)
Compute Engine
Cloud Run
Wenn Sie benutzerdefinierte Zugriffsbereiche verwenden, Zugriffsbereich der Cloud Trace API aktiviert ist:
Informationen zur Konfiguration des Zugriffsbereiche für Ihre Umgebung mithilfe der Google Cloud Console erstellen, finden Sie unter Google Cloud-Projekt konfigurieren
Geben Sie für
gcloud
-Nutzer mithilfe des Flags--scopes
Zugriffsbereiche an und beziehen Sie den Zugriffsbereich der Cloud Trace APItrace.append
ein. So erstellen Sie beispielsweise einen GKE-Cluster, für den nur die Cloud Trace API aktiviert ist:gcloud container clusters create example-cluster-name --scopes=https://www.googleapis.com/auth/trace.append
Lokal und extern ausführen
Wenn Ihre Anwendung außerhalb von Google Cloud ausgeführt wird, müssen Sie Anmeldedaten zur Authentifizierung in Form eines Dienstkontos für die Clientbibliothek angeben. Das Dienstkonto muss die Rolle "Cloud Trace-Agent" enthalten. Informationen dazu finden Sie unter Dienstkonto erstellen.
Die Google Cloud-Clientbibliotheken für Ruby verwenden die Standardanmeldedaten für Anwendungen (Application Default Credentials, ADC) bei der Suche nach den Anmeldedaten Ihrer Anwendung. Im folgenden Abschnitt wird beschrieben, wie Sie diese Anmeldedaten und die Google Cloud-Projekt-ID festlegen.
Google Cloud-Projekt-ID und Anmeldedaten festlegen
In diesem Abschnitt werden drei verschiedene Ansätze dafür beschrieben, wie Sie in der Ruby-Anwendung die Google Cloud-Projekt-ID, die Anmeldedaten für die Authentifizierung oder beides festlegen.
Umgebungsvariable
Wenn Sie die Google Cloud-Projekt-ID nicht explizit angeben, legt die Ruby-Bibliothek google-cloud
automatisch fest, ob die Umgebungsvariable GOOGLE_CLOUD_PROJECT
festgelegt ist. Wenn ja, verwendet die Bibliothek den Wert von GOOGLE_CLOUD_PROJECT
als Google Cloud-Projekt-ID. Weitere Informationen finden Sie unter Authentifizierung.
Wie bereits beschrieben verwenden die Google Cloud-Clientbibliotheken die Standardanmeldedaten für Anwendungen (Application Default Credentials, ADC) zur Suche nach den Anmeldedaten Ihrer Anwendung. Um diese Anmeldedaten anzugeben, können Sie die Umgebungsvariable GOOGLE_APPLICATION_CREDENTIALS
festlegen:
Linux/macOS
export GOOGLE_CLOUD_PROJECT=your-project-id
export GOOGLE_APPLICATION_CREDENTIALS=/path/to/key.json
Windows
Befehlsfenster:
set GOOGLE_CLOUD_PROJECT=your-project-id
set GOOGLE_APPLICATION_CREDENTIALS=/path/to/key.json
PowerShell:
$env:GOOGLE_CLOUD_PROJECT="your-project-id"
$env:GOOGLE_APPLICATION_CREDENTIALS="/path/to/key.json"
Konfigurationsoberfläche von Ruby on Rails
Wenn Sie Ruby on Rails verwenden, können Sie die Parameter über die Konfigurationsoberfläche von Ruby on Rails angeben:
Sie können eine gemeinsame Konfiguration für alle Stackdriver-Gems festlegen, wenn Sie Folgendes eingeben:
Trace ist standardmäßig aktiviert, wenn Rails im Produktionsmodus ausgeführt wird. Fügen Sie Folgendes hinzu, um Trace im Entwicklungsmodus zu aktivieren:
Konfigurationsoberfläche für die Instrumentierung
Eine weitere Alternative für Ruby besteht darin, die Parameter über die Konfigurationsoberfläche bereitzustellen, wenn sie in anderen Rack-basierten Anwendungen verwendet werden:
Sie können eine gemeinsame Konfiguration für alle Stackdriver-Gems festlegen, wenn Sie Folgendes eingeben:
Traces ansehen
Rufen Sie in der Google Cloud Console die Seite Trace Explorer auf:
Sie können diese Seite auch über die Suchleiste finden.
Fehlerbehebung
Informationen zur Fehlerbehebung bei Cloud Trace finden Sie auf der Seite Fehlerbehebung.