REST Resource: transferOperations

Resource: TransferOperation

Deskripsi eksekusi transfer.

Representasi JSON
{
  "name": string,
  "projectId": string,
  "transferSpec": {
    object (TransferSpec)
  },
  "notificationConfig": {
    object (NotificationConfig)
  },
  "loggingConfig": {
    object (LoggingConfig)
  },
  "startTime": string,
  "endTime": string,
  "status": enum (Status),
  "counters": {
    object (TransferCounters)
  },
  "errorBreakdowns": [
    {
      object (ErrorSummary)
    }
  ],
  "transferJobName": string
}
Kolom
name

string

ID unik global yang ditetapkan oleh sistem.

projectId

string

ID project Google Cloud yang memiliki operasi.

transferSpec

object (TransferSpec)

Spesifikasi transfer.

notificationConfig

object (NotificationConfig)

Konfigurasi notifikasi.

loggingConfig

object (LoggingConfig)

Konfigurasi Cloud Logging.

startTime

string (Timestamp format)

Waktu mulai eksekusi transfer ini.

Menggunakan RFC 3339, dengan output yang dihasilkan akan selalu dinormalisasi Z dan menggunakan digit pecahan 0, 3, 6, atau 9. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

endTime

string (Timestamp format)

Waktu berakhir eksekusi transfer ini.

Menggunakan RFC 3339, dengan output yang dihasilkan akan selalu dinormalisasi Z dan menggunakan digit pecahan 0, 3, 6, atau 9. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

status

enum (Status)

Status operasi transfer.

counters

object (TransferCounters)

Informasi tentang progres operasi transfer.

errorBreakdowns[]

object (ErrorSummary)

Merangkum error yang ditemukan dengan contoh entri log error.

transferJobName

string

Nama tugas transfer yang memicu operasi transfer ini.

Status

Status TransferOperation.

Enum
STATUS_UNSPECIFIED Nol adalah nilai yang tidak sah.
IN_PROGRESS Sedang berlangsung.
PAUSED Dijeda.
SUCCESS Berhasil diselesaikan.
FAILED Dihentikan karena kegagalan yang tidak dapat dipulihkan.
ABORTED Dibatalkan oleh pengguna.
QUEUED Tertunda untuk sementara oleh sistem. Pengguna tidak perlu melakukan tindakan apa pun.
SUSPENDING Operasi ini menangguhkan dan menghabiskan pekerjaan yang sedang berlangsung hingga selesai.

TransferCounters

Kumpulan penghitung yang melaporkan progres operasi transfer.

Representasi JSON
{
  "objectsFoundFromSource": string,
  "bytesFoundFromSource": string,
  "objectsFoundOnlyFromSink": string,
  "bytesFoundOnlyFromSink": string,
  "objectsFromSourceSkippedBySync": string,
  "bytesFromSourceSkippedBySync": string,
  "objectsCopiedToSink": string,
  "bytesCopiedToSink": string,
  "objectsDeletedFromSource": string,
  "bytesDeletedFromSource": string,
  "objectsDeletedFromSink": string,
  "bytesDeletedFromSink": string,
  "objectsFromSourceFailed": string,
  "bytesFromSourceFailed": string,
  "objectsFailedToDeleteFromSink": string,
  "bytesFailedToDeleteFromSink": string,
  "directoriesFoundFromSource": string,
  "directoriesFailedToListFromSource": string,
  "directoriesSuccessfullyListedFromSource": string,
  "intermediateObjectsCleanedUp": string,
  "intermediateObjectsFailedCleanedUp": string
}
Kolom
objectsFoundFromSource

string (int64 format)

Objek yang ditemukan di sumber data yang dijadwalkan untuk ditransfer, tidak termasuk objek yang difilter berdasarkan kondisi objek atau dilewati karena sinkronisasi.

bytesFoundFromSource

string (int64 format)

Byte yang ditemukan di sumber data yang dijadwalkan untuk ditransfer, tidak termasuk byte yang difilter berdasarkan kondisi objek atau dilewati karena sinkronisasi.

objectsFoundOnlyFromSink

string (int64 format)

Objek yang hanya ditemukan di sink data yang dijadwalkan untuk dihapus.

bytesFoundOnlyFromSink

string (int64 format)

Byte yang hanya ditemukan di sink data yang dijadwalkan untuk dihapus.

objectsFromSourceSkippedBySync

string (int64 format)

Objek di sumber data yang tidak ditransfer karena sudah ada di sink data.

bytesFromSourceSkippedBySync

string (int64 format)

Byte di sumber data yang tidak ditransfer karena sudah ada di sink data.

objectsCopiedToSink

string (int64 format)

Objek yang disalin ke sink data.

bytesCopiedToSink

string (int64 format)

Byte yang disalin ke sink data.

objectsDeletedFromSource

string (int64 format)

Objek yang dihapus dari sumber data.

bytesDeletedFromSource

string (int64 format)

Byte yang dihapus dari sumber data.

objectsDeletedFromSink

string (int64 format)

Objek yang dihapus dari sink data.

bytesDeletedFromSink

