Configurer des métriques côté client

Cette page explique comment installer, configurer et utiliser Bigtable côté client métriques.

Les métriques côté client sont disponibles pour les utilisateurs des bibliothèques clientes suivantes :

Pour en savoir plus, consultez la page Présentation des métriques côté client. Pour obtenir une liste détaillée des métriques, consultez la page Descriptions des métriques côté client.

Ajouter ou confirmer des autorisations de compte de service

Pour ajouter des autorisations IAM au compte de service, procédez comme suit:

  1. Dans la console Google Cloud, accédez à la page IAM.

    Accéder à IAM

  2. Sélectionnez le projet dans lequel vous avez créé le cluster Bigtable.

  3. Recherchez le compte de service auquel vous souhaitez ajouter l'autorisation.

  4. Cliquez sur Modifier le compte principal.

  5. Cliquez sur Ajouter un autre rôle.

  6. Recherchez "rédacteur de métriques de surveillance" et sélectionnez le résultat.

  7. Cliquez sur Enregistrer.

Activer l'API Cloud Monitoring.

  1. Dans la console Google Cloud, accédez à la page API et services.

    Accéder aux API et services

  2. Sélectionnez le projet dans lequel vous avez créé le cluster Bigtable.

  3. Cliquez sur Activer les API et les services.

  4. Recherchez "Monitoring".

  5. Dans les résultats de recherche, cliquez sur "API Cloud Monitoring".

  6. Si "API activée" s'affiche, cela signifie que l'API est déjà activée. Sinon, cliquez sur Activer.

Configurer votre bibliothèque cliente Bigtable

Après avoir activé l'API Cloud Monitoring, configurez Bigtable bibliothèque cliente.

Go

Suivez ces étapes si vous utilisez la bibliothèque cliente Bigtable pour Go, qui appelle les API Bigtable.

Installer et configurer la bibliothèque cliente pour Go

Mettez à jour la bibliothèque cliente Bigtable pour Go vers la version 1.27.0 ou plus tard. Votre go.mod doit se présenter comme suit:

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

Facultatif: Désactiver les métriques côté client

Les métriques côté client sont activées par défaut dans la bibliothèque cliente Go. Pour activer transmettez NoopMetricsProvider dans ClientConfig:

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

HBase

Suivez ces étapes si vous utilisez le client Bigtable HBase Java, qui appelle l'API HBase, pour connecter votre application Bigtable.

Installer et configurer la bibliothèque cliente HBase pour Java

  1. Téléchargez et installez la dernière version du client HBase Bigtable pour Java. Pour activer les métriques côté client, vous devez utiliser la version 2.6.4 ou ultérieure.

  2. Créez un projet Maven vide.

  3. Déterminez la dépendance à l'artefact qui convient à votre cas d'utilisation. Les versions 2.x incluent un client asynchrone HBase que les versions 1.x n'ont pas.

    • bigtable-hbase-1.x ou bigtable-hbase-2.x : à utiliser pour les applications autonomes à partir desquelles vous contrôlez les dépendances.
    • bigtable-hbase-1.x-hadoop ou bigtable-hbase-2.x-hadoop : à utiliser dans les environnements Hadoop.
    • bigtable-hbase-1.x-shaded ou bigtable-hbase-2.x-shaded: à utiliser dans les environnements autres que Hadoop, qui nécessitent des versions antérieures de composants les protobufs ou Guava.
  4. Mettez à jour le fichier pom.xml :

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

    Indiquez les éléments suivants :

    • BIGTABLE_HBASE_ARTIFACT : dépendance d'artefact pour votre projet, au format bigtable-hbase-1.x ou bigtable-hbase-2.x-hadoop
    • VERSION_NUMBER : version de la bibliothèque cliente que vous utilisez, au format 2.6.4

Activer les métriques côté client dans votre application

Utiliser bigtable-hbase-1.x ou bigtable-hbase-2.x

Lorsque vous créez une connexion à l'aide de la bibliothèque cliente HBase et des artefacts bigtable-hbase-1.x ou bigtable-hbase-2.x, votre code permettant d'activer les métriques intégrées côté client se présente comme suit :

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

Utiliser des artefacts -hadoop ou -shaded

Lorsque vous créez une connexion à l'aide de la bibliothèque cliente HBase et de l'un des artefacts -hadoop ou -shaded, votre code permettant d'activer les métriques intégrées côté client se présente comme suit :

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

Facultatif: Désactiver les métriques côté client

Si vous utilisez la version 2.14.1 ou une version ultérieure, les métriques côté client sont activées par défaut. Vous pouvez désactiver cette option.

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

Suivez ces étapes si vous utilisez Bigtable pour Java, qui appelle les API Bigtable.

Avant de commencer

(Facultatif) Si vous utilisez une ressource OpenCensus Statistiques pour obtenir les métriques Bigtable, inverser la dépendance et StackdriverStatsExporter modifications dans votre application. Pour comprendre pourquoi, consultez Quand effectuer la mise à niveau ?

Installer et configurer la bibliothèque cliente pour Java

  1. Téléchargez et installez la dernière bibliothèque cliente Bigtable pour Java. Vous devez disposer de la version 2.16.0 ou d'une version ultérieure pour utiliser des métriques côté client.
  2. Mettez à jour le fichier pom.xml de la bibliothèque cliente Java pour utiliser la dernière version. Votre application doit ressembler à ce qui suit:

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

Activer les métriques côté client dans votre application

Lorsque vous créez un client à l'aide de la bibliothèque cliente, activez l'API intégrée métriques. Votre code doit ressembler à ce qui suit :

  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
  }

Configurer une instance OpenTelemetry personnalisée

Si vous utilisez la version 2.38.0 ou ultérieure et que vous souhaitez publier des métriques côté client dans Cloud Monitoring et des sinks personnalisés, vous pouvez configurer une instance OpenTelemetry personnalisée.

  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
  }

Facultatif: Désactiver les métriques côté client

Si vous utilisez la version 2.38.0 ou une version ultérieure, vous pouvez désactiver l'utilisation les métriques côté client.

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

Afficher les métriques dans l'Explorateur de métriques

  1. Dans la console Google Cloud, accédez à la page Explorateur de métriques.

    Accéder à l'explorateur de métriques

  2. Sélectionnez le projet.

  3. Cliquez sur Sélectionner une métrique.

  4. Recherchez bigtable.googleapis.com/client.

  5. Sélectionnez une métrique, une méthode group by et un état, puis choisissez une Agrégateur : Pour découvrir plus d'options, consultez la section Sélectionner des métriques lors de l'utilisation de l'explorateur de métriques.

Une fois les métriques côté client activées, laissez votre application s'exécuter pendant au moins une minute avant de rechercher des métriques publiées.

Étapes suivantes