Visualizzare un gruppo di consumatori di Google Cloud Managed Service per Apache Kafka

Per visualizzare le informazioni dettagliate per un singolo gruppo di consumatori, puoi utilizzare la consoleGoogle Cloud , Google Cloud CLI, la libreria client, l'API Managed Kafka o le API Apache Kafka open source.

Ruoli e autorizzazioni richiesti per visualizzare un gruppo di consumatori

Per ottenere le autorizzazioni necessarie per visualizzare i gruppi di consumatori, chiedi all'amministratore di concederti il ruolo IAM Visualizzatore Kafka gestito (roles/managedkafka.viewer) nel progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Questo ruolo predefinito contiene le autorizzazioni necessarie per visualizzare i gruppi di consumatori. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per visualizzare i gruppi di consumatori sono necessarie le seguenti autorizzazioni:

  • Elenca i gruppi di consumatori: managedkafka.consumerGroups.list
  • Visualizza i dettagli del gruppo di consumer: managedkafka.consumerGroups.get

Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.

Per saperne di più sul ruolo Visualizzatore Kafka gestito, consulta Ruoli predefiniti di Managed Service per Apache Kafka.

Visualizzare un gruppo di consumer

Per visualizzare le informazioni dettagliate per un gruppo di consumatori per un cluster specifico:

Console

  1. Nella console Google Cloud , vai alla pagina Cluster.

    Vai a Cluster

  2. Fai clic sul cluster per cui vuoi visualizzare i gruppi di consumatori.

    Viene visualizzata la pagina Dettagli cluster. Nella pagina Dettagli cluster, i gruppi di consumatori sono elencati nella scheda Risorse.

  3. Fai clic sul gruppo di consumer.

    Viene visualizzata la pagina Dettagli del gruppo di consumer.

  4. La pagina contiene i seguenti dettagli:

    • Configurazione:questa scheda mostra il nome del gruppo di consumatori. Mostra anche l'argomento a cui è collegato il gruppo di consumatori.
    • Monitoraggio:questa scheda mostra il grafico di monitoraggio del ritardo di offset per partizione.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Esegui il comando gcloud managed-kafka consumer-groups describe:

    gcloud managed-kafka consumer-groups describe CONSUMER_GROUP_ID \
        --cluster=CLUSTER \
        --location=LOCATION

    Questo comando fornisce informazioni dettagliate su un gruppo di consumatori Managed Service per Apache Kafka specifico. Include informazioni sul gruppo di consumatori, tra cui nome, ID gruppo, ora di creazione e ora di aggiornamento.

    Sostituisci quanto segue:

    • CONSUMER_GROUP_ID: l'ID o il nome del gruppo di consumatori.

    • CLUSTER: l'ID o il nome del cluster.

    • LOCATION: la posizione del cluster.

  3. Go

    Prima di provare questo esempio, segui le istruzioni di configurazione di Go in Installare le librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Go di Managed Service per Apache Kafka.

    Per eseguire l'autenticazione in Managed Service per Apache Kafka, configura le Credenziali predefinite dell'applicazione(ADC). Per saperne di più, vedi Configura ADC per un ambiente di sviluppo locale.

    import (
    	"context"
    	"fmt"
    	"io"
    
    	"cloud.google.com/go/managedkafka/apiv1/managedkafkapb"
    	"google.golang.org/api/option"
    
    	managedkafka "cloud.google.com/go/managedkafka/apiv1"
    )
    
    func getConsumerGroup(w io.Writer, projectID, region, clusterID, consumerGroupID string, opts ...option.ClientOption) error {
    	// projectID := "my-project-id"
    	// region := "us-central1"
    	// clusterID := "my-cluster"
    	// consumerGroupID := "my-consumer-group"
    	ctx := context.Background()
    	client, err := managedkafka.NewClient(ctx, opts...)
    	if err != nil {
    		return fmt.Errorf("managedkafka.NewClient got err: %w", err)
    	}
    	defer client.Close()
    
    	clusterPath := fmt.Sprintf("projects/%s/locations/%s/clusters/%s", projectID, region, clusterID)
    	consumerGroupPath := fmt.Sprintf("%s/consumerGroups/%s", clusterPath, consumerGroupID)
    	req := &managedkafkapb.GetConsumerGroupRequest{
    		Name: consumerGroupPath,
    	}
    	consumerGroup, err := client.GetConsumerGroup(ctx, req)
    	if err != nil {
    		return fmt.Errorf("client.GetConsumerGroup got err: %w", err)
    	}
    	fmt.Fprintf(w, "Got consumer group: %#v\n", consumerGroup)
    	return nil
    }
    

    Java

    Prima di provare questo esempio, segui le istruzioni di configurazione di Java in Installare le librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Java di Managed Service per Apache Kafka.

    Per eseguire l'autenticazione in Managed Service per Apache Kafka, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configura ADC per un ambiente di sviluppo locale.

    import com.google.api.gax.rpc.ApiException;
    import com.google.cloud.managedkafka.v1.ConsumerGroup;
    import com.google.cloud.managedkafka.v1.ConsumerGroupName;
    import com.google.cloud.managedkafka.v1.ManagedKafkaClient;
    import java.io.IOException;
    
    public class GetConsumerGroup {
    
      public static void main(String[] args) throws Exception {
        // TODO(developer): Replace these variables before running the example.
        String projectId = "my-project-id";
        String region = "my-region"; // e.g. us-east1
        String clusterId = "my-cluster";
        String consumerGroupId = "my-consumer-group";
        getConsumerGroup(projectId, region, clusterId, consumerGroupId);
      }
    
      public static void getConsumerGroup(
          String projectId, String region, String clusterId, String consumerGroupId) throws Exception {
        try (ManagedKafkaClient managedKafkaClient = ManagedKafkaClient.create()) {
          // This operation is being handled synchronously.
          ConsumerGroup consumerGroup =
              managedKafkaClient.getConsumerGroup(
                  ConsumerGroupName.of(projectId, region, clusterId, consumerGroupId));
          System.out.println(consumerGroup.getAllFields());
        } catch (IOException | ApiException e) {
          System.err.printf("managedKafkaClient.getConsumerGroup got err: %s", e.getMessage());
        }
      }
    }
    

    Python

    Prima di provare questo esempio, segui le istruzioni di configurazione di Python in Installare le librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Python di Managed Service per Apache Kafka.

    Per eseguire l'autenticazione in Managed Service per Apache Kafka, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configura ADC per un ambiente di sviluppo locale.

    from google.api_core.exceptions import NotFound
    from google.cloud import managedkafka_v1
    
    # TODO(developer)
    # project_id = "my-project-id"
    # region = "us-central1"
    # cluster_id = "my-cluster"
    # consumer_group_id = "my-consumer-group"
    
    client = managedkafka_v1.ManagedKafkaClient()
    
    consumer_group_path = client.consumer_group_path(
        project_id, region, cluster_id, consumer_group_id
    )
    request = managedkafka_v1.GetConsumerGroupRequest(
        name=consumer_group_path,
    )
    
    try:
        consumer_group = client.get_consumer_group(request=request)
        print("Got consumer group:", consumer_group)
    except NotFound as e:
        print(f"Failed to get consumer group {consumer_group_id} with error: {e.message}")
    

Passaggi successivi

Apache Kafka® è un marchio registrato di Apache Software Foundation o delle sue affiliate negli Stati Uniti e/o in altri paesi.