Configurare le metriche lato client
Questa pagina descrive come installare, configurare e utilizzare le metriche lato client di Bigtable.
Per abilitare e visualizzare le metriche lato client, devi usare Cloud Bigtable libreria client per Java, che chiama le API di servizio Cloud Bigtable, oppure Client HBase di Cloud Bigtable per Java, che utilizza il framework open source API HBase.
Per una panoramica, consulta Panoramica delle metriche lato client. Per un elenco dettagliato delle metriche, consulta Descrizioni delle metriche lato client.
Prima di iniziare
(Facoltativo) Se attualmente utilizzi una
Statistiche OpenCensus
per ottenere le metriche Bigtable, ripristinare la dipendenza
StackdriverStatsExporter
modifiche nell'applicazione. Per capire il perché, vedi
Quando eseguire l'upgrade.
Aggiungi o conferma le autorizzazioni dell'account di servizio
Per aggiungere autorizzazioni IAM all'account di servizio, completa quanto segue:
Nella console Google Cloud, vai alla pagina IAM.
Seleziona il progetto in cui hai creato il cluster Bigtable.
Cerca l'account di servizio a cui vuoi aggiungere l'autorizzazione.
Fai clic su Modifica entità.
Fai clic su Aggiungi un altro ruolo.
Cerca "writer metriche di monitoraggio" e seleziona il risultato.
Fai clic su Salva.
Abilita l'API Cloud Monitoring
Nella console Google Cloud, vai al menu API e Servizi.
Seleziona il progetto in cui hai creato il cluster Bigtable.
Fai clic su Abilita API e servizio.
Cerca "Monitoring".
Nei risultati di ricerca, fai clic su "API Stackdriver Monitoring".
Se "API abilitata" significa che l'API è già abilitata. In caso contrario, fai clic su Attiva.
Configurazione e utilizzo della libreria client di Cloud Bigtable per Java
Segui questi passaggi se utilizzi Cloud Bigtable per Java, che chiama le API Cloud Bigtable.
Installa e configura la libreria client per Java
- Scarica e installa la libreria client di Cloud Bigtable per Java. Devi avere la versione 2.16.0 o successiva per utilizzare le metriche lato client.
Aggiorna il file pom.xml della libreria client Java per utilizzare la versione più recente. Il tuo 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>
Attiva le metriche lato client nella tua applicazione
Quando crei un client utilizzando la libreria client, abilita il componente metrics. 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
}
Configura un'istanza OpenTelemetry personalizzata
Se utilizzi la versione 2.38.0 o successiva 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) Disattivare le metriche lato client
Se utilizzi la versione 2.38.0 e successive, puoi scegliere di non utilizzare le metriche lato client.
BigtableDataSettings settings = BigtableDataSettings.newBuilder()
.setProjectId("my-project")
.setInstanceId("my-instance")
.setMetricsProvider(NoopMetricsProvider.INSTANCE)
.build();
Configura e utilizza il client Cloud Bigtable HBase per Java
Segui questi passaggi se utilizzi il client Cloud Bigtable HBase per Java, chiama l'API HBase per connettere la tua applicazione a Bigtable.
Installa e configura la libreria client HBase per Java
Scarica e installa la versione più recente del client Cloud Bigtable HBase per Java. Per attivare metriche lato client, devi utilizzare la versione 2.6.4 o successive.
Crea un progetto Maven vuoto.
Determina la dipendenza degli artefatti più adatta al tuo caso d'uso.
2.x
le versioni includono un client asincrono HBase che le versioni1.x
non hanno.bigtable-hbase-1.x
obigtable-hbase-2.x
: da utilizzare come versione autonoma e applicazioni in cui hai il controllo delle tue dipendenze.bigtable-hbase-1.x-hadoop
obigtable-hbase-2.x-hadoop
: utilizza in Hadoop ambienti cloud-native.bigtable-hbase-1.x-shaded
obigtable-hbase-2.x-shaded
: utilizzo in ambienti diversi da Hadoop, che richiedono versioni precedenti di componenti come 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 artefatto per il tuo progetto nel formatobigtable-hbase-1.x
obigtable-hbase-2.x-hadoop
.VERSION_NUMBER
: la versione della libreria client che stai utilizzando utilizzando, formattato come2.6.4
Attiva le metriche lato client nella tua applicazione
In uso: bigtable-hbase-1.x
o bigtable-hbase-2.x
Quando crei una connessione utilizzando la libreria client HBase e
bigtable-hbase-1.x
o bigtable-hbase-2.x
artefatti, il codice da abilitare
le metriche integrate lato client sono simili alle seguenti:
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 -hadoop
o -shaded
elementi
Quando crei una connessione utilizzando la libreria client HBase e uno dei
-hadoop
o -shaded
artefatti, il tuo codice per abilitare il lato client integrato
sono simili alle seguenti:
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) Disattivare le metriche lato client
Se utilizzi la versione 2.14.1 o successive, le metriche lato client sono abilitate per impostazione predefinita. Puoi disattivarli.
Configuration configuration = BigtableConfiguration.configure("my-project-id", "my-instance-id");
configuration.setBoolean(BigtableOptionsFactory.BIGTABLE_ENABLE_CLIENT_SIDE_METRICS, false);
Connection connection = new BigtableConnection(configuration);
Visualizza 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 e scegli un'opzione Aggregatore: Per esplorare altre opzioni, vedi Seleziona le metriche quando utilizzi Esplora metriche.
Dopo aver abilitato le metriche lato client, consenti l'esecuzione dell'applicazione per almeno minuti prima di verificare le metriche pubblicate.
Passaggi successivi
- Leggi una panoramica delle metriche lato client.
- Visualizza le descrizioni complete delle metriche lato client.
- Scopri di più sul monitoraggio di Bigtable.