Übertragungen verwalten

Auf dieser Seite erfahren Sie, wie Sie vorhandene Übertragungsjobs und -vorgänge verwalten.

Informationen zum Erstellen eines neuen Übertragungsjobs finden Sie unter Übertragungen erstellen.

Übertragungskonfiguration bearbeiten

Sie können die folgenden Eigenschaften einer vorhandenen Übertragung bearbeiten:

  • Die Beschreibung des Übertragungsjobs
  • Microsoft Azure Blob Storage- oder Amazon S3-Quellanmeldedaten
  • Alle Filter, die auf den Übertragungsjob angewendet wurden
  • Optionen zum Überschreiben oder Löschen von Dateien
  • Der Zeitplan des Übertragungsjobs

gcloud-CLI

Verwenden Sie zum Bearbeiten einer vorhandenen Übertragungskonfiguration den Befehl gcloud transfer jobs update.

gcloud transfer jobs update \
  JOB_NAME \
  [options]

Wobei:

  • JOB_NAME ist der eindeutige Name des zu aktualisierenden Jobs.

  • Die Optionen, die aktualisiert werden können, werden durch Ausführen von gcloud transfer jobs update --help aufgelistet.

Führen Sie beispielsweise den folgenden Befehl aus, um die Quelle und das Ziel eines Jobs zu aktualisieren und seine Beschreibung zu entfernen:

gcloud transfer jobs update \
  JOB_NAME \
  --source=gs://new-bucket-1 \
  --destination=gs://new-bucket-2 \
  --clear-description

Google Cloud Console

So bearbeiten Sie einen Übertragungsjob:

  1. Rufen Sie in der Google Cloud Console die Seite Storage Transfer Service auf.

    Storage Transfer Service aufrufen

  2. Klicken Sie auf die Beschreibung des Übertragungsjobs. Die Seite Jobdetails wird angezeigt.

  3. Klicken Sie auf Konfiguration. Die Konfiguration des Übertragungsjobs wird angezeigt.

  4. Zum Ändern eines Elements klicken Sie neben dem Element auf Bearbeiten.

  5. Klicken Sie auf Ausführung starten, um einen Job mit den Änderungen zu starten.

REST

Verwenden Sie zum Bearbeiten einer Übertragungskonfiguration die Methode transferJobs.patch.

Übertragungsjob von einer vorhandenen Konfiguration ausführen

Sie können einen vorhandenen Übertragungsjob ausführen. So können Sie Jobs starten, die keinen Zeitplan haben, oder einen Job außerhalb des Zeitplans starten.

gcloud-CLI

Verwenden Sie gcloud transfer jobs run, um eine Übertragung von einer vorhandenen Konfiguration auszuführen:

gcloud transfer jobs run JOB_NAME

Optional kann das Flag --no-async angegeben werden, um andere Aufgaben in Ihrem Terminal zu blockieren, bis der Übertragungsvorgang abgeschlossen ist.

Google Cloud Console

So führen Sie eine Übertragung von einer vorhandenen Konfiguration aus:

  1. Rufen Sie in der Google Cloud Console die Seite Storage Transfer Service auf.

    Storage Transfer Service aufrufen

  2. Klicken Sie auf die Beschreibung des Übertragungsjobs. Die Seite Jobdetails wird angezeigt.

  3. Klicken Sie zum Starten eines Übertragungsjobs auf Ausführung starten.

REST

Verwenden Sie die Methode transferJobs.run, um einen Übertragungsjob auszuführen.

Übertragungsjob überwachen

gcloud-CLI

Verwenden Sie gcloud transfer jobs monitor, um den Fortschritt eines Jobs in Echtzeit zu überwachen.

gcloud transfer jobs monitor JOB_NAME

Die Antwort zeigt den aktuellen Vorgang, die Startzeit des Jobs und die Menge der übertragenen Daten. Übersprungene Byte und Fehler werden ebenfalls gezählt.

Cloud Monitoring

Weitere Informationen zur Verwendung von Cloud Monitoring mit dem Storage Transfer Service finden Sie unter Übertragungsjobs beobachten.

Details zum Übertragungsjob ansehen

gcloud-CLI

Verwenden Sie gcloud transfer jobs describe, um Details zum Übertragungsjob aufzurufen:

gcloud transfer jobs describe JOB_NAME

Um sich den letzten Vorgang dieses Jobs anzusehen, übergeben Sie den Wert von latestOperationName an den Befehl operations describe:

gcloud transfer operations describe OPERATION_NAME

Verwenden Sie den Befehl gcloud transfer operations list, um alle Übertragungsvorgänge eines Jobs aufzulisten:

gcloud transfer operations list --job-names=JOB_NAME

Sie können Vorgänge für mehrere Jobs aufrufen, indem Sie sie durch Kommas getrennt als Wert von --job-names auflisten. Lassen Sie --job-names aus, um Vorgänge für alle Jobs aufzurufen.

