Obtener una ejecución de transferencia

Obtiene información sobre una ejecución de transferencia específica de BigQuery Data Transfer Service.

Investigar más

Para obtener documentación detallada que incluya este código de muestra, consulta lo siguiente:

Código de ejemplo

Java

Antes de probar este ejemplo, sigue las Javainstrucciones de configuración de la guía de inicio rápido de BigQuery con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Java de BigQuery.

Para autenticarte en BigQuery, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.

import com.google.api.gax.rpc.ApiException;
import com.google.cloud.bigquery.datatransfer.v1.DataTransferServiceClient;
import com.google.cloud.bigquery.datatransfer.v1.GetTransferRunRequest;
import com.google.cloud.bigquery.datatransfer.v1.TransferRun;
import java.io.IOException;

// Sample to get run details from transfer config.
public class RunDetails {

  public static void main(String[] args) throws IOException {
    // TODO(developer): Replace these variables before running the sample.
    // runId examples:
    // `projects/{project_id}/transferConfigs/{config_id}/runs/{run_id}` or
    // `projects/{project_id}/locations/{location_id}/transferConfigs/{config_id}/runs/{run_id}`
    String runId = "MY_RUN_ID";
    runDetails(runId);
  }

  public static void runDetails(String runId) throws IOException {
    try (DataTransferServiceClient dataTransferServiceClient = DataTransferServiceClient.create()) {
      GetTransferRunRequest request = GetTransferRunRequest.newBuilder().setName(runId).build();
      TransferRun run = dataTransferServiceClient.getTransferRun(request);
      System.out.print("Run details retrieved successfully :" + run.getName() + "\n");
    } catch (ApiException ex) {
      System.out.print("Run details not found." + ex.toString());
    }
  }
}

Node.js

Antes de probar este ejemplo, sigue las Node.jsinstrucciones de configuración de la guía de inicio rápido de BigQuery con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Node.js de BigQuery.

Para autenticarte en BigQuery, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.

const {
  DataTransferServiceClient,
} = require('@google-cloud/bigquery-data-transfer');
const {status} = require('@grpc/grpc-js');

const client = new DataTransferServiceClient();

/**
 * Gets a transfer run.
 * A transfer run represents a single execution of a data transfer configuration.
 *
 * @param {string} projectId The Google Cloud project ID, for example 'example-project-id'.
 * @param {string} location The location of the transfer config, for example 'us-central1'.
 * @param {string} transferConfigId The ID of the transfer configuration, for example '1234a-5678-9012b'.
 * @param {string} runId The ID of the transfer run, for example 'abcdef-0123-4567-8901-fedcba987654'.
 */
async function getTransferRun(
  projectId,
  location = 'us-central1',
  transferConfigId = '1234a-5678-9012b',
  runId = 'abcdef-0123-4567-8901-fedcba987654',
) {
  const name = client.projectLocationTransferConfigRunPath(
    projectId,
    location,
    transferConfigId,
    runId,
  );
  const request = {
    name,
  };

  try {
    const [run] = await client.getTransferRun(request);
    console.log(`Got transfer run: ${run.name}`);
    console.log(`  Data Source Id: ${run.dataSourceId}`);
    if (run.runTime && run.runTime.seconds) {
      console.log(
        `  Run time: ${new Date(run.runTime.seconds * 1000).toISOString()}`,
      );
    }
    console.log(`  State: ${run.state}`);
  } catch (err) {
    if (err.code === status.NOT_FOUND) {
      console.error(`Transfer run ${name} not found.`);
    } else {
      console.error(`Error getting transfer run ${name}:`, err);
    }
  }
}

Python

Antes de probar este ejemplo, sigue las Pythoninstrucciones de configuración de la guía de inicio rápido de BigQuery con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Python de BigQuery.

Para autenticarte en BigQuery, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.

import google.api_core.exceptions
from google.cloud import bigquery_datatransfer_v1


client = bigquery_datatransfer_v1.DataTransferServiceClient()


def get_transfer_run(
    project_id: str,
    location: str,
    transfer_config_id: str,
    run_id: str,
) -> None:
    """Gets information about a transfer run.

    Args:
        project_id: The Google Cloud project ID.
        location: The geographic location of the transfer run, for example, 'us' or 'europe-west1'.
        transfer_config_id: The transfer configuration ID.
        run_id: The transfer run ID.
    """
    run_name = client.run_path(
        project=f"{project_id}/locations/{location}",
        transfer_config=transfer_config_id,
        run=run_id,
    )

    try:
        transfer_run = client.get_transfer_run(name=run_name)
        print(f"Got transfer run: {transfer_run.name}")
        print(f"State: {transfer_run.state.name}")
    except google.api_core.exceptions.NotFound:
        print(f"Error: Transfer run '{run_name}' not found.")

Siguientes pasos

Para buscar y filtrar ejemplos de código de otros productos de Google Cloud , consulta el Google Cloud navegador de ejemplos.