Configurar métricas do cliente
Nesta página, descrevemos como instalar, configurar e usar as métricas do lado do cliente do Bigtable.
Para ativar e visualizar métricas do lado do cliente, use a API Cloud Bigtable para Java, que chama as APIs de serviço do Cloud Bigtable ou a O cliente HBase do Cloud Bigtable para Java, que usa o API HBase.
Para uma visão geral, consulte a visão geral das métricas do lado do cliente. Para ver uma lista detalhada das métricas, consulte Descrições de métricas do lado do cliente.
Antes de começar
Opcional: se você usar uma integração de
Estatísticas do OpenCensus
para receber métricas do Bigtable, reverta a dependência e as
mudanças de StackdriverStatsExporter
no aplicativo. Para entender o motivo, consulte
Quando fazer upgrade.
Adicionar ou confirmar permissões da conta de serviço
Para adicionar permissões do IAM à conta de serviço, faça o seguinte:
No console do Google Cloud, abra a página IAM.
Selecione o projeto em que você criou o cluster do Bigtable.
Procure a conta de serviço em que você quer adicionar a permissão.
Clique em Editar principal.
Clique em Adicionar outro papel.
Pesquise por "gravador de métricas de monitoramento" e selecione o resultado.
Clique em Save.
Ative a API Cloud Monitoring.
No Console do Google Cloud, acesse a página APIs e serviços.
Selecione o projeto em que você criou o cluster do Bigtable.
Clique em Ativar APIs e serviços.
Pesquise "Monitoring".
Nos resultados da pesquisa, clique em "API Stackdriver Monitoring".
Se for exibido "API ativada", a API já está ativada. Caso contrário, clique em Ativar.
Configurar e usar a biblioteca de cliente do Cloud Bigtable para Java
Siga estas etapas se você usar a biblioteca de cliente do Cloud Bigtable para Java, que chama as APIs Cloud Bigtable.
Instalar e configurar a biblioteca de cliente para Java
- Fazer o download e instalar a biblioteca de cliente do Cloud Bigtable mais recente para Java (em inglês). Você precisa ter a versão 2.16.0 ou posterior para usar métricas do lado do cliente.
Atualize o arquivo pom.xml da biblioteca de cliente do Java para usar a versão mais recente. Seu pom deve ser semelhante a este:
<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>
Ativar métricas do lado do cliente no seu aplicativo
Ao criar um cliente com a biblioteca de cliente, ative as métricas integradas. O código vai ser semelhante a este:
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
}
Configurar uma instância personalizada do OpenTelemetry
Se você estiver usando a versão 2.38.0 ou posterior e quiser publicar métricas do lado do cliente Cloud Monitoring e coletores personalizados, é possível configurar uma instância personalizada do OpenTelemetry.
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
}
Opcional: desativar as métricas do lado do cliente
Se você estiver usando a versão 2.38.0 ou mais recente, métricas do lado do cliente.
BigtableDataSettings settings = BigtableDataSettings.newBuilder()
.setProjectId("my-project")
.setInstanceId("my-instance")
.setMetricsProvider(NoopMetricsProvider.INSTANCE)
.build();
Configurar e usar o cliente HBase do Cloud Bigtable para Java
Siga estas etapas se você usar o cliente HBase do Cloud Bigtable para Java, que chama a API HBase, para conectar o aplicativo ao Bigtable.
Instalar e configurar a biblioteca de cliente do HBase para Java
Faça o download e instale o cliente HBase do Cloud Bigtable para Java mais recente. Para ativar as métricas do lado do cliente, use a versão 2.6.4 ou mais recente.
Crie um projeto do Maven vazio.
Determine a dependência de artefato ideal para seu caso de uso. As versões
2.x
contêm um cliente HBase assíncrono que as versões1.x
não têm.bigtable-hbase-1.x
oubigtable-hbase-2.x
: use para aplicativos independentes em que você controla as dependências.bigtable-hbase-1.x-hadoop
oubigtable-hbase-2.x-hadoop
: use em ambientes Hadoop.bigtable-hbase-1.x-shaded
oubigtable-hbase-2.x-shaded
: use em ambientes diferentes do Hadoop que exigem versões mais antigas de componentes, como protobufs ou Guava.
Atualize o arquivo pom.xml:
<dependencyManagement> <dependencies> <dependency> <groupId>com.google.cloud.bigtable</groupId> <artifactId>BIGTABLE_HBASE_ARTIFACT</artifactId> <version>VERSION_NUMBER</version> </dependency> </dependencies> </dependencyManagement>
Preencha o seguinte:
BIGTABLE_HBASE_ARTIFACT
: a dependência de artefato do projeto, formatada embigtable-hbase-1.x
oubigtable-hbase-2.x-hadoop
.VERSION_NUMBER
: a versão da biblioteca de cliente que você está usando, formatada em2.6.4
.
Ativar métricas do lado do cliente no seu aplicativo
Como usar bigtable-hbase-1.x
ou bigtable-hbase-2.x
Quando você cria uma conexão usando a biblioteca de cliente HBase e os artefatos bigtable-hbase-1.x
ou bigtable-hbase-2.x
, o código para ativar as métricas integradas do lado do cliente é semelhante a este:
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();
Como usar artefatos -hadoop
ou -shaded
Quando você cria uma conexão usando a biblioteca de cliente HBase e um dos artefatos -hadoop
ou -shaded
, o código para ativar as métricas integradas do lado do cliente é semelhante a este:
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();
Opcional: desativar as métricas do lado do cliente
Se você estiver usando a versão 2.14.1 ou posterior, as métricas do lado do cliente serão ativadas por padrão. É possível desativar essa opção.
Configuration configuration = BigtableConfiguration.configure("my-project-id", "my-instance-id");
configuration.setBoolean(BigtableOptionsFactory.BIGTABLE_ENABLE_CLIENT_SIDE_METRICS, false);
Connection connection = new BigtableConnection(configuration);
Visualizar métricas no Metrics Explorer
No Console do Google Cloud, acesse a página do Metrics Explorer.
Selecione o projeto.
Clique em Selecionar uma métrica.
Pesquise
bigtable.googleapis.com/client
.Selecione uma métrica, um método
group by
e um status e escolha um Agregador. Para conhecer outras opções, consulte Selecionar métricas ao usar o Metrics Explorer.
Depois de ativar as métricas do lado do cliente, deixe o aplicativo ser executado por pelo menos um minuto antes de verificar se há métricas publicadas.
A seguir
- Leia uma visão geral das métricas do lado do cliente.
- Veja as descrições completas das métricas do lado do cliente.
- Saiba mais sobre o Bigtable Monitoring.