Google Cloud Console

Sie können sich die folgenden Jobdetails in der Google Cloud Console ansehen:

  • Jobbeschreibung und Name
  • Quelltyp und Speicherort
  • Zielspeicherort
  • Jobhäufigkeit
  • Jobstatistiken

So rufen Sie Details zu Übertragungsjobs auf:

  1. Rufen Sie in der Google Cloud Console die Seite Storage Transfer Service auf.

    Storage Transfer Service aufrufen

  2. Klicken Sie auf die Beschreibung des Übertragungsjobs. Die Seite Jobdetails wird angezeigt.

Klicken Sie auf Beginn, um die Details einer bestimmten Ausführung anzuzeigen. Folgende Jobinformationen sind verfügbar:

  • Transferstatus
  • Beginn und Ende
  • Dauer
  • Fortschritt
  • Übertragene Daten
  • Anzahl der Fehler
  • Übersprungene Daten
  • Geschätzte durchschnittliche Geschwindigkeit

REST

Wenn Sie die Details eines Übertragungsjobs aufrufen möchten, verwenden Sie die Methode transferJobs.get, um Informationen zu einem bestimmten Übertragungsjob wie die Vorgangs-ID zurückzugeben.

Clientbibliotheken

Eine TransferJob-Ressource wird zurückgegeben, wenn Sie transferJobs.create verwenden.

Sie können den Übertragungsstatus nach dem Erstellen des Jobs mit transferJobs.get prüfen. Sobald der Übertragungsjob gestartet wurde, wird ein TransferJob mit einem ausgefüllten latestOperationName-Feld zurückgegeben. Wenn Übertragungsjob noch nicht begonnen hat, ist das Feld latestOperationName leer.

Status eines Übertragungsjobs prüfen

REST

Anfrage mit transferJobs.get:
GET https://storagetransfer.googleapis.com/v1/{jobName="name"}

Go

import (
	"context"
	"fmt"
	"io"

	"cloud.google.com/go/longrunning/autogen/longrunningpb"
	storagetransfer "cloud.google.com/go/storagetransfer/apiv1"
	"cloud.google.com/go/storagetransfer/apiv1/storagetransferpb"
)

func checkLatestTransferOperation(w io.Writer, projectID string, jobName string) (*storagetransferpb.TransferOperation, error) {
	// Your Google Cloud Project ID
	// projectID := "my-project-id"

	// The name of the job whose latest operation to check
	// jobName := "transferJobs/1234567890"
	ctx := context.Background()
	client, err := storagetransfer.NewClient(ctx)
	if err != nil {
		return nil, fmt.Errorf("storagetransfer.NewClient: %w", err)
	}
	defer client.Close()

	job, err := client.GetTransferJob(ctx, &storagetransferpb.GetTransferJobRequest{
		JobName:   jobName,
		ProjectId: projectID,
	})
	if err != nil {
		return nil, fmt.Errorf("failed to get transfer job: %w", err)
	}

	latestOpName := job.LatestOperationName
	if latestOpName != "" {
		lro, err := client.LROClient.GetOperation(ctx, &longrunningpb.GetOperationRequest{
			Name: latestOpName,
		})
		if err != nil {
			return nil, fmt.Errorf("failed to get transfer operation: %w", err)
		}
		latestOp := &storagetransferpb.TransferOperation{}
		lro.Metadata.UnmarshalTo(latestOp)

		fmt.Fprintf(w, "the latest transfer operation for job %q is: \n%v", jobName, latestOp)
		return latestOp, nil
	} else {
		fmt.Fprintf(w, "Transfer job %q hasn't run yet, try again later", jobName)
		return nil, nil
	}
}

Java

Sie suchen nach älteren Beispielen? Weitere Informationen finden Sie im Storage Transfer Service-Migrationsleitfaden.


import com.google.longrunning.Operation;
import com.google.storagetransfer.v1.proto.StorageTransferServiceClient;
import com.google.storagetransfer.v1.proto.TransferProto.GetTransferJobRequest;
import com.google.storagetransfer.v1.proto.TransferTypes.TransferJob;
import com.google.storagetransfer.v1.proto.TransferTypes.TransferOperation;
import java.io.IOException;

public class CheckLatestTransferOperation {

