In diesem Dokument wird beschrieben, wie Sie Ihrer Anwendung mithilfe von OpenTelemetry Code zur Beobachtbarkeit hinzufügen. OpenTelemetry bietet Instrumentierungsbibliotheken, Telemetrie für gängige Frameworks zu generieren. Sie können die von der Bibliothek generierte Telemetrie ergänzen, indem Sie benutzerdefinierte Instrumentierung hinzufügen, mit der das anwendungsspezifische Verhalten gemessen wird.
Die in diesem Dokument beschriebenen Prinzipien und Konzepte können auf Apps angewendet werden. die in allen von OpenTelemetry unterstützten Sprachen geschrieben sind. Weitere Informationen zu Instrumentierung finden Sie in den folgenden Dokumenten:
Den Beispielcode, bei dem es sich um dieselbe Go-Anwendung handelt, die in Traces und Messwerte mit Go generieren ist in GitHub verfügbar. Um das vollständige Beispiel anzusehen, klicken Sie auf more_vert Mehr. und wählen Sie dann Auf GitHub ansehen aus.
Hinweise
Enable the Cloud Logging, Cloud Monitoring, and Cloud Trace APIs.
Benutzerdefinierte Traces erstellen
Wenn Sie benutzerdefinierte Traces aus Ihrer Anwendung generieren möchten, fügen Sie Instrumentierungscode hinzu, mit dem OpenTelemetry-Spans erstellt werden. In OpenTelemetry Spans sind die Bausteine für Traces.
So erstellen Sie einen Abschnitt:
Ändern Sie Ihre App so, dass eine OpenTelemetry-
Tracer
abgerufen wird. In OpenTelemetry Ein Tracer erstellt Spans. Sie können einen Tracer wie in den folgenden Code:Der Tracer-Name, der durch
scopeName
dargestellt wird, gibt den Instrumentierungsumfang der generierten Traces an.Verwenden Sie die Instanz
tracer
, um Spans zu erstellen. Im folgenden Codebeispiel generiert die FunktioncomputeSubrequests
jedes Mal, wenn sie aufgerufen wird, einen Span:Im vorherigen Codebeispiel steht der von der
computeSubrequests
-Funktion generierte Bereich für die gesamte Funktion. Das liegt daran, dass im ersten Schritt der Funktion eine neue Span mittracer.Start
und dem Schlüsselwortdefer
gestartet wird, bevor diespan.End()
dafür sorgt, dass die Span kurz vor dem Ende der Funktion beendet wird.
Benutzerdefinierte Messwerte erstellen
Zum Generieren von Messwerten aus Ihrer Anwendung fügen Sie Instrumentierungscode, der Messungen aufzeichnet, die während der Ausführung.
So erstellen Sie Messwerte:
Ändern Sie Ihre App so, dass eine OpenTelemetry-
Meter
abgerufen wird. In OpenTelemetry bietet ein Messgerät Zugriff auf Messinstrumente zum Erfassen von Messwerten. Sie können ein Messgerät erwerben, wie unten gezeigt. Code:Der Messwertname, der durch
scopeName
dargestellt wird, gibt den Instrumentierungsumfang der generierten Messwerte an.Verwenden Sie die Instanz
meter
, um Instrumente zu erstellen, die Messwerte aufzeichnen können. Im folgenden Code wird beispielsweisemeter
verwendet, um ein OpenTelemetry-Histogramm zu erstellen:Mit dem vorherigen Code wird ein Histogramm mit dem Namen
sleepHistogram
generiert.Verwenden Sie die Instanz
sleepHistogram
, um die Ruhezeit aufzuzeichnen, die wird festgelegt, wenn die FunktionrandomSleep
aufgerufen wird:Die von diesen Instrumenten aufgezeichneten Messwerte werden aus Ihrem basierend auf Ihrer OpenTelemetry-Exporter-Konfiguration.
Nächste Schritte
- Messwerte und Traces mithilfe von Beispielen korrelieren
- OpenTelemetry
- OpenTelemetry-Instrumentierung
- OpenTelemetry-Messwert-Datenmodell