string (int64 format)

Byte yang dihapus dari sink data.

objectsFromSourceFailed

string (int64 format)

Objek di sumber data yang gagal ditransfer atau gagal dihapus setelah ditransfer.

bytesFromSourceFailed

string (int64 format)

Byte di sumber data yang gagal ditransfer atau gagal dihapus setelah ditransfer.

objectsFailedToDeleteFromSink

string (int64 format)

Objek yang gagal dihapus dari sink data.

bytesFailedToDeleteFromSink

string (int64 format)

Byte yang gagal dihapus dari sink data.

directoriesFoundFromSource

string (int64 format)

Hanya untuk transfer yang melibatkan PosixFilesystem.

Jumlah direktori yang ditemukan saat mencantumkan. Misalnya, jika direktori utama transfer adalah base/ dan ada dua direktori lain, a/ dan b/ di bawah direktori ini, jumlah setelah mencantumkan base/, base/a/, dan base/b/ adalah 3.

directoriesFailedToListFromSource

string (int64 format)

Hanya untuk transfer yang melibatkan PosixFilesystem.

Jumlah kegagalan listingan untuk setiap direktori yang ditemukan di sumber. Kemungkinan kegagalan saat mencantumkan direktori mencakup kegagalan izin atau kegagalan pemblokiran. Jika pencantuman direktori gagal, tidak ada file dalam direktori yang ditransfer.

directoriesSuccessfullyListedFromSource

string (int64 format)

Hanya untuk transfer yang melibatkan PosixFilesystem.

Jumlah listingan yang berhasil untuk setiap direktori yang ditemukan di sumber.

intermediateObjectsCleanedUp

string (int64 format)

Jumlah objek perantara yang berhasil dibersihkan.

intermediateObjectsFailedCleanedUp

string (int64 format)

Jumlah objek perantara yang gagal dibersihkan.

ErrorSummary

Ringkasan error berdasarkan kode error, serta jumlah dan contoh entri log error.

Representasi JSON
{
  "errorCode": enum (Code),
  "errorCount": string,
  "errorLogEntries": [
    {
      object (ErrorLogEntry)
    }
  ]
}
Kolom
errorCode

enum (Code)

Wajib.

errorCount

string (int64 format)

Wajib. Jumlah jenis error ini.

errorLogEntries[]

object (ErrorLogEntry)

Contoh error.

Maksimum 5 entri log error dicatat untuk kode error tertentu untuk satu operasi transfer.

Kode

Kode error kanonis untuk Google API.

Enum
OK

Bukan error; ditampilkan jika berhasil.

Pemetaan HTTP: 200 OK

CANCELLED

Operasi dibatalkan, biasanya oleh pemanggil.

Pemetaan HTTP: 499 Client Closed Request

UNKNOWN

Error tidak diketahui. Misalnya, error ini dapat ditampilkan jika nilai Status yang diterima dari ruang alamat lain yang berada di ruang error yang tidak diketahui di ruang alamat ini. Selain itu, error yang dilaporkan oleh API yang tidak menampilkan informasi error yang mencukupi dapat dianggap sebagai error ini.

Pemetaan HTTP: Error Server Internal 500

INVALID_ARGUMENT

Klien menetapkan argumen yang tidak valid. Perhatikan bahwa ini berbeda dengan FAILED_PRECONDITION. INVALID_ARGUMENT menyatakan argumen yang bermasalah, terlepas dari keadaannya di dalam sistem (misalnya, nama file yang salah format).

Pemetaan HTTP: 400 Permintaan Tidak Valid

DEADLINE_EXCEEDED

Batas waktu berakhir sebelum operasi selesai. Untuk operasi yang mengubah keadaan sistem, error ini mungkin ditampilkan, bahkan jika, operasi tersebut telah selesai. Sebagai contoh, respons berhasil dari suatu server dapat tertunda selama waktu yang cukup lama hingga tenggat waktu berakhir.

Pemetaan HTTP: 504 Gateway Timeout

NOT_FOUND

Beberapa entity yang diminta (misalnya, file atau direktori) tidak ditemukan.

Catatan bagi developer server: apabila suatu permintaan ditolak pada seluruh kelas pengguna, seperti peluncuran bertahap, atau daftar yang diberi akses, NOT_FOUND dapat digunakan. Jika permintaan ditolak pada beberapa pengguna di dalam suatu kelas pengguna, seperti pada kontrol akses basis pengguna, maka, PERMISSION_DENIED harus digunakan.

Pemetaan HTTP: 404 Not Found

ALREADY_EXISTS

Entitas yang coba dibuat oleh klien (misalnya, file atau direktori) sudah ada.

Pemetaan HTTP: 409 Conflict

PERMISSION_DENIED

Pemanggil tidak memiliki izin untuk menjalankan operasi yang ditentukan. PERMISSION_DENIED tidak boleh digunakan untuk penolakan yang disebabkan oleh kehabisan beberapa resource (gunakan RESOURCE_EXHAUSTED untuk error tersebut). PERMISSION_DENIED tidak boleh digunakan apabila pemanggil tidak dapat diidentifikasi (gunakan UNAUTHENTICATED untuk error tersebut). Kode error ini tidak menyatakan bahwa suatu permintaan valid atau entitas yang diminta ada atau memenuhi prakondisi lainnya.

Pemetaan HTTP: 403 Forbidden

UNAUTHENTICATED

Permintaan tidak memiliki kredensial autentikasi operasi yang valid.

Pemetaan HTTP: 401 Tidak Sah

RESOURCE_EXHAUSTED

Beberapa resource telah habis, kemungkinan adalah kuota per pengguna, atau kemungkinan seluruh sistem file kehabisan ruang.

Pemetaan HTTP: 429 Too Many Requests

FAILED_PRECONDITION

Operasi tersebut ditolak karena sistem tidak dalam keadaan dibutuhkan untuk menjalankan operasi. Misalnya, direktori yang akan dihapus tidak kosong, operasi rmdir diterapkan pada non-direktori, dll.

Pelaksana layanan dapat menggunakan panduan berikut untuk menentukan manakah yang paling sesuai di antara FAILED_PRECONDITION, ABORTED, dan UNAVAILABLE: (a) Gunakan UNAVAILABLE apabila klien dapat mencoba kembali panggilan yang gagal sesegera mungkin. (b) Gunakan ABORTED jika klien harus mencoba lagi pada tingkat yang lebih tinggi. Misalnya, saat kegagalan test-and-set, yang menunjukkan bahwa klien harus memulai ulang urutan baca-ubah-tulis. (c) Gunakan FAILED_PRECONDITION jika klien tidak diizinkan untuk mencoba kembali hingga status sistem diperbaiki secara eksplisit. Misalnya, jika "rmdir" gagal karena direktori tidak kosong, FAILED_PRECONDITION akan ditampilkan karena klien tidak diizinkan untuk mencoba kembali kecuali jika file dihapus dari direktori.

Pemetaan HTTP: 400 Permintaan Tidak Valid

ABORTED

Operasi dibatalkan, umumnya karena masalah konkurensi seperti kegagalan pemeriksaan pengurut atau pembatalan transaksi.

Lihat panduan di atas untuk menentukan manakah yang sesuai antara FAILED_PRECONDITION, ABORTED, dan UNAVAILABLE.

Pemetaan HTTP: 409 Conflict

OUT_OF_RANGE

Upaya operasi dilakukan melampaui rentang yang valid. Mis., mencari tahu atau membaca melampaui akhir file.

Tidak seperti INVALID_ARGUMENT, error ini menunjukkan masalah yang dapat diperbaiki jika status sistem berubah. Misalnya, sistem file 32-bit akan menghasilkan INVALID_ARGUMENT jika diminta untuk membaca pada offset yang tidak berada dalam rentang [0,2^32-1], tetapi akan menghasilkan OUT_OF_RANGE jika diminta untuk membaca dari offset melewati ukuran file saat ini.

Terdapat sedikit tumpang-tindih antara FAILED_PRECONDITION dengan OUT_OF_RANGE. Sebaiknya gunakan OUT_OF_RANGE (error yang lebih spesifik) jika memang sesuai, sehingga pemanggil yang melakukan iterasi melalui ruang dapat dengan mudah mencari error OUT_OF_RANGE untuk dideteksi ketika selesai.

Pemetaan HTTP: 400 Permintaan Tidak Valid

UNIMPLEMENTED

Operasi tidak diterapkan atau tidak didukung/diaktifkan dalam layanan ini.

Pemetaan HTTP: 501 Not Implemented

INTERNAL

Error internal. Artinya beberapa invarian yang diperlukan oleh sistem pokok telah rusak. Kode error ini disediakan untuk error yang bersifat serius.

Pemetaan HTTP: Error Server Internal 500

UNAVAILABLE

Saat ini layanan tidak tersedia. Kemungkinan besar ini hanya kondisi sementara, yang dapat diperbaiki dengan mencoba kembali menggunakan backoff. Perlu diketahui bahwa mencoba kembali operasi non-idempoten tidak selalu aman.

Lihat panduan di atas untuk menentukan manakah yang sesuai antara FAILED_PRECONDITION, ABORTED, dan UNAVAILABLE.

Pemetaan HTTP: 503 Layanan Tidak Tersedia

DATA_LOSS

Data hilang atau rusak yang tidak dapat dipulihkan.

Pemetaan HTTP: Error Server Internal 500

ErrorLogEntry

Entri yang menjelaskan error yang telah terjadi.

Representasi JSON
{
  "url": string,
  "errorDetails": [
    string
  ]
}
Kolom
url

string

Wajib. URL yang merujuk ke target (sumber data, penampungan data, atau objek) yang terkait dengan error.

errorDetails[]

string

Daftar pesan yang membawa detail error.

Metode

cancel

Membatalkan transfer.

get

Mengambil status terbaru dari operasi yang berjalan lama.

list

Mencantumkan operasi transfer.

pause

Menjeda operasi transfer.

resume

Melanjutkan operasi transfer yang dijeda.