  // Gets the requested transfer job and checks its latest operation
  public static void checkLatestTransferOperation(String projectId, String jobName)
      throws IOException {
    // Your Google Cloud Project ID
    // String projectId = "your-project-id";

    // The name of the job to check
    // String jobName = "myJob/1234567890";

    StorageTransferServiceClient storageTransfer = StorageTransferServiceClient.create();

    // Get transfer job and check latest operation
    TransferJob transferJob =
        storageTransfer.getTransferJob(
            GetTransferJobRequest.newBuilder().setJobName(jobName).setProjectId(projectId).build());
    String latestOperationName = transferJob.getLatestOperationName();

    if (!latestOperationName.isEmpty()) {
      Operation operation = storageTransfer.getOperationsClient().getOperation(latestOperationName);
      TransferOperation latestOperation =
          TransferOperation.parseFrom(operation.getMetadata().getValue());

      System.out.println("The latest operation for transfer job " + jobName + " is:");
      System.out.println(latestOperation.toString());

    } else {
      System.out.println(
          "Transfer job "
              + jobName
              + " hasn't run yet,"
              + " try again once the job starts running.");
    }
  }
}

Node.js


// Imports the Google Cloud client library
const {
  StorageTransferServiceClient,
} = require('@google-cloud/storage-transfer');

/**
 * TODO(developer): Uncomment the following lines before running the sample.
 */
// The ID of the Google Cloud Platform Project that owns the job
// projectId = 'my-project-id'

// Storage Transfer Service job name
// jobName = 'transferJobs/1234567890'

// Creates a client
const client = new StorageTransferServiceClient();

/**
 * Checks the latest transfer operation for a given transfer job.
 */
async function checkLatestTransferOperation() {
  const [transferJob] = await client.getTransferJob({projectId, jobName});

  if (transferJob.latestOperationName) {
    const [transferOperation] = await client.operationsClient.getOperation({
      name: transferJob.latestOperationName,
    });

    const operation = JSON.stringify(transferOperation, null, 2);

    console.log(`Latest transfer operation for '${jobName}': ${operation}`);
  } else {
    console.log(`Transfer job '${jobName}' has not ran yet.`);
  }
}

checkLatestTransferOperation();

Python

Sie suchen nach älteren Beispielen? Weitere Informationen finden Sie im Storage Transfer Service-Migrationsleitfaden.

from google.cloud import storage_transfer


def check_latest_transfer_operation(project_id: str, job_name: str):
    """Checks the latest transfer operation for a given transfer job."""

    client = storage_transfer.StorageTransferServiceClient()

    # The ID of the Google Cloud Platform Project that owns the job
    # project_id = 'my-project-id'

    # Storage Transfer Service job name
    # job_name = 'transferJobs/1234567890'

    transfer_job = client.get_transfer_job(
        {
            "project_id": project_id,
            "job_name": job_name,
        }
    )

    if transfer_job.latest_operation_name:
        response = client.transport.operations_client.get_operation(
            transfer_job.latest_operation_name
        )
        operation = storage_transfer.TransferOperation.deserialize(
            response.metadata.value
        )

        print(f"Latest transfer operation for `{job_name}`: {operation}")
    else:
        print(f"Transfer job {job_name} has not ran yet.")

Übertragungsjob pausieren

Sie können eine aktuell laufende Übertragung pausieren. Wenn Sie die Übertragung pausieren, wird der Jobstatus beibehalten und Sie können sie später wieder aktivieren. Während eine Übertragung pausiert wird, wird der Job durch den Zeitplan nicht noch einmal ausgelöst.

gcloud-CLI

Übergeben Sie den aktuellen Vorgangsnamen des Jobs an gcloud transfer operations pause, um einen Übertragungsjob zu pausieren.

gcloud transfer operations pause OPERATION_NAME

Verwenden Sie gcloud transfer operations resume, um einen pausierten Übertragungsjob dort fortzusetzen, wo er pausiert wurde.

gcloud transfer operations resume OPERATION_NAME

Google Cloud Console

So pausieren Sie einen Übertragungsjob:

  1. Rufen Sie in der Google Cloud Console die Seite Storage Transfer Service auf.

    Storage Transfer Service aufrufen

  2. Klicken Sie auf die Beschreibung des Übertragungsjobs. Die Seite Jobdetails wird angezeigt.

  3. Klicken Sie auf Ausführung pausieren. Der Status des aktuellen Vorgangs wird als Pausiert angezeigt.

Folgen Sie folgenden Schritten, um einen pausierten Übertragungsjob dort fortzusetzen, wo er pausiert wurde.

  1. Rufen Sie in der Google Cloud Console die Seite Storage Transfer Service auf.

    Storage Transfer Service aufrufen

  2. Klicken Sie auf die Beschreibung des Übertragungsjobs. Die Seite Jobdetails wird angezeigt.

  3. Klicken Sie auf Ausführung fortsetzen.

    Der Status des aktuellen Vorgangs wird als In Bearbeitung angezeigt.

REST

Verwenden Sie die Methode transferOperations.pause, um einen Übertragungsjob zu pausieren.

Übertragungsjob deaktivieren

Durch das Deaktivieren eines Übertragungsjobs können Sie verhindern, dass der Übertragungsjob weitere geplante Vorgänge startet oder Vorgänge manuell über die Konsole startet. Sie verhindern nicht, dass ein Job mit der API oder mit dem gcloud-Befehl jobs run manuell gestartet wird.

gcloud-CLI

Aktualisieren Sie den Status des Jobs auf disabled, um einen Übertragungsjob zu deaktivieren.

gcloud transfer jobs update JOB_NAME --status=disabled

Legen Sie --status=enabled fest, um einen Job wieder zu aktivieren.

Google Cloud Console

So deaktivieren Sie einen Übertragungsjob:

  1. Rufen Sie in der Google Cloud Console die Seite Storage Transfer Service auf.

    Storage Transfer Service aufrufen

  2. Klicken Sie auf die Beschreibung des Übertragungsjobs. Die Seite Jobdetails wird angezeigt.

  3. Klicken Sie auf Job deaktivieren. Das Dialogfeld Übertragungsjob deaktivieren? wird angezeigt.

  4. Lesen Sie das Dialogfeld und bestätigen Sie die Deaktivierung des Jobs, indem Sie auf Bestätigen klicken.

    Oben auf der Seite Jobdetails wird ein Hinweis angezeigt, der Sie darauf hinweist, dass der Job deaktiviert ist.

REST

Verwenden Sie die Methode transferJobs.patch, um den Status des Übertragungsjobs auf DISABLED festzulegen.

Übertragungsjob löschen

Sie können nicht mehr benötigte Übertragungsjobs löschen. Das Löschen eines Jobs sorgt auch für Folgendes:

  • Beendet alle vorhandenen Übertragungen, die Teil des Jobs sind
  • Beendet alle wiederkehrenden Übertragungen, die zum Job gehören
  • Löscht die Konfigurationsdetails des Jobs

Das Löschen eines Jobs ist endgültig. Wenn Sie den Übertragungsjob löschen, wird er aus der Liste der Übertragungsjobs entfernt. Die Informationen zu Übertragungsjobs werden nach 30 Tagen vollständig aus Storage Transfer Service gelöscht.

Alternativ können Sie den Übertragungsjob deaktivieren, wodurch der Job auf der Seite Jobs beibehalten wird und Sie ihn wieder aktivieren oder ändern können.

gcloud-CLI

Verwenden Sie gcloud transfer jobs delete zum Löschen eines Übertragungsjobs.

gcloud transfer jobs delete JOB_NAME

Google Cloud Console

So löschen Sie einen Übertragungsjob:

  1. Rufen Sie in der Google Cloud Console die Seite Storage Transfer Service auf.

    Storage Transfer Service aufrufen

  2. Klicken Sie das Kästchen neben dem Übertragungsjob an, den Sie löschen möchten.

  3. Klicken Sie auf Job löschen.

    Das Dialogfeld Übertragungsjob löschen? wird angezeigt.

  4. Lesen Sie das Dialogfeld und bestätigen Sie das Löschen des Jobs, indem Sie den automatisch zugewiesenen Namen des Jobs in das Feld eingeben und auf Löschen klicken.

    Der Job wird von der Seite Jobs entfernt.

REST

Informationen zum Löschen eines Übertragungsjobs mit der REST API finden Sie in der Referenz zu transferJobs.delete.

Fehlerdetails ansehen

Wenn bei einer Übertragungsausführung Fehler auftreten, können Sie sich Fehlerdetails ansehen, um den Fehler zu beheben.

So können Sie Fehlerdetails für eine Übertragungsjobausführung anzeigen lassen:

  1. Rufen Sie in der Google Cloud Console die Seite Storage Transfer Service auf.

    Storage Transfer Service aufrufen

  2. Klicken Sie auf die Beschreibung des Übertragungsjobs. Die Seite Jobdetails wird angezeigt.

  3. Führen Sie einen der folgenden Schritte aus, um Jobdetails aufzurufen:

    • Letzte Jobausführung:Klicken Sie entweder auf die Schaltfläche Fehlerdetails aufrufen oder auf den Link Fehlerdetails ansehen. Die Seite Fehlerdetails wird angezeigt.

    • Ausführung historischer Jobs:

      1. Klicken Sie auf den Beginn der Jobausführung.

        Die Seite Ausführungsdetails wird angezeigt.

      2. Klicken Sie auf den Link Fehlerdetails ansehen.

        Die Seite Fehlerdetails wird angezeigt.

  4. Klicken Sie auf Mehr anzeigen, um zusätzliche Details zu jedem angezeigten Fehler anzuzeigen.

  5. Geben Sie zum Filtern entsprechende Attribute im Feld Name oder Wert des Attributs eingeben ein.

    Wenn Sie den Cursor in das Feld setzen, wird ein Drop-down-Menü mit relevanten Optionen zum Erstellen Ihres Filters angezeigt.