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:
- Libreria client Bigtable per C++
- Libreria client Bigtable per Java
- Client HBase Bigtable per Java
- Libreria client Bigtable per Go
- Libreria client Bigtable per Node.js
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:
Nella console Google Cloud , vai alla pagina IAM.
Seleziona il progetto in cui hai creato il cluster Bigtable.
Cerca il account di servizio a cui vuoi aggiungere l'autorizzazione.
Fai clic su Modifica entità.
Fai clic su Aggiungi un altro ruolo.
Cerca "monitoring metric writer" e seleziona il risultato.
Fai clic su Salva.
Abilita l'API Cloud Monitoring
Nella console Google Cloud , vai alla pagina API e servizi.
Seleziona il progetto in cui hai creato il cluster Bigtable.
Fai clic su Abilita API e servizi.
Cerca
Monitoring
.Nei risultati di ricerca, fai clic su API Cloud Monitoring.
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
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.
Crea un progetto Maven vuoto.
Determina la dipendenza dagli artefatti più adatta al tuo caso d'uso. Le versioni
2.x
includono un client asincrono HBase che le versioni1.x
non hanno.bigtable-hbase-1.x
obigtable-hbase-2.x
: utilizza per applicazioni autonome in cui hai il controllo delle dipendenze.bigtable-hbase-1.x-hadoop
obigtable-hbase-2.x-hadoop
: da utilizzare negli ambienti Hadoop.bigtable-hbase-1.x-shaded
obigtable-hbase-2.x-shaded
: utilizza in ambienti diversi da Hadoop che richiedono versioni precedenti di componenti come protobuf o Guava.
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 comebigtable-hbase-1.x
obigtable-hbase-2.x-hadoop
.VERSION_NUMBER
: la versione della libreria client che stai utilizzando, formattata come2.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
- 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.
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
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" } }
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
Nella console Google Cloud , vai alla pagina Esplora metriche.
Seleziona il progetto.
Fai clic su Seleziona una metrica.
Cerca
bigtable.googleapis.com/client
.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:
Apri l'elenco delle istanze Bigtable nella console Google Cloud .
Fai clic sull'istanza di cui vuoi visualizzare le metriche.
Nel riquadro a sinistra, fai clic su Monitoraggio. La console Google Cloud mostra una serie di grafici per l'istanza.
Scorri il riquadro per visualizzare le metriche lato client.
(Facoltativo) Per visualizzare le metriche a livello di tabella, fai clic su Tabelle.
(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
- Leggi una panoramica delle metriche lato client.
- Visualizza le descrizioni complete delle metriche lato client.