Configura métricas del cliente
En esta página, se describe cómo instalar, configurar y usar las métricas del cliente de Bigtable.
Para habilitar y ver las métricas del cliente, debes usar la biblioteca cliente de Cloud Bigtable en Java, que llama a las API del servicio de Cloud Bigtable, o el cliente HBase de Cloud Bigtable para Java, que usa la API de HBase de código abierto.
Para obtener una descripción general, consulta la Descripción general de las métricas del cliente. Para obtener una lista detallada de las métricas, consulta Descripciones de las métricas del cliente.
Antes de comenzar
Opcional: Si actualmente usas una integración de OpenCensus Stats para obtener métricas de Bigtable, revierte la dependencia y los cambios de StackdriverStatsExporter
en tu aplicación. Para comprender por qué, consulta Cuándo actualizar.
Agrega o confirma los permisos de la cuenta de servicio
Para agregar permisos de IAM a la cuenta de servicio, completa lo siguiente:
En la consola de Google Cloud, ve a la página IAM.
Selecciona el proyecto en el que creaste el clúster de Bigtable.
Busca la cuenta de servicio a la que deseas agregar el permiso.
Haz clic en Editar principal.
Haz clic en Agregar otro rol.
Busca “escritor de métricas de supervisión” y selecciona el resultado.
Haz clic en Guardar.
Habilita la API de Cloud Monitoring
En la consola de Google Cloud, ve a la página API y servicios.
Selecciona el proyecto en el que creaste el clúster de Bigtable.
Haz clic en Habilitar APIs y servicio.
Busca “Monitoring”.
En los resultados de la búsqueda, haz clic en "API de Monitoring" de Stackdriver.
Si se muestra "API habilitada", significa que la API ya está habilitada. De lo contrario, haz clic en Habilitar.
Configura y usa la biblioteca cliente de Cloud Bigtable para Java
Sigue estos pasos si usas la biblioteca cliente de Cloud Bigtable para Java, que llama a las API de Cloud Bigtable.
Instala y configura la biblioteca cliente para Java
- Descarga y, luego, instala la biblioteca cliente de Cloud Bigtable para Java más reciente. Debes tener la versión 2.16.0 o superior para usar las métricas del cliente.
Actualiza el archivo pom.xml de la biblioteca cliente de Java para usar la versión más reciente. Tu pom debería ser similar al siguiente ejemplo:
<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>
Habilita las métricas del cliente en tu aplicación
Cuando creas un cliente con la biblioteca cliente, habilita las métricas integradas. El código debería ser similar al siguiente:
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 una instancia personalizada de OpenTelemetry
Si usas la versión 2.38.0 o posterior y deseas publicar métricas del cliente en Cloud Monitoring y receptores personalizados, puedes configurar una instancia personalizada de 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: Inhabilita las métricas del cliente
Si usas la versión 2.38.0 o una posterior, puedes inhabilitar el uso de métricas del cliente.
BigtableDataSettings settings = BigtableDataSettings.newBuilder()
.setProjectId("my-project")
.setInstanceId("my-instance")
.setMetricsProvider(NoopMetricsProvider.INSTANCE)
.build();
Configura y usa el cliente de HBase de Cloud Bigtable para Java
Para conectar tu aplicación a Bigtable, sigue estos pasos si usas el cliente de HBase de Cloud Bigtable para Java, que llama a la API de HBase.
Instala y configura la biblioteca cliente de HBase para Java
Descarga y, luego, instala el cliente de HBase de Cloud Bigtable para Java más reciente. Para habilitar las métricas del cliente, debes usar la versión 2.6.4 o una posterior.
Crea un proyecto de Maven vacío.
Determina la dependencia del artefacto adecuada para tu caso de uso. Las versiones de
2.x
incluyen un cliente asíncrono de HBase que no tienen las versiones de1.x
.bigtable-hbase-1.x
obigtable-hbase-2.x
: Úsalo para aplicaciones independientes en las que tú controlas tus dependencias.bigtable-hbase-1.x-hadoop
obigtable-hbase-2.x-hadoop
: Se usan en entornos de Hadoop.bigtable-hbase-1.x-shaded
obigtable-hbase-2.x-shaded
: Se usan en entornos distintos de Hadoop que requieran versiones anteriores de componentes, como protobufs o Guava.
Actualiza el archivo pom.xml:
<dependencyManagement> <dependencies> <dependency> <groupId>com.google.cloud.bigtable</groupId> <artifactId>BIGTABLE_HBASE_ARTIFACT</artifactId> <version>VERSION_NUMBER</version> </dependency> </dependencies> </dependencyManagement>
Proporcione lo siguiente:
BIGTABLE_HBASE_ARTIFACT
: Es la dependencia del artefacto de tu proyecto, con formatobigtable-hbase-1.x
obigtable-hbase-2.x-hadoop
.VERSION_NUMBER
: Es la versión de la biblioteca cliente que usas, con un formato como2.6.4
.
Habilita las métricas del cliente en tu aplicación
Usa bigtable-hbase-1.x
o bigtable-hbase-2.x
Cuando creas una conexión con la biblioteca cliente de HBase y los artefactos bigtable-hbase-1.x
o bigtable-hbase-2.x
, tu código para habilitar las métricas integradas del cliente es similar al siguiente:
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();
Usa artefactos -hadoop
o -shaded
Cuando creas una conexión con la biblioteca cliente de HBase y uno de los artefactos -hadoop
o -shaded
, tu código para habilitar las métricas integradas del cliente es similar al siguiente:
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: Inhabilita las métricas del cliente
Si usas la versión 2.14.1 o una posterior, las métricas del cliente estarán habilitadas de forma predeterminada. Puedes inhabilitar esta opción.
Configuration configuration = BigtableConfiguration.configure("my-project-id", "my-instance-id");
configuration.setBoolean(BigtableOptionsFactory.BIGTABLE_ENABLE_CLIENT_SIDE_METRICS, false);
Connection connection = new BigtableConnection(configuration);
Visualiza métricas en el Explorador de métricas
En la consola de Google Cloud, ve a la página Explorador de métricas.
Selecciona el proyecto.
Haz clic en Elige una métrica.
Busca
bigtable.googleapis.com/client
.Selecciona una métrica, un método
group by
y un estado, y elige un agregador. Para explorar más opciones, consulta Selecciona métricas cuando uses el Explorador de métricas.
Después de habilitar las métricas del cliente, permite que la aplicación se ejecute durante al menos un minuto antes de verificar las métricas publicadas.
¿Qué sigue?
- Lee una descripción general de las métricas del cliente.
- Consulta descripciones completas de las métricas del cliente.
- Obtén más información sobre Bigtable Monitoring.