使用 OpenTelemetry 擷取自訂用戶端指標

本文說明如何使用 OpenTelemetry 擷取自訂用戶端指標。您可以使用 JavaGo 用戶端程式庫,取得自訂用戶端指標。

自訂用戶端指標可協助您找出系統中的延遲來源。詳情請參閱「Spanner 要求的延遲時間點」。

Spanner 用戶端程式庫也會使用 OpenTelemetry 觀測架構提供統計資料和追蹤記錄。詳情請參閱「使用 OpenTelemetry 設定追蹤記錄收集作業」。

OpenTelemetry 是一項開放原始碼可觀測性架構和工具包,可供您建立及管理遙測資料,例如追蹤記錄、指標和記錄。

事前準備

您必須設定 OpenTelemetry SDK,並提供適當選項,才能匯出遙測資料。建議使用 OpenTelemetry Protocol (OTLP) 匯出器。

如要使用 OpenTelemetry 設定自訂用戶端指標,請設定 OpenTelemetry SDK 和 OTLP 匯出工具:

  1. 使用下列程式碼,將必要依附元件新增至應用程式:

    Java

    <dependencyManagement>
      <dependencies>
        <dependency>
          <groupId>com.google.cloud</groupId>
          <artifactId>libraries-bom</artifactId>
          <version>26.32.0</version>
          <type>pom</type>
          <scope>import</scope>
        </dependency>
        <dependency>
          <groupId>io.opentelemetry</groupId>
          <artifactId>opentelemetry-bom</artifactId>
          <version>1.35.0</version>
          <type>pom</type>
          <scope>import</scope>
        </dependency>
      </dependencies>
    </dependencyManagement>
    
    <dependencies>
      <dependency>
        <groupId>com.google.cloud</groupId>
        <artifactId>google-cloud-spanner</artifactId>
      </dependency>
      <dependency>
        <groupId>io.opentelemetry</groupId>
        <artifactId>opentelemetry-sdk</artifactId>
      </dependency>
      <dependency>
        <groupId>io.opentelemetry</groupId>
        <artifactId>opentelemetry-sdk-metrics</artifactId>
      </dependency>
      <dependency>
        <groupId>io.opentelemetry</groupId>
        <artifactId>opentelemetry-sdk-trace</artifactId>
      </dependency>
      <dependency>
        <groupId>io.opentelemetry</groupId>
        <artifactId>opentelemetry-exporter-otlp</artifactId>
      </dependency>
    </dependencies>

    Go

    go.opentelemetry.io/otel v1.43.0
    go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.28.0
    go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.28.0