Clientseitige Messwerte einrichten

Auf dieser Seite erfahren Sie, wie Sie clientseitige Bigtable-Messwerte installieren, einrichten und verwenden.

Clientseitige Messwerte stehen für Nutzer der folgenden Clientbibliotheken zur Verfügung:

Eine Übersicht finden Sie unter Übersicht über clientseitige Messwerte. Eine ausführliche Liste der Messwerte finden Sie unter Clientseitige Messwertbeschreibungen.

Dienstkontoberechtigungen hinzufügen oder bestätigen

So fügen Sie dem Dienstkonto IAM-Berechtigungen hinzu:

  1. Öffnen Sie in der Google Cloud Console die Seite IAM.

    IAM aufrufen

  2. Wählen Sie das Projekt aus, in dem Sie den Bigtable-Cluster erstellt haben.

  3. Suchen Sie nach dem Dienstkonto, dem Sie die Berechtigung hinzufügen möchten.

  4. Klicken Sie auf Hauptkonto bearbeiten.

  5. Klicken Sie auf „Weitere Rolle“ hinzufügen.

  6. Suchen Sie nach „Monitoring-Messwert-Autor“ und wählen Sie das Ergebnis aus.

  7. Klicken Sie auf Speichern.

Cloud Monitoring API aktivieren

  1. Rufen Sie in der Google Cloud Console die Seite APIs & Dienste auf.

    Rufen Sie „APIs & Dienste“ auf.

  2. Wählen Sie das Projekt aus, in dem Sie den Bigtable-Cluster erstellt haben.

  3. Klicken Sie auf APIs und Dienste aktivieren.

  4. Suchen Sie nach „Monitoring“.

  5. Klicken Sie in den Suchergebnissen auf "Stackdriver Monitoring API".

  6. Wenn "API aktiviert" angezeigt wird, ist die API bereits aktiviert. Wenn nicht, klicken Sie auf Aktivieren.

Bigtable-Clientbibliothek einrichten

Nachdem Sie die Cloud Monitoring API aktiviert haben, konfigurieren Sie Ihre Bigtable-Clientbibliothek.

Go

Führen Sie diese Schritte aus, wenn Sie die Bigtable-Clientbibliothek für Go verwenden, die die Bigtable APIs aufruft.

Clientbibliothek für Go installieren und konfigurieren

Aktualisieren Sie die Bigtable-Clientbibliothek für Go auf Version 1.27.0 oder höher. Ihr go.mod sollte in etwa so aussehen:

require (
  cloud.google.com/go/bigtable v1.27.2-0.20240725222120-ce31365acc54

Optional: Clientseitige Messwerte deaktivieren

Clientseitige Messwerte sind in der Go-Clientbibliothek standardmäßig aktiviert. Wenn du die Funktion deaktivieren möchtest, gib NoopMetricsProvider in das ClientConfig ein:

client, err := bigtable.NewClientWithConfig(ctx, project, instance,
bigtable.ClientConfig{MetricsProvider: bigtable.NoopMetricsProvider{},
})

HBase

Führen Sie diese Schritte aus, wenn Sie den Bigtable HBase-Client für Java, der die HBase API aufruft, verwenden, um Ihre Anwendung mit Bigtable zu verbinden.

HBase-Clientbibliothek für Java installieren und konfigurieren

  1. Laden Sie den neuesten Bigtable HBase-Client für Java herunter und installieren Sie ihn. Zum Aktivieren clientseitiger Messwerte müssen Sie Version 2.6.4 oder höher verwenden.

  2. Erstellen Sie ein leeres Maven-Projekt.

  3. Ermitteln Sie die Artefaktabhängigkeit, die für Ihren Anwendungsfall geeignet ist. Die 2.x-Versionen enthalten einen asynchronen HBase-Client, den die 1.x-Versionen nicht haben.

    • bigtable-hbase-1.x oder bigtable-hbase-2.x: Wird für eigenständige Anwendungen verwendet, in denen Sie die Kontrolle über Ihre Abhängigkeiten haben.
    • bigtable-hbase-1.x-hadoop oder bigtable-hbase-2.x-hadoop: Verwendung in Hadoop-Umgebungen.
    • bigtable-hbase-1.x-shaded oder bigtable-hbase-2.x-shaded: Verwendung in anderen Umgebungen als Hadoop, für die ältere Versionen von Komponenten wie protobufs oder Guava erforderlich sind.
  4. Aktualisieren Sie die Datei pom.xml:

    <dependencyManagement>
        <dependencies>
            <dependency>
                  <groupId>com.google.cloud.bigtable</groupId>
                  <artifactId>BIGTABLE_HBASE_ARTIFACT</artifactId>
                  <version>VERSION_NUMBER</version>
              </dependency>
        </dependencies>
    </dependencyManagement>
    

    Machen Sie folgende Angaben:

    • BIGTABLE_HBASE_ARTIFACT: Die Artefaktabhängigkeit für Ihr Projekt, formatiert als bigtable-hbase-1.x oder bigtable-hbase-2.x-hadoop.
    • VERSION_NUMBER: Die von Ihnen verwendete Version der Clientbibliothek, formatiert wie 2.6.4

Clientseitige Messwerte in Ihrer Anwendung aktivieren

bigtable-hbase-1.x oder bigtable-hbase-2.x verwenden

Wenn Sie eine Verbindung mit der HBase-Clientbibliothek und den Artefakten bigtable-hbase-1.x oder bigtable-hbase-2.x erstellen, sieht Ihr Code zum Aktivieren der integrierten clientseitigen Messwerte etwa so aus:

  import com.google.cloud.bigtable.data.v2.BigtableDataSettings;

  Configuration configuration = BigtableConfiguration.configure("my-project-id", "my-instance-id");
  Connection connection = new BigtableConnection(configuration);

  BigtableDataSettings.enableBuiltinMetrics();

-hadoop- oder -shaded-Artefakte verwenden

Wenn Sie eine Verbindung mit der HBase-Clientbibliothek und einem der -hadoop- oder -shaded-Artefakte erstellen, sieht Ihr Code zum Aktivieren der integrierten clientseitigen Messwerte etwa so aus:

  import com.google.bigtable.repackaged.com.google.cloud.bigtable.data.v2.BigtableDataSettings;

  Configuration configuration = BigtableConfiguration.configure("my-project-id", "my-instance-id");
  Connection connection = new BigtableConnection(configuration);

  BigtableDataSettings.enableBuiltinMetrics();

Optional: Clientseitige Messwerte deaktivieren

Wenn Sie Version 2.14.1 oder höher verwenden, sind clientseitige Messwerte standardmäßig aktiviert. Sie können diese Funktion deaktivieren.

Configuration configuration = BigtableConfiguration.configure("my-project-id", "my-instance-id");
configuration.setBoolean(BigtableOptionsFactory.BIGTABLE_ENABLE_CLIENT_SIDE_METRICS, false);
Connection connection = new BigtableConnection(configuration);

Java

Führen Sie diese Schritte aus, wenn Sie die Bigtable-Clientbibliothek für Java verwenden, die die Bigtable APIs aufruft.

Hinweise

Optional: Wenn Sie eine OpenCensus Stats-Integration verwenden, um Bigtable-Messwerte abzurufen, setzen Sie die Abhängigkeit und die StackdriverStatsExporter-Änderungen in Ihrer Anwendung zurück. Informationen dazu finden Sie unter Wann ein Upgrade durchgeführt werden muss.

Clientbibliothek für Java installieren und konfigurieren

  1. Laden Sie die neueste Bigtable-Clientbibliothek für Java herunter und installieren Sie sie. Zur Verwendung von clientseitigen Messwerten benötigen Sie die Version 2.16.0 oder höher.
  2. Aktualisieren Sie die Datei pom.xml der Java-Clientbibliothek, um die neueste Version zu verwenden. Ihre POM sollte in etwa so aussehen:

    <dependencyManagement>
        <dependencies>
            <dependency>
                  <groupId>com.google.cloud</groupId>
                  <artifactId>google-cloud-bigtable-bom</artifactId>
                  <version>2.38.0</version>
                  <scope>import</scope>
                  <type>pom</type>
              </dependency>
        </dependencies>
    </dependencyManagement>
    
    <dependencies>
        <dependency>
              <groupId>com.google.cloud</groupId>
              <artifactId>google-cloud-bigtable</artifactId>
        </dependency>
    </dependencies>
    

Clientseitige Messwerte in Ihrer Anwendung aktivieren

Wenn Sie einen Client mit der Clientbibliothek erstellen, aktivieren Sie die integrierten Messwerte. Ihr Code sollte in etwa so aussehen:

  BigtableDataSettings settings = BigtableDataSettings.newBuilder()
              .setProjectId("our-project-2-12")
              .setInstanceId("our-instance-85")
              .setAppProfileId("our-appProfile-06")
              .build();

  BigtableDataSettings.enableBuiltinMetrics();

  try (BigtableDataClient client = BigtableDataClient.create(settings)) {
          // Application logic
  }

Benutzerdefinierte OpenTelemetry-Instanz einrichten

Wenn Sie Version 2.38.0 oder höher verwenden und clientseitige Messwerte in Cloud Monitoring und benutzerdefinierten Datensammlern veröffentlichen möchten, können Sie eine benutzerdefinierte OpenTelemetry-Instanz einrichten.

  SdkMeterProviderBuilder meterProviderBuilder = SdkMeterProvider.builder();

  // register client side metrics on your meter provider
  BuiltinMetricsView.registerBuiltinMetrics("my-project-id", meterProviderBuilder);

  // register other metric reader and views
  meterProviderBuilder.registerMetricReader().registerView();

  // create the OTEL instance
  OpenTelemetry openTelemetry = OpenTelemetrySdk.builder()
          .setMeterProvider(meterProviderBuilder.build())
          .build();

  // Override MetricsProvider in BigtableDataSettings
  BigtableDataSettings settings = BigtableDataSettings.newBuilder()
          .setProjectId("my-project-id")
          .setInstanceId("my-instance-id")
          .setMetricsProvider(CustomOpenTelemetryMetricsProvider.create(openTelemetry))
          .build();

  try (BigtableDataClient client = BigtableDataClient.create(settings)) {
        // Application logic
  }

Optional: Clientseitige Messwerte deaktivieren

Wenn Sie Version 2.38.0 oder höher verwenden, können Sie die Verwendung clientseitiger Messwerte deaktivieren.

BigtableDataSettings settings = BigtableDataSettings.newBuilder()
        .setProjectId("my-project")
        .setInstanceId("my-instance")
        .setMetricsProvider(NoopMetricsProvider.INSTANCE)
        .build();

Messwerte in Metrics Explorer aufrufen

  1. Rufen Sie in der Google Cloud Console die Seite Metrics Explorer auf.

    Zum Metrics Explorer

  2. Wählen Sie das Projekt aus.

  3. Klicken Sie auf Messwert auswählen.

  4. Suchen Sie nach bigtable.googleapis.com/client.

  5. Wählen Sie einen Messwert, eine group by-Methode und einen Status aus und wählen Sie einen Aggregator aus. Weitere Optionen finden Sie unter Messwerte bei Verwendung von Metrics Explorer auswählen.

Lassen Sie Ihre Anwendung nach der Aktivierung clientseitiger Messwerte mindestens eine Minute lang laufen, bevor Sie nach veröffentlichten Messwerten suchen.

Messwerte im Bigtable-Monitoring ansehen

Auf der Bigtable-Monitoringseite werden Diagramme für die folgenden clientseitigen Messwerte angezeigt:

  • Clientseitige Leselatenz
  • Clientseitige Schreiblatenz
  • Clientseite Latenz von Leseversuchen
  • Clientseite Latenz von Schreibversuchen

So rufen Sie clientseitige Messwerte auf der Seite Monitoring auf:

  1. Öffnen Sie in der Google Cloud Console die Liste der Bigtable-Instanzen.

    Zur Liste der Instanzen

  2. Klicken Sie auf die Instanz, deren Messwerte Sie sehen möchten.

  3. Klicken Sie im linken Bereich auf Monitoring. In der Google Cloud Console werden eine Reihe von Diagrammen für die Instanz angezeigt.

  4. Scrollen Sie durch den Bereich, um die clientseitigen Messwerte aufzurufen.

  5. Optional: Klicken Sie auf Tabellen, um Messwerte auf Tabellenebene anzusehen.

  6. Optional: Wenn Sie Messwerte für einzelne Anwendungsprofile sehen möchten, klicken Sie auf Anwendungsprofile.

Weitere Informationen finden Sie unter Bigtable-Monitoring.

Nächste Schritte