Halaman ini menjelaskan cara menyalin entri log yang sudah disimpan di bucket log Cloud Logging ke bucket Cloud Storage secara manual. Operasi salinan tidak mengharuskan bucket log dan bucket Cloud Storage berada dalam project Google Cloud yang sama.
Anda mungkin ingin menyalin entri log dari bucket log ke bucket Cloud Storage karena alasan berikut:
- Jika Anda lupa merutekan entri log ke Cloud Storage sebelum penyimpanannya di Logging.
- Untuk membagikan entri log kepada auditor di luar Logging.
- Untuk menganalisis entri log dengan skrip di Cloud Storage.
Saat Anda menyalin entri log ke Cloud Storage, entri log juga tetap berada di bucket log tempat entri tersebut disalin.
Operasi salin tidak menggantikan sink, yang secara otomatis mengirim semua entri log masuk yang cocok dengan filter penyertaan dan pengecualian ke tujuan penyimpanan yang didukung dan telah dipilih sebelumnya, termasuk bucket Cloud Storage. Gunakan sink jika Anda tahu bahwa Anda ingin menyimpan entri log di bucket Cloud Storage.
Untuk menyalin log, lalu mengelola dan memantau operasi, Anda harus menggunakan Google Cloud CLI.
Batasan
Batasan berikut berlaku saat menyalin entri log:
Anda hanya dapat menyalin log ke bucket Cloud Storage; tujuan lain tidak tersedia.
Anda tidak dapat menyalin log dari bucket log yang telah mengonfigurasi CMEK.
Sebelum memulai
Sebelum Anda mulai menyalin log, lakukan hal berikut:
- Pastikan Anda menggunakan gcloud CLI versi terbaru. Untuk petunjuk tentang cara menginstal atau mengupdate gcloud CLI, lihat Mengelola komponen Google Cloud CLI.
-
Untuk mendapatkan izin yang Anda perlukan untuk menyalin entri log, minta administrator untuk memberi Anda peran IAM berikut pada project yang berisi bucket log tempat Anda menyalin:
-
Untuk menjalankan operasi penyalinan:
Admin Logging (
roles/logging.admin
) -
Untuk melihat dan mengelola status operasi penyalinan:
Logs Configuration Writer (
roles/logging.configWriter
)
-
Untuk menjalankan operasi penyalinan:
Admin Logging (
-
Untuk mendapatkan izin yang diperlukan guna menulis entri log ke Cloud Storage, minta administrator untuk memberi Anda peran IAM Storage Object Creator (
roles/storage.objectCreator
) pada project yang berisi bucket Cloud Storage.
Menyalin entri log
Logging hanya menyalin entri log yang disimpan di bucket log saat operasi penyalinan dimulai. Entri log yang disimpan di bucket log setelah operasi penyalinan dimulai tidak akan disalin ke Cloud Storage.
Untuk menyalin entri log ke Cloud Storage, Anda perlu mengetahui informasi berikut:
- ID dan lokasi bucket log yang Anda salin.
Untuk mengambil ID bucket log dan lokasinya, gunakan
perintah gcloud CLI
gcloud logging buckets list
. - Nama bucket Cloud Storage tempat Anda menyalin. Untuk mengetahui informasi tentang cara mengambil nama bucket Cloud Storage, lihat Mendapatkan informasi bucket Cloud Storage.
- Filter untuk entri log yang ingin Anda salin.
Untuk menyalin entri log, jalankan perintah
gcloud logging copy
:
gcloud logging copy BUCKET_ID storage.googleapis.com/CLOUD_STORAGE_BUCKET_NAME \
--location=LOCATION --log-filter='FILTER' --project=PROJECT_ID
Sebelum menjalankan perintah sebelumnya, lakukan hal berikut:
- Ganti BUCKET_ID dengan nama bucket log Anda.
- Ganti CLOUD_STORAGE_BUCKET_NAME dengan nama bucket Cloud Storage Anda.
- Ganti LOCATION dengan lokasi bucket log.
(Opsional): Ganti FILTER dengan filter yang menentukan log mana yang disalin.
Jika Anda menghapus tanda
--log-filter
, semua entri log di bucket log akan disalin ke bucket Cloud Storage.Ganti PROJECT_ID dengan ID project Google Cloud Anda. Anda dapat menghilangkan tanda ini saat konfigurasi gcloud CLI yang aktif ditetapkan ke project Google Cloud yang benar.
Contoh perintah:
gcloud logging copy my-log-bucket storage.googleapis.com/my-gcs-bucket \
--location=global --log-filter='timestamp > "2024-07-18T10:00:00.0Z"' \
--project=my-project
Perintah ini membuat operasi yang berjalan lama untuk dijalankan di latar belakang dan menampilkan nama operasi salinan serta lokasi bucket log:
name: projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID
Lokasi operasi penyalinan sama dengan lokasi bucket log yang Anda salin.
Melihat dan mengelola operasi salin
Anda dapat melihat dan mengelola operasi penyalinan menggunakan perintah gcloud logging operations
, yang memungkinkan Anda mencantumkan, melihat, dan membatalkan operasi.
Perintah berikut mengharuskan Anda menentukan lokasi operasi. Gunakan lokasi bucket log Anda. Untuk mengetahui informasi tentang cara menemukan lokasi bucket log, lihat Melihat detail bucket.
Mencantumkan operasi penyalinan
Anda dapat mencantumkan operasi penyalinan terbaru, termasuk operasi terjadwal, berjalan, selesai, gagal, dan dibatalkan. Operasi salinan terbaru akan muncul dalam hasil hingga 30 hari setelah waktu berakhir.
Untuk mencantumkan operasi salinan, jalankan perintah berikut:
gcloud logging operations list --location=LOCATION \
--operation-filter=request_type=CopyLogEntries \
--project=PROJECT_ID
Sebelum menjalankan perintah sebelumnya, lakukan hal berikut:
- Ganti LOCATION dengan lokasi bucket log tempat Anda menyalin.
- Ganti PROJECT_ID dengan ID project Google Cloud Anda.
Perintah ini menampilkan informasi tentang operasi yang berjalan lama, termasuk ID operasi:
projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID
Melihat status operasi penyalinan
Anda dapat mengambil status dan metadata lainnya tentang operasi penyalinan, termasuk hal berikut:
startTime
: Stempel waktu yang menunjukkan pembuatan operasi.endTime
: Stempel waktu yang menunjukkan penyelesaian operasi.state
: Status operasi (dijadwalkan, berjalan, dibatalkan, gagal, atau berhasil).cancellation
: Apakah pengguna telah meminta untuk membatalkan operasi.progress
: Estimasi progres operasi (0-100%).destination
: Nama bucket Cloud Storage tempat operasi menyalin log.filter
: Filter yang menentukan entri log yang akan disalin.name
: Nama bucket log tempat operasi menyalin log.logEntriesCopiedCount
: Jumlah entri log yang berhasil disalin ke bucket Cloud Storage oleh operasi.
Perhatikan bahwa tidak semua kolom metadata yang tercantum berlaku untuk setiap operasi penyalinan.
Misalnya, jika operasi penyalinan masih berjalan, metadata endtime
tidak akan berlaku untuk operasi tersebut. Sebagai contoh lain, jika
tanda --log-filter=FILTER
tidak digunakan saat menjalankan
perintah gcloud logging copy
, metadata filter
tidak akan berlaku
untuk operasi.
Untuk mengambil informasi tentang operasi salinan, jalankan perintah berikut:
gcloud logging operations describe OPERATION_ID \
--location=LOCATION --project=PROJECT_ID
Sebelum menjalankan perintah sebelumnya, lakukan hal berikut:
- Ganti OPERATION_ID dengan ID operasi.
- Ganti LOCATION dengan lokasi bucket log tempat Anda menyalin.
- Ganti PROJECT_ID dengan ID project Google Cloud Anda.
Perintah ini menampilkan metadata tentang operasi salinan. Misalnya, berikut adalah output untuk operasi yang sedang berlangsung:
done: false
metadata:
`@type`: type.googleapis.com/google.logging.v2.CopyLogEntriesMetadata
progress: 75
destination: storage.googleapis.com/my-storage-bucket-1
source: projects/my-test-project/locations/us-central1/buckets/my-logging-bucket-2
verb: copy
startTime: `2024-05-23T10:52:40.039751Z`
state: OPERATION_STATE_RUNNING
name: projects/my-test-project/locations/us-central1/buckets/my-logging-bucket-2
</pre>
Membatalkan operasi penyalinan
Anda dapat membatalkan operasi penyalinan yang sedang berlangsung. Jika Anda membatalkan operasi penyalinan, semua entri log yang disalin sebelum operasi dibatalkan akan tetap berada di bucket Cloud Storage.
Setelah membatalkan operasi penyalinan, Logging akan menyelesaikan semua proses yang sedang berlangsung sebelum menyelesaikan pembatalan. Hal ini dapat menyebabkan beberapa entri log masih dikopi ke Cloud Storage setelah Anda membatalkan operasi.
Untuk membatalkan operasi penyalinan, jalankan perintah berikut:
gcloud logging operations cancel OPERATION_ID \
--location=LOCATION --project=PROJECT_ID
Sebelum menjalankan perintah sebelumnya, lakukan hal berikut:
- Ganti OPERATION_ID dengan ID operasi.
- Ganti LOCATION dengan lokasi bucket log tempat Anda menyalin.
- Ganti PROJECT_ID dengan ID project Google Cloud Anda.
Melihat log di Cloud Storage
Untuk melihat dan memahami log yang Anda salin ke Cloud Storage, lihat Melihat log yang dirutekan ke Cloud Storage.
Kuota dan batas
Semua operasi salinan memerlukan waktu minimal satu jam untuk diselesaikan, berapa pun jumlah data yang disalin.
Untuk menyalin volume besar—misalnya, petabyte—bagi penyalinan
di beberapa operasi salinan menggunakan kolom timestamp
di
tanda --filter
.
Perintah salin tidak dapat menyalin entri log yang masa retensinya telah berakhir.
Harga
Cloud Logging tidak mengenakan biaya untuk merutekan log ke tujuan yang didukung; tetapi, tujuan tersebut mungkin mengenakan biaya.
Dengan pengecualian bucket log _Required
, Cloud Logging mengenakan biaya untuk melakukan streaming log ke bucket log dan untuk penyimpanan yang lebih lama dari periode retensi data default bucket log.
Cloud Logging tidak mengenakan biaya untuk menyalin log, menentukan cakupan log, atau untuk kueri yang dikeluarkan melalui halaman Logs Explorer atau Log Analytics.
Untuk informasi selengkapnya, baca dokumen berikut:
- Ringkasan harga Cloud Logging
Biaya tujuan:
- Biaya pembuatan log alur VPC berlaku saat Anda mengirim, lalu mengecualikan log alur Virtual Private Cloud dari Cloud Logging.