Elenca tutte le assegnazioni per una prenotazione

Recupera un elenco di tutte le assegnazioni per una prenotazione BigQuery specificata. Un'assegnazione collega un progetto, una cartella o un'organizzazione a una prenotazione.

Esempio di codice

Node.js

Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js nella guida rapida di BigQuery per l'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API BigQuery Node.js.

Per eseguire l'autenticazione in BigQuery, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.

const {ReservationServiceClient} =
  require('@google-cloud/bigquery-reservation').v1;
const {status} = require('@grpc/grpc-js');

const reservationServiceClient = new ReservationServiceClient();

/**
 * Lists assignments.
 * An assignment lets a project, folder, or organization use slots from a
 * specified reservation. By using a wildcard `-` for the reservation ID,
 * this sample lists all assignments for a given project and location.
 *
 * @param {string} projectId The ID of the project. Example: 'example-project-id'
 * @param {string} location The location of the reservation. Example: 'us-central1'
 */
async function listAssignments(projectId, location = 'us-central1') {
  const request = {
    parent: `projects/${projectId}/locations/${location}/reservations/-`,
  };

  try {
    const iterable = reservationServiceClient.listAssignmentsAsync(request);
    console.log(`Assignments in parent "${request.parent}":`);

    let found = false;
    for await (const assignment of iterable) {
      found = true;
      console.log(`- ${assignment.name}`);
      console.log(`  - Assignee: ${assignment.assignee}`);
      console.log(`  - Job Type: ${assignment.jobType}`);
    }

    if (!found) {
      console.log('  No assignments found.');
    }
  } catch (err) {
    if (err.code === status.NOT_FOUND) {
      console.log(`Parent resource not found: ${request.parent}`);
    } else {
      console.error('Error listing assignments:', err);
    }
  }
}

Python

Prima di provare questo esempio, segui le istruzioni di configurazione di Python nella guida rapida di BigQuery per l'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API BigQuery Python.

Per eseguire l'autenticazione in BigQuery, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.

from google.api_core import exceptions
from google.cloud import bigquery_reservation_v1


def list_assignments(
    project_id: str,
    location: str,
    reservation_id: str,
):
    """Lists all assignments for a reservation.

    This sample shows how to list all assignments in a given reservation.
    To list all assignments in a given location, across all reservations,
    use a wildcard `-` for the reservation ID.

    Args:
        project_id: The Google Cloud project ID.
        location: The geographic location of the assignments , for example, 'us-central1'.
        reservation_id: The ID of the reservation to list assignments for, or "-"
            to list all assignments for the project and location.
    """
    client = bigquery_reservation_v1.ReservationServiceClient()
    parent = client.reservation_path(project_id, location, reservation_id)

    try:
        print(f"Listing assignments for parent: '{parent}'")
        assignment_list = client.list_assignments(parent=parent)

        found_assignments = False
        for assignment in assignment_list:
            found_assignments = True
            print(f"  Got assignment: {assignment.name}")

        if not found_assignments:
            print("No assignments found.")

    except exceptions.NotFound:
        print(f"Parent resource '{parent}' not found.")

Passaggi successivi

Per cercare e filtrare gli esempi di codice per altri prodotti Google Cloud , consulta il browser degli esempi diGoogle Cloud .