Configura le metriche lato client

Questa pagina descrive come installare, configurare e utilizzare le metriche lato client di Bigtable.

Le metriche lato client sono disponibili per gli utenti delle seguenti librerie client:

Per una panoramica, consulta la panoramica delle metriche lato client. Per un elenco dettagliato delle metriche, vedi Descrizioni delle metriche lato client.

Aggiungere o confermare le autorizzazioni del account di servizio

Per aggiungere le autorizzazioni IAM al account di servizio, completa i seguenti passaggi:

  1. Nella console Google Cloud , vai alla pagina IAM.

    Vai a IAM

  2. Seleziona il progetto in cui hai creato il cluster Bigtable.

  3. Cerca il account di servizio a cui vuoi aggiungere l'autorizzazione.

  4. Fai clic su Modifica entità.

  5. Fai clic su Aggiungi un altro ruolo.

  6. Cerca "monitoring metric writer" e seleziona il risultato.

  7. Fai clic su Salva.

Abilita l'API Cloud Monitoring

  1. Nella console Google Cloud , vai alla pagina API e servizi.

    Vai ad API e servizi

  2. Seleziona il progetto in cui hai creato il cluster Bigtable.

  3. Fai clic su Abilita API e servizi.

  4. Cerca Monitoring.

  5. Nei risultati di ricerca, fai clic su API Cloud Monitoring.

  6. Se viene visualizzato il messaggio API abilitata, l'API è già abilitata. In caso contrario, fai clic su Attiva.

Configurare la libreria client Bigtable

Dopo aver abilitato l'API Cloud Monitoring, configura la libreria client Bigtable.

C++

Segui questi passaggi se utilizzi la libreria client Bigtable per C++, che chiama le API Bigtable.

Installa e configura la libreria client per C++

Integra la libreria utilizzando sistemi di compilazione C++ comuni, come CMake o Bazel. Per ulteriori informazioni, vedi Creazione e installazione.

Affinché la libreria client Bigtable raccolga le metriche lato client, il tuo progetto deve includere le dipendenze per OpenTelemetry e Cloud Monitoring. OpenTelemetry fornisce il framework per la libreria client per creare, instrumentare e registrare le metriche, mentre la libreria Cloud Monitoring fornisce la funzionalità per esportare o pubblicare queste metriche in Cloud Monitoring.

Attivare le metriche lato client nell'applicazione

Le metriche lato client sono abilitate per impostazione predefinita nella libreria client Bigtable per C++ a partire dalla versione 2.40.0.

Le metriche vengono raccolte automaticamente se nel progetto sono disponibili sia le dipendenze OpenTelemetry sia quelle di Cloud Monitoring. Non è previsto alcun costo aggiuntivo per queste metriche.

(Facoltativo) Disattiva le metriche lato client

Puoi disattivare l'utilizzo delle metriche lato client impostando EnableMetricsOption su false quando crei la connessione ai dati.

auto options = Options{}.set<EnableMetricsOption>(false);
TableResource resource("my-project", "my-instance", "my-table");
Table table(MakeDataConnection(std::move(options)), std::move(resource));

Vai

Segui questi passaggi se utilizzi la libreria client Bigtable per Go, che chiama le API Bigtable.

Installa e configura la libreria client per Go

Aggiorna la libreria client Bigtable per Go alla versione 1.27.0 o successiva. Il tuo go.mod dovrebbe essere simile al seguente:

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

(Facoltativo) Disattiva le metriche lato client

Le metriche lato client sono abilitate per impostazione predefinita nella libreria client Go. Per disattivare la funzionalità, passa NoopMetricsProvider in ClientConfig:

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

HBase

Segui questi passaggi se utilizzi il client Bigtable HBase per Java, che chiama l'API HBase, per connettere la tua applicazione a Bigtable.

Installa e configura la libreria client HBase per Java

  1. Scarica e installa l'ultima versione del client Bigtable HBase per Java. Per attivare le metriche lato client, devi utilizzare la versione 2.6.4 o successive.

  2. Crea un progetto Maven vuoto.

  3. Determina la dipendenza dagli artefatti più adatta al tuo caso d'uso. Le versioni 2.x includono un client asincrono HBase che le versioni 1.x non hanno.

    • bigtable-hbase-1.x o bigtable-hbase-2.x: utilizza per applicazioni autonome in cui hai il controllo delle dipendenze.
    • bigtable-hbase-1.x-hadoop o bigtable-hbase-2.x-hadoop: da utilizzare negli ambienti Hadoop.
    • bigtable-hbase-1.x-shaded o bigtable-hbase-2.x-shaded: utilizza in ambienti diversi da Hadoop che richiedono versioni precedenti di componenti come protobuf o Guava.
  4. Aggiorna il file pom.xml:

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

    Fornisci quanto segue:

    • BIGTABLE_HBASE_ARTIFACT: la dipendenza dell'artefatto per il tuo progetto, formattata come bigtable-hbase-1.x o bigtable-hbase-2.x-hadoop.
    • VERSION_NUMBER: la versione della libreria client che stai utilizzando, formattata come 2.6.4

Attivare le metriche lato client nell'applicazione

Utilizzo di bigtable-hbase-1.x o bigtable-hbase-2.x

Quando crei una connessione utilizzando la libreria client HBase e gli artefatti bigtable-hbase-1.x o bigtable-hbase-2.x, il codice per attivare le metriche lato client integrate è simile al seguente:

  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();

Utilizzo di artefatti -hadoop o -shaded

Quando crei una connessione utilizzando la libreria client HBase e uno degli artefatti -hadoop o -shaded, il codice per attivare le metriche integrate lato client è simile al seguente:

  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();

(Facoltativo) Disattiva le metriche lato client

Se utilizzi la versione 2.14.1 o successive, le metriche lato client sono attive per impostazione predefinita. Puoi disattivarla.

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

Segui questi passaggi se utilizzi la libreria client Bigtable per Java, che chiama le API Bigtable.

Prima di iniziare

(Facoltativo) Se utilizzi un'integrazione di OpenCensus Stats per ottenere le metriche Bigtable, ripristina la dipendenza e le modifiche StackdriverStatsExporter nella tua applicazione. Per capire il motivo, consulta la sezione Quando eseguire l'upgrade.

Installa e configura la libreria client per Java

  1. Scarica e installa l'ultima libreria client Bigtable per Java. Per utilizzare le metriche lato client, devi avere la versione 2.16.0 o successive.
  2. Aggiorna il file pom.xml della libreria client Java per utilizzare la versione più recente. Il file POM dovrebbe essere simile al seguente:

    <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>
    

Attivare le metriche lato client nell'applicazione

Quando crei un client utilizzando la libreria client, attiva le metriche integrate. Il tuo codice dovrebbe essere simile al seguente:

  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
  }

Configurare un'istanza OpenTelemetry personalizzata

Se utilizzi la versione 2.38.0 o successive e vuoi pubblicare metriche lato client in Cloud Monitoring e sink personalizzati, puoi configurare un'istanza OpenTelemetry personalizzata.

  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
  }

(Facoltativo) Disattiva le metriche lato client

Se utilizzi la versione 2.38.0 e successive, puoi disattivare l'utilizzo delle metriche lato client.

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

Node.js

Segui questi passaggi se utilizzi la libreria client Bigtable per Node.js, che chiama le API Bigtable.

Installa e configura la libreria client per Node.js

  1. Scarica e installa la più recente libreria client Bigtable per Node.js.

    Per utilizzare le metriche lato client, devi disporre della versione 6.2.0 o successive. Il file package.json dovrebbe essere simile al seguente:

    {
      "dependencies": {
        "@google-cloud/bigtable": "^6.2.0"
      }
    }
    
  2. Nel tuo progetto, reinstalla i moduli Node.js:

    rm -rf node_modules
    rm package-lock.json
    npm i
    

Attivare le metriche lato client nell'applicazione

Le metriche lato client sono abilitate per impostazione predefinita nella libreria client Bigtable per Node.js a partire dalla versione 6.4.0.

(Facoltativo) Disattiva le metriche lato client

Puoi disattivare l'utilizzo delle metriche lato client.

const bigtable = new Bigtable({metricsEnabled: false});

Visualizzare le metriche in Metrics Explorer

  1. Nella console Google Cloud , vai alla pagina Esplora metriche.

    Vai a Esplora metriche

  2. Seleziona il progetto.

  3. Fai clic su Seleziona una metrica.

  4. Cerca bigtable.googleapis.com/client.

  5. Seleziona una metrica, un metodo group by e uno stato, quindi scegli un aggregatore. Per esplorare altre opzioni, consulta Selezionare le metriche durante l'utilizzo di Esplora metriche.

Dopo aver attivato le metriche lato client, lascia in esecuzione l'applicazione per almeno un minuto prima di verificare la presenza di metriche pubblicate.

Visualizza le metriche nel monitoraggio di Bigtable

I grafici per le seguenti metriche lato client vengono visualizzati nella pagina di monitoraggio di Bigtable:

  • Latenza di lettura sul client
  • Latenza di scrittura sul client
  • Latenza del tentativo di lettura sul client
  • Latenza del tentativo di scrittura sul client

Per visualizzare le metriche lato client nella pagina Monitoraggio, segui questi passaggi:

  1. Apri l'elenco delle istanze Bigtable nella console Google Cloud .

    Apri l'elenco delle istanze

  2. Fai clic sull'istanza di cui vuoi visualizzare le metriche.

  3. Nel riquadro a sinistra, fai clic su Monitoraggio. La console Google Cloud mostra una serie di grafici per l'istanza.

  4. Scorri il riquadro per visualizzare le metriche lato client.

  5. (Facoltativo) Per visualizzare le metriche a livello di tabella, fai clic su Tabelle.

  6. (Facoltativo) Per visualizzare le metriche per i singoli profili delle app, fai clic su Profili applicazione.

Per ulteriori informazioni, vedi Monitoraggio di Bigtable.

Passaggi successivi