Membuat dan mengelola laporan inventaris

Halaman ini menjelaskan cara membuat dan mengelola konfigurasi laporan inventaris serta laporan inventaris yang dibuat, sehingga Anda bisa mendapatkan ringkasan tingkat tinggi dari semua metadata objek dalam bucket tertentu. Untuk membaca ringkasan laporan inventaris, lihat dokumentasi ringkasan laporan inventaris Insight Penyimpanan.

Sebelum memulai

Mendapatkan peran yang diperlukan

Guna mendapatkan izin yang diperlukan untuk membuat dan mengelola laporan inventaris, minta administrator untuk memberi Anda peran IAM berikut di project atau bucket sumber dan tujuan yang akan digunakan untuk mengelola laporan inventaris.

  • Untuk membuat dan mengelola konfigurasi laporan inventaris:

    • roles/storage.admin pada bucket sumber dan bucket tujuan

    • roles/storageinsights.admin pada project

  • Untuk membaca dan mendownload laporan inventaris:

    • roles/storage.objectViewer pada bucket tujuan

    • roles/storageinsights.viewer pada project

Peran yang telah ditetapkan ini berisi izin yang diperlukan untuk membuat serta mengelola konfigurasi dan laporan inventaris. Untuk melihat izin yang benar-benar diperlukan, luaskan bagian Izin yang diperlukan:

Izin yang diperlukan

Untuk membuat dan mengelola konfigurasi laporan inventaris:

  • storage.buckets.get pada bucket sumber
  • storage.objects.list pada bucket sumber
  • storage.buckets.getObjectInsights pada bucket sumber
  • storage.buckets.get pada bucket tujuan
  • storage.objects.create pada bucket tujuan
  • storageinsights.reportConfigs.delete pada project
  • storageinsights.reportConfigs.get pada project
  • storageinsights.reportConfigs.create pada project
  • storageinsights.reportConfigs.list pada project
  • storageinsights.reportConfigs.update pada project

Untuk membaca dan mendownload laporan inventaris:

  • storage.objects.get pada bucket tujuan
  • storageinsights.reportDetails.get pada project
  • storageinsights.reportDetails.list pada project

Anda mungkin juga bisa mendapatkan izin ini dengan peran bawaan lainnya. Untuk mengetahui peran mana yang terkait dengan izin apa, lihat Peran IAM untuk Cloud Storage.

Guna mengetahui petunjuk penggunaan peran untuk mengontrol akses ke bucket, lihat Menggunakan IAM. Guna mengetahui petunjuk penggunaan peran untuk mengontrol akses ke project, lihat Mengelola akses.

Mengaktifkan Storage Insights API

Konsol

Untuk mengaktifkan storageinsights.googleapis.com API, ikuti petunjuk dalam artikel Mengaktifkan layanan.

Command line

gcloud

Untuk mengaktifkan Storage Insights API dalam project saat ini, jalankan perintah berikut:

gcloud services enable storageinsights.googleapis.com

Guna mengetahui detail selengkapnya tentang cara mengaktifkan layanan untuk project Google Cloud, baca artikel Mengaktifkan dan menonaktifkan layanan.

REST API

JSON API

Gunakan Konsol Google Cloud atau Google Cloud CLI untuk mengaktifkan Storage Insights API.

Membuat konfigurasi laporan inventaris

Konsol

Untuk membuat konfigurasi laporan inventaris, selesaikan langkah-langkah berikut:

  1. Di Konsol Google Cloud, buka halaman Bucket Cloud Storage.

    Buka Bucket

  2. Dalam daftar bucket, klik nama bucket yang ingin Anda gunakan sebagai bucket sumber.

  3. Di halaman Detail bucket, klik tab Laporan inventaris.

  4. Klik Buat konfigurasi laporan.

  5. Di bagian Identifikasi konfigurasi laporan, buat nama tampilan untuk konfigurasi laporan inventaris. Nama tampilan dapat berisi hingga 256 karakter.

  6. Di bagian Pilih kolom metadata, pilih kolom metadata yang ingin Anda sertakan dalam laporan inventaris.

  7. Klik Lanjutkan.

  8. Di bagian Pilih format file, pilih format file yang ingin Anda gunakan untuk membuat laporan inventaris.

  9. Di bagian Pilih bucket tujuan, pilih bucket yang ingin Anda gunakan sebagai bucket tujuan.

    Di bagian Masukkan jalur tujuan (opsional), Anda dapat secara opsional menentukan jalur tujuan tempat laporan inventaris akan dibuat.

  10. Di bagian Opsi penjadwalan, tentukan frekuensi, tanggal mulai, dan tanggal akhir untuk membuat laporan.

  11. Klik Buat.

    Halaman Detail konfigurasi laporan akan ditampilkan. Metadata laporan inventaris yang dibuat akan muncul di halaman.

Command line

gcloud

  1. Untuk membuat konfigurasi laporan inventaris, jalankan perintah gcloud storage insights inventory-reports create:

    gcloud storage insights inventory-reports create SOURCE_BUCKET_URL \
      --csv-separator=SEPARATOR \
      --csv-delimiter=DELIMITER \
      --[no]-csv-header \
      --parquet \
      --display-name=DISPLAY_NAME \
      --destination=DESTINATION_PATH \
      --metadata-fields=METADATA_FIELD \
      --schedule-starts=START_DATE \
      --schedule-repeats=FREQUENCY \
      --schedule-repeats-until=END_DATE

    Ganti:

    • SOURCE_BUCKET_URL dengan URL bucket sumber. Contoh, gs://my_example_source_bucket.

    • SEPARATOR dengan karakter yang digunakan untuk memisahkan data dalam file CSV laporan inventaris. Nilainya harus \n atau \r\n. Nilai defaultnya adalah \n. Opsional. Jika flag --csv-separator digunakan, --parquet tidak dapat digunakan.

    • DELIMITER dengan pemisah yang memisahkan kolom dalam file CSV laporan inventaris. Nilai ini dapat menyertakan satu karakter dan tidak boleh sama dengan nilai SEPARATOR. Nilai defaultnya adalah ,. Opsional. Jika --csv-delimiter digunakan, --parquet tidak dapat digunakan.

    • --[no]-csv-header dengan flag yang menunjukkan apakah header disertakan dalam file CSV laporan inventaris atau tidak. Gunakan --csv-header untuk menyertakan header dan --no-csv-header untuk mengecualikan header. Jika salah satu flag digunakan, --parquet tidak dapat digunakan.

    • DISPLAY_NAME dengan nama konfigurasi laporan inventaris yang dapat diedit. Opsional.

    • --parquet dengan flag yang membuat laporan inventaris dalam format Apache Parquet, bukan CSV. Jika digunakan, --csv-delimiter, --csv-separator, dan --[no-]csv-header tidak dapat digunakan.

    • DESTINATION_PATH dengan bucket atau folder pada bucket tempat laporan inventaris akan dibuat. Misalnya, gs://my_example_destination_bucket atau gs://my_example_destination_bucket/path/to/inventory/report.

      Saat menentukan jalur ke folder dalam bucket, Anda dapat menggunakan kata kunci di jalur tersebut, yang akan diganti dengan nilainya yang sesuai saat laporan dibuat. Hal ini memungkinkan Anda membuat laporan dalam format terpartisi Hive, sehingga Anda dapat memuat atau membuat kueri data di BigQuery tanpa pemrosesan tambahan.

    • METADATA_FIELD dengan daftar kolom metadata yang dipisahkan koma, yang ingin Anda sertakan dalam laporan inventaris.

    • START_DATE dengan tanggal UTC pada saat Anda ingin laporan inventaris untuk dibuat. Contoh, 2022-01-15.

    • FREQUENCY dengan seberapa sering Anda ingin laporan inventaris dibuat. Nilai berupa daily atau weekly.

    • END_DATE dengan tanggal UTC yang setelahnya Anda ingin agar laporan inventaris berhenti dibuat. Harus berupa nilai setelah START_DATE. Misalnya, jika Anda menentukan 2022-02-15, laporan inventaris tidak akan dibuat lagi mulai 16 Februari 2022.

REST API

JSON API

Untuk membuat konfigurasi laporan inventaris, selesaikan langkah-langkah berikut:

  1. Buat token akses dengan menjalankan perintah gcloud auth print-access-token:

    gcloud auth print-access-token

    Untuk detail selengkapnya tentang perintah ini, lihat dokumentasi referensi gcloud auth print-access-token.

  2. Buat file JSON berisi informasi berikut, yang semua kolomnya wajib diisi kecuali jika dinyatakan lain:

    {
      "display_name": "DISPLAY_NAME",
      "frequency_options": {
        "frequency": "FREQUENCY",
        "start_date": "START_DATE",
        "end_date": "END_DATE",
      },
      "csv_options": {
        "record_separator": "RECORD_SEPARATOR",
        "delimiter": "DELIMITER",
        "header_required": HEADER_REQUIRED
      },
      "object_metadata_report_options": {
         "metadata_fields": [
          "METADATA_FIELD",
          ...
        ],
        "storage_filters": {
          "bucket": "SOURCE_BUCKET_NAME"
        },
        "storage_destination_options": {
          "bucket": "DESTINATION_BUCKET_NAME",
          "destination_path": "DESTINATION_PATH"
        }
      }
    }

    Ganti:

    • DISPLAY_NAME dengan nama tampilan konfigurasi laporan inventaris yang dapat diedit. Dapat berisi hingga 256 karakter.

    • FREQUENCY dengan frekuensi untuk membuat laporan inventaris. Nilai berupa DAILY atau WEEKLY.

    • START_DATE dengan tanggal UTC pada saat Anda ingin laporan inventaris untuk dibuat. Tidak boleh berupa tanggal saat ini atau tanggal yang sudah lewat. Nilai harus berupa objek yang berisi kunci untuk day, month, dan year. Misalnya: {"day": 15, "month": 8, "year": 2022}.

    • END_DATE dengan tanggal UTC yang setelahnya Anda ingin agar laporan inventaris berhenti dibuat. Nilai harus berupa objek yang berisi kunci untuk day, month, dan year. Misalnya, jika Anda menentukan {"day": 15, "month": 9, "year": 2022}, laporan inventaris tidak akan dibuat lagi mulai 16 September 2022.

    • RECORD_SEPARATOR dengan karakter yang digunakan untuk memisahkan data dalam file CSV laporan inventaris. Nilainya harus \n atau \r\n. Nilai defaultnya adalah \n. Kolom ini bersifat opsional.

    • DELIMITER dengan pemisah yang memisahkan kolom dalam file CSV laporan inventaris. Nilainya dapat berisi satu karakter dan tidak boleh sama dengan RECORD_SEPARATOR. Nilai defaultnya adalah ,. Kolom ini bersifat opsional.

    • HEADER_REQUIRED dengan Boolean yang menunjukkan apakah header disertakan dalam file CSV atau tidak. Kolom ini bersifat opsional.

    • SOURCE_BUCKET_NAME dengan nama bucket sumber yang berisi objek yang ingin Anda buat laporan inventarisnya. Misalnya, my_example_bucket.

    • METADATA_FIELD dengan daftar kolom metadata yang dipisahkan koma yang ingin Anda sertakan dalam laporan inventaris.

    • DESTINATION_BUCKET_NAME dengan nama bucket tujuan tempat laporan inventaris yang dihasilkan akan dibuat dan disimpan. Misalnya, my_example_destination_bucket.

    • DESTINATION_PATH dengan jalur di bucket tujuan tempat laporan inventaris yang dihasilkan akan dibuat. Kolom ini bersifat opsional.

      Saat menentukan jalur ke folder dalam bucket, Anda dapat menggunakan kata kunci di jalur tersebut, yang akan diganti dengan nilainya yang sesuai saat laporan dibuat. Hal ini memungkinkan Anda membuat laporan dalam format terpartisi Hive, sehingga Anda dapat memuat atau membuat kueri data di BigQuery tanpa pemrosesan tambahan.

    Misalnya, contoh kode berikut membuat konfigurasi laporan inventaris bernama "Contoh konfigurasi laporan inventaris" yang menghasilkan laporan dengan frekuensi mingguan:

    {
      "display_name": "Example inventory report configuration",
      "frequency_options": {
        "frequency": "WEEKLY",
        "start_date": {
          "day": 15,
          "month": 8,
          "year": 2022
        },
        "end_date": {
          "day": 15,
          "month": 9,
          "year": 2022
        },
      },
      "csv_options": {
        "record_separator": "\n",
        "delimiter": ",",
        "header_required": true
      },
      "object_metadata_report_options": {
         "metadata_fields": [
          "project",
          "name",
          "bucket"
        ],
        "storage_filters": {
          "bucket": "example_source_bucket"
        },
        "storage_destination_options": {
          "bucket": "example_destination_bucket"
        }
      }
    }
  3. Guna menerapkan konfigurasi laporan inventaris, gunakan cURL untuk memanggil JSON API dengan permintaan Insert ReportConfig:

    curl -X POST --data-binary @JSON_FILE_NAME \
    "https://storageinsights.googleapis.com/v1/projects/YOUR_PROJECT/locations/LOCATION/reportConfigs" \
      --header "Authorization: Bearer ACCESS_TOKEN" \
      --header "Accept: application/json" \
      --header "Content-Type: application/json" \

    Ganti:

    • YOUR_PROJECT dengan nama project tempat bucket sumber dan tujuan Anda berada.

    • LOCATION dengan lokasi bucket sumber dan tujuan. Misalnya, us-west1.

    • ACCESS_TOKEN dengan token akses yang Anda buat di langkah 1.

Memberikan izin yang diperlukan ke agen layanan

Agen layanan level project secara otomatis dibuat saat Anda pertama kali menyiapkan konfigurasi laporan inventaris. Agen layanan mengikuti format penamaan service-PROJECT_NUMBER@gcp-sa-storageinsights.iam.gserviceaccount.com dan muncul di halaman IAM Konsol Google Cloud saat Anda mencentang kotak Sertakan pemberian peran yang disediakan Google.

Guna mengaktifkan Insight Penyimpanan guna membuat dan menulis laporan inventaris, minta administrator Anda untuk memberikan peran IAM berikut kepada agen layanan:

  • roles/storage.insightsCollectorService pada bucket sumber, yang menyertakan izin storage.buckets.getObjectInsights dan storage.buckets.get
  • roles/storage.objectCreator pada bucket tujuan, yang menyertakan izin storage.objects.create

Untuk mengetahui petunjuk tentang cara memberikan peran, lihat Menggunakan IAM. Anda dapat memberikan peran roles/storage.insightsCollectorService menggunakan Konsol Google Cloud atau Google Cloud CLI. Contoh:

gcloud storage buckets add-iam-policy-binding SOURCE_BUCKET_URL \
    --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-storageinsights.iam.gserviceaccount.com \
    --role=roles/storage.insightsCollectorService

Setelah agen layanan diberi izin yang diperlukan, perlu waktu hingga 24 jam untuk menulis laporan inventaris pertama ke bucket tujuan.

Mengedit konfigurasi laporan inventaris

Setelah konfigurasi laporan inventaris dibuat, Anda dapat mengubah properti tertentu konfigurasi.

Konsol

Untuk mengedit konfigurasi laporan inventaris, ikuti langkah-langkah di bawah ini:

  1. Di Konsol Google Cloud, buka halaman Bucket Cloud Storage.

    Buka Bucket

  2. Pada daftar bucket, klik nama bucket sumber yang berisi konfigurasi laporan inventaris yang ingin Anda edit.

  3. Di halaman Detail bucket bucket sumber, klik tab Laporan inventaris.

  4. Klik nama konfigurasi dari konfigurasi laporan inventaris yang ingin Anda edit.

  5. Pada halaman Detail konfigurasi laporan yang muncul, edit properti yang Anda inginkan menggunakan tombol Edit.

Command line

gcloud

Untuk mengedit konfigurasi laporan inventaris, ikuti langkah-langkah di bawah ini:

  1. Untuk menemukan nama konfigurasi laporan inventaris yang ingin Anda edit, buat daftar semua konfigurasi inventaris dalam bucket sumber menggunakan perintah gcloud storage insights inventory-reports list:

    gcloud storage insights inventory-reports list \
    --source=SOURCE_BUCKET \
    --filter=EXPRESSION \
    --page-size=SIZE \
    --sort-by=FIELD \
    --format="yaml(name)"

    Ganti:

    • SOURCE_BUCKET dengan URL bucket sumber yang berisi konfigurasi laporan inventaris.

    • EXPRESSION dengan filter Boolean yang akan diterapkan ke setiap item resource yang akan dicantumkan. Jika ekspresi bernilai True, item akan dicantumkan. Untuk mengetahui detail dan contoh ekspresi filter, jalankan $ gcloud topic filters.

    • SIZE dengan jumlah maksimum resource per halaman. Nilai defaultnya adalah 50.

    • FIELD dengan daftar yang dipisahkan koma dari nama-nama kunci kolom resource yang digunakan untuk pengurutan. Urutan defaultnya adalah menaik. Awali kolom dengan ~ untuk urutan menurun di kolom tersebut.

  2. Edit kolom konfigurasi laporan inventaris yang ingin Anda perbarui menggunakan perintah gcloud storage insights inventory-reports update. Contoh berikut memperbarui konfigurasi laporan inventaris untuk membuat laporan inventaris setiap hari dalam format Apache Parquet:

    gcloud storage insights inventory-reports update CONFIG_NAME \
    --parquet \
    --schedule-repeats="daily"

REST API

JSON API

Untuk mengedit konfigurasi laporan inventaris, selesaikan langkah-langkah berikut ini:

  1. Buat token akses dengan menjalankan perintah gcloud auth print-access-token:

    gcloud auth print-access-token

    Untuk detail selengkapnya tentang perintah ini, lihat dokumentasi referensi gcloud auth print-access-token.

  2. Dapatkan nama konfigurasi laporan inventaris yang ingin Anda edit menggunakan cURL untuk memanggil JSON API dengan permintaan Get ReportConfig:

    curl --request GET \
    "https://storageinsights.googleapis.com/v1/projects/YOUR_PROJECT/locations/LOCATION/reportConfigs?" \
      --header "Authorization: Bearer ACCESS_TOKEN" \
      --header "Accept: application/json" \
      --header "Content-Type: application/json" \

    Ganti:

    • YOUR_PROJECT dengan nama project tempat bucket sumber dan tujuan Anda berada.

    • LOCATION dengan lokasi bucket sumber dan tujuan. Misalnya, us-west1.

    • ACCESS_TOKEN dengan token akses yang Anda buat di langkah 1.

    Jika ingin mengambil semua konfigurasi laporan inventaris dalam bucket sumber tertentu, tambahkan parameter kueri filter ke permintaan Anda:

    curl --request GET \
    "https://storageinsights.googleapis.com/v1/projects/YOUR_PROJECT/locations/LOCATION/reportConfigs?filter=objectMetadataReportOptions.storageFilters.bucket=BUCKET_NAME" \
      --header "Authorization: Bearer ACCESS_TOKEN" \
      --header "Accept: application/json" \
      --header "Content-Type: application/json" \

    Ganti:

    • YOUR_PROJECT dengan nama project tempat bucket sumber dan tujuan Anda berada.
    • LOCATION dengan lokasi bucket sumber dan tujuan. Misalnya, us-west1.
    • BUCKET_NAME dengan nama bucket sumber yang berisi konfigurasi laporan inventaris yang ingin Anda edit.
    • ACCESS_TOKEN dengan token akses yang Anda buat di langkah 1.
  3. Buat file JSON yang menyertakan perubahan pada properti yang ingin Anda edit. Contoh berikut memperbarui konfigurasi laporan inventaris untuk membuat laporan inventaris setiap hari dalam format Apache Parquet:

    {
      "ReportConfig": {
        "frequency_options": {
          "frequency": "DAILY"
        },
        "parquet_options": {
        }
      }
  4. Guna menerapkan konfigurasi laporan inventaris, gunakan cURL untuk memanggil JSON API dengan permintaan Patch ReportConfig:

    curl --request PATCH \
    "https://storageinsights.googleapis.com/v1/projects/YOUR_PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID" \
      --header "Authorization: Bearer ACCESS_TOKEN" \
      --header "Accept: application/json" \
      --header "Content-Type: application/json" \
      --data-binary "@JSON_FILE_NAME.json" \

    Ganti:

    • YOUR_PROJECT dengan nama project tempat bucket sumber dan tujuan Anda berada.

    • LOCATION dengan lokasi bucket sumber dan tujuan. Misalnya, us-west1.

    • REPORT_CONFIG_UUID dengan UUID konfigurasi laporan inventaris yang dibuat secara otomatis.

    • ACCESS_TOKEN dengan token akses yang Anda buat di langkah 1.

Membuat daftar konfigurasi laporan inventaris

Konsol

Untuk membuat daftar konfigurasi laporan inventaris pada bucket sumber, selesaikan langkah-langkah berikut:

  1. Di Konsol Google Cloud, buka halaman Bucket Cloud Storage.

    Buka Bucket

  2. Pada daftar bucket, klik nama bucket sumber yang berisi konfigurasi laporan inventaris yang ingin Anda lihat.

  3. Di halaman Detail bucket, klik tab Laporan inventaris.

    Konfigurasi laporan inventaris di bucket sumber akan muncul.

Command line

gcloud

Anda dapat membuat daftar semua konfigurasi inventaris dalam bucket sumber menggunakan perintah gcloud storage insights inventory-reports list:

gcloud storage insights inventory-reports list \
--source=SOURCE_BUCKET \
--filter=EXPRESSION \
--page-size=SIZE \
--sort-by=FIELD \
--format="yaml(name)"

Ganti:

  • SOURCE_BUCKET dengan URL bucket sumber yang berisi konfigurasi laporan inventaris.

  • EXPRESSION dengan filter Boolean yang akan diterapkan ke setiap item resource yang akan dicantumkan. Jika ekspresi bernilai True, item akan dicantumkan. Untuk mengetahui detail dan contoh ekspresi filter, jalankan $ gcloud topic filters.

  • SIZE dengan jumlah maksimum resource per halaman. Nilai defaultnya adalah 50.

  • FIELD dengan daftar yang dipisahkan koma dari nama-nama kunci kolom resource yang digunakan untuk pengurutan. Urutan defaultnya adalah menaik. Awali kolom dengan ~ untuk urutan menurun di kolom tersebut.

REST API

JSON API

  1. Buat token akses dengan menjalankan perintah gcloud auth print-access-token:

    gcloud auth print-access-token

    Untuk detail selengkapnya tentang perintah ini, lihat dokumentasi referensi gcloud auth print-access-token.

  2. Anda dapat membuat daftar semua konfigurasi laporan inventaris dalam project untuk lokasi tertentu menggunakan permintaan List ReportConfig:

    curl --request GET \
    "https://storageinsights.googleapis.com/v1/projects/YOUR_PROJECT/locations/LOCATION/reportConfigs?" \
      --header "Authorization: Bearer ACCESS_TOKEN" \
      --header "Accept: application/json" \
      --header "Content-Type: application/json" \

    Ganti:

    • YOUR_PROJECT dengan nama project tempat bucket sumber dan tujuan Anda berada.

    • LOCATION dengan lokasi bucket sumber dan tujuan. Misalnya, us-west1.

    • ACCESS_TOKEN dengan token akses yang Anda buat di langkah 1.

    Jika Anda ingin membuat daftar semua konfigurasi laporan inventaris dalam bucket sumber tertentu, tambahkan parameter kueri filter ke permintaan:

    curl --request GET \
    "https://storageinsights.googleapis.com/v1/projects/YOUR_PROJECT/locations/LOCATION/reportConfigs?filter=objectMetadataReportOptions.storageFilters.bucket=BUCKET_NAME" \
      --header "Authorization: Bearer ACCESS_TOKEN" \
      --header "Accept: application/json" \
      --header "Content-Type: application/json" \

    Ganti:

    • YOUR_PROJECT dengan nama project tempat bucket sumber dan tujuan Anda berada.

    • LOCATION dengan lokasi bucket sumber dan tujuan. Misalnya, us-west1.

    • BUCKET_NAME dengan nama bucket sumber yang berisi konfigurasi laporan inventaris yang ingin Anda buat daftarnya.

    • ACCESS_TOKEN dengan token akses yang Anda buat di langkah 1.

Mendownload laporan inventaris

Konsol

Mendownload laporan secara individual

Laporan inventaris dibuat dan disimpan sebagai objek pada bucket tujuan, sehingga Anda dapat mendownloadnya seperti mendownload objek biasa.

Untuk mendownload laporan inventaris, selesaikan langkah-langkah berikut ini:

  1. Di Konsol Google Cloud, buka halaman Bucket Cloud Storage.

    Buka Bucket

  2. Dalam daftar bucket, klik nama bucket tujuan yang berisi laporan inventaris yang ingin Anda download.

  3. Di halaman Detail bucket, pastikan tab Objek dipilih.

  4. Klik Download yang terkait dengan laporan inventaris yang ingin Anda download.

Jika tidak mengetahui bucket tujuan, Anda juga dapat mendownload laporan inventaris melalui konfigurasi laporan inventaris tempatnya dibuat:

  1. Di Konsol Google Cloud, buka halaman Bucket Cloud Storage.

    Buka Bucket

  2. Di daftar bucket, klik nama bucket sumber yang berisi konfigurasi laporan inventaris yang membuat laporan yang ingin didownload.

  3. Di halaman Detail bucket, klik nama konfigurasi untuk konfigurasi laporan inventaris.

  4. Di halaman Detail konfigurasi laporan yang muncul, buka bagian Histori laporan inventaris, lalu klik jalur objek tujuan dari laporan inventaris yang ingin Anda download.

    Halaman Detail bucket akan muncul untuk bucket tujuan yang berisi laporan inventaris.

  5. Klik Download yang terkait dengan laporan inventaris yang ingin Anda download.

Mendownload shard laporan

Untuk mendownload laporan inventaris yang telah dibagi menjadi satu atau beberapa shard, selesaikan langkah-langkah berikut ini:

  1. Di Konsol Google Cloud, buka halaman Bucket Cloud Storage.

    Buka Bucket

  2. Dalam daftar bucket, klik nama bucket tujuan yang Anda tentukan saat membuat konfigurasi laporan inventaris.

  3. Di halaman Detail bucket, periksa keberadaan file manifes. Keberadaan file manifes menunjukkan bahwa semua shard laporan inventaris telah dibuat.

    Contoh nama file manifes adalah fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:00_manifest.json.

  4. Di bucket tujuan, klik Download yang terkait dengan file manifes. Catat nama file shard yang ingin Anda download dari kolom report_shards_file_names.

  5. Dalam bucket tujuan, klik Download yang terkait dengan file shard yang ingin Anda download.

Command line

gcloud

Mendownload laporan secara individual

Untuk mendownload laporan inventaris, selesaikan langkah-langkah berikut ini:

  1. Untuk membuat daftar semua laporan inventaris yang telah dibuat oleh konfigurasi laporan inventaris dan mengambil REPORT_DETAIL_ID-nya, gunakan perintah gcloud storage insights inventory-reports details list:

    gcloud storage insights inventory-reports details list CONFIG_NAME \
    --filter=EXPRESSION \
    --page-size=SIZE \
    --sort-by=FIELD

    Ganti:

    • CONFIG_NAME dengan nama unik konfigurasi laporan inventaris, dalam format projects/PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID.

    • EXPRESSION dengan filter Boolean untuk diterapkan ke setiap item resource yang akan dibuat daftarnya. Jika ekspresi bernilai True, item tersebut akan dicantumkan. Untuk mengetahui detail dan contoh ekspresi filter, jalankan $ gcloud topic filters.

    • SIZE dengan jumlah maksimum resource per halaman. Nilai defaultnya adalah 50.

    • FIELD dengan daftar yang dipisahkan koma dari nama-nama kunci kolom resource yang digunakan untuk pengurutan. Urutan defaultnya adalah menaik. Awali kolom dengan ~ untuk urutan menurun di kolom tersebut.

    Jika berhasil, perintah akan menampilkan output yang mirip dengan berikut ini:

    REPORT_DETAIL_ID            SNAPSHOT_TIME
    Report_2023-04-10T00-00     2023-04-10T00:53:03Z
    Report_2023-04-12T00-00     2023-04-12T00:52:54Z
    Report_2023-04-05T00-00     2023-04-05T00:53:01Z
  2. Untuk mendownload laporan inventaris, Anda harus mengambil properti reportPathPrefix objek ReportDetail terlebih dahulu. Untuk mendapatkan reportPathPrefix laporan, gunakan perintah gcloud storage insights inventory-reports details describe:

    gcloud storage insights inventory-reports details describe REPORT_DETAIL_NAME

    Ganti REPORT_DETAIL_NAME dengan nama laporan inventaris dalam format projects/PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID/reportDetails/REPORT_DETAIL_ID.

Mendownload shard laporan

Untuk mendownload laporan inventaris yang telah dibagi menjadi satu atau beberapa shard, selesaikan langkah-langkah berikut ini:

  1. Download file manifes laporan inventaris menggunakan perintah gcloud storage cp:

    gcloud storage cp gs://BUCKET_NAME/MANIFEST_FILE_NAME DOWNLOAD_PATH

    Ganti:

    • BUCKET_NAME dengan nama bucket tujuan.

    • MANIFEST_FILE_NAME dengan nama file manifes pada bucket tujuan, dalam konvensi penamaan berikut:

      REPORT_CONFIG_UUID_TARGET_DATETIME_manifest.json

      Dengan keterangan:

      • REPORT_CONFIG_UUID adalah UUID yang dihasilkan secara otomatis dari konfigurasi laporan inventaris yang membuat shard laporan yang ingin Anda download.

      • TARGET_DATETIME adalah tanggal dan waktu pembuatan laporan inventaris.

      Misalnya, fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:00_manifest.json.

    • DOWNLOAD_PATH dengan jalur ke sistem file tempat Anda ingin menyimpan laporan inventaris. Misalnya, ./example_report.csv

  2. Untuk mendownload file shard, gunakan perintah gcloud storage cp:

    gcloud storage cp gs://BUCKET_NAME/SHARD_FILE_NAME DOWNLOAD_PATH

    Ganti:

    • BUCKET_NAME dengan nama bucket tujuan.

    • SHARD_FILE_NAME dengan nama file shard yang dienkode ke URL yang ingin Anda download. Misalnya, fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:54_0.csv

    • DOWNLOAD_PATH dengan jalur ke sistem file tempat Anda ingin menyimpan laporan inventaris. Misalnya, ./example_report.csv

REST API

JSON API

Mendownload laporan secara individual

Untuk mendownload laporan inventaris, selesaikan langkah-langkah berikut ini:

  1. Buat token akses dengan menjalankan perintah gcloud auth print-access-token:

    gcloud auth print-access-token

    Untuk detail selengkapnya tentang perintah ini, lihat dokumentasi referensi gcloud auth print-access-token.

  2. Buat daftar semua laporan inventaris yang dibuat oleh konfigurasi laporan inventaris menggunakan cURL untuk memanggil JSON API dengan permintaan Get ReportDetails:

    curl --request GET \
    "https://storageinsights.googleapis.com/v1/projects/YOUR_PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID/reportDetails/" \
      --header "Authorization: Bearer ACCESS_TOKEN" \
      --header "Accept: application/json" \
      --header "Content-Type: application/json" \

    Ganti:

    • YOUR_PROJECT dengan nama project tempat bucket sumber dan tujuan Anda berada.

    • LOCATION dengan lokasi bucket sumber dan tujuan. Misalnya, us-west1.

    • REPORT_CONFIG_UUID dengan UUID yang dibuat secara otomatis dari konfigurasi laporan inventaris yang membuat laporan yang ingin Anda download.

    • ACCESS_TOKEN dengan token akses yang Anda buat di langkah 1.

  3. Guna mendapatkan detail setiap laporan, gunakan cURL untuk memanggil JSON API dengan permintaan Get ReportDetails:

    curl --request GET \
    "https://storageinsights.googleapis.com/v1/projects/YOUR_PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID/reportDetails/REPORT_DETAIL_ID" \
      --header "Authorization: Bearer ACCESS_TOKEN" \
      --header "Accept: application/json" \
      --header "Content-Type: application/json" \

    Ganti:

    • YOUR_PROJECT dengan nama project tempat bucket sumber dan tujuan Anda berada.

    • LOCATION dengan lokasi bucket sumber dan tujuan. Misalnya, us-west1.

    • REPORT_CONFIG_UUID dengan UUID yang dibuat secara otomatis dari konfigurasi laporan inventaris yang membuat laporan yang ingin Anda download.

    • REPORT_DETAIL_ID dengan nama laporan inventaris yang ingin Anda download.

    • ACCESS_TOKEN dengan token akses yang Anda buat di langkah 1.

Mendownload shard laporan

Untuk mendownload laporan inventaris yang telah dibagi menjadi satu atau beberapa shard, selesaikan langkah-langkah berikut ini:

  1. Buat token akses dengan menjalankan perintah gcloud auth print-access-token:

    gcloud auth print-access-token

    Untuk detail selengkapnya tentang perintah ini, lihat dokumentasi referensi gcloud auth print-access-token.

  2. Guna mendownload file manifes laporan inventaris, gunakan cURL untuk memanggil JSON API dengan permintaan GET Object:

    curl -X GET \
      --header "Authorization: Bearer ACCESS_TOKEN" \
      --header "Accept: application/json" \
      --header "Content-Type: application/json" \
      "https://storage.googleapis.com/v1/storage/v1/b/BUCKET_NAME/o/MANIFEST_FILE_NAME?alt=media" \

    Ganti:

    • ACCESS_TOKEN dengan token akses yang Anda buat di langkah 1.

    • BUCKET_NAME dengan nama bucket tujuan.

    • MANIFEST_FILE_NAME dengan nama file manifes pada bucket tujuan, dalam konvensi penamaan berikut:

      REPORT_CONFIG_UUID_TARGET_DATETIME_manifest.json

      Dengan keterangan:

      • REPORT_CONFIG_UUID adalah UUID yang dibuat secara otomatis dari konfigurasi laporan inventaris yang membuat shard laporan yang ingin Anda download.

      • TARGET_DATETIME adalah tanggal laporan inventaris dibuat.

    Misalnya, fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:00_manifest.json.

    Kolom report_shards_file_names file manifes berisi nama shard laporan inventaris yang dapat Anda download.

  3. Guna mendownload file shard laporan inventaris, gunakan curl untuk memanggil Cloud Storage JSON API dengan permintaan Get Object:

    curl -X GET \
      --header "Authorization: Bearer OAUTH2_TOKEN" \
      -o "DOWNLOAD_PATH" \
      "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/o/SHARD_FILE_NAME?alt=media"

    Ganti:

    • OAUTH2_TOKEN dengan token akses yang Anda buat di Langkah 1.

    • DOWNLOAD_PATH dengan jalur ke sistem file lokal tempat Anda ingin menyimpan objek. Misalnya, Desktop/dog.png.

    • BUCKET_NAME dengan nama bucket tujuan yang berisi laporan inventaris. Misalnya, my-bucket.

    • SHARD_FILE_NAME dengan nama file shard yang dienkode ke URL yang ingin Anda download. Misalnya, fc95c52f-157a-494f-af4a-d4a53a69ba66_2022-11-30T00:54_0.csv

Menghapus konfigurasi laporan inventaris

Konsol

Untuk menghapus konfigurasi laporan inventaris, selesaikan langkah-langkah berikut ini:

  1. Di Konsol Google Cloud, buka halaman Bucket Cloud Storage.

    Buka Bucket

  2. Pada daftar bucket, klik nama bucket sumber yang berisi konfigurasi laporan inventaris yang ingin Anda hapus.

  3. Di halaman Detail bucket bucket sumber, klik tab Laporan inventaris.

  4. Klik nama konfigurasi dari konfigurasi laporan inventaris yang ingin Anda hapus.

  5. Di halaman Detail konfigurasi laporan yang muncul, klik Hapus .

Command line

gcloud

Untuk menghapus konfigurasi laporan inventaris, gunakan perintah gcloud storage insights inventory-reports delete:

gcloud storage insights inventory-reports delete CONFIG_NAME
--force

Ganti CONFIG_NAME dengan nama unik konfigurasi laporan inventaris, dalam format projects/PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID.

Flag --force menghapus metadata untuk semua laporan inventaris yang dibuat oleh konfigurasi laporan inventaris tertentu. Objek laporan inventaris itu sendiri tidak akan dihapus.

REST API

JSON API

Untuk menghapus konfigurasi laporan inventaris, selesaikan langkah-langkah berikut ini:

  1. Buat token akses dengan menjalankan perintah gcloud auth print-access-token:

    gcloud auth print-access-token

    Untuk detail selengkapnya tentang perintah ini, lihat dokumentasi referensi gcloud auth print-access-token.

  2. Guna menghapus konfigurasi laporan inventaris, gunakan cURL untuk memanggil JSON API dengan permintaan Delete ReportConfig:

    curl --request DELETE \
    'https://storageinsights.googleapis.com/v1/projects/YOUR_PROJECT/locations/LOCATION/reportConfigs/REPORT_CONFIG_UUID?force=true' \
      --header 'Authorization: Bearer ACCESS_TOKEN' \
      --header 'Accept: application/json' \
      --header 'Content-Type: application/json' \

    Ganti:

    • YOUR_PROJECT dengan nama project tempat bucket sumber dan tujuan Anda berada.

    • LOCATION dengan lokasi bucket sumber dan tujuan. Misalnya, us-west1.

    • REPORT_CONFIG_UUID dengan UUID yang dibuat secara otomatis dari konfigurasi laporan inventaris yang ingin Anda hapus.

    • ACCESS_TOKEN dengan token akses yang Anda buat di langkah 1.

Parameter kueri force menghapus metadata untuk semua laporan inventaris yang dibuat oleh konfigurasi laporan inventaris tertentu. Objek laporan inventaris itu sendiri tidak akan dihapus.

Lanjutan: Membuat laporan inventaris dalam format yang dipartisi Hive

Saat membuat konfigurasi laporan inventaris, Anda dapat menentukan jalur tujuan, yang merupakan lokasi pada bucket tujuan tempat laporan inventaris akan dibuat. Hal ini memungkinkan Anda membuat laporan inventaris dalam format yang dipartisi Hive.

Anda menentukan jalur tujuan menggunakan kata kunci placeholder. Kata kunci di jalur tujuan akan diganti dengan nilainya yang sesuai saat laporan inventaris dibuat. Misalnya, jalur tujuan config={{report-config-id}}/date={{date}} dapat di-resolve ke config=1A34-F2E456-12B456-1C3D/date=2022-05-20.

Kata kunci jalur tujuan

Anda dapat menentukan kata kunci report-config-id, date, atau datetime, yang diapit dalam {{ dan }}, dengan:

  • report-config-id merupakan UUID konfigurasi laporan inventaris.

  • date merupakan tanggal laporan inventaris dibuat. Mengikuti format ISO 8601.

  • datetime merupakan tanggal dan waktu pembuatan laporan inventaris. Mengikuti format ISO 8601.

Kata kunci dapat ditentukan menggunakan salah satu alat berikut:

  • Saat menggunakan Konsol Google Cloud, tentukan kata kunci di bagian Masukkan jalur tujuan (opsional). Bagian ini muncul saat Anda membuat konfigurasi laporan inventaris.

  • Saat menggunakan Google Cloud CLI, tentukan kata kunci placeholder menggunakan flag --destination.

  • Saat menggunakan JSON API, tentukan kata kunci placeholder di kolom storage_destination_options.destination_path pada objek ReportConfig.

Kontrol akses dan keamanan

Rekomendasi dan pertimbangan berikut berkaitan dengan keamanan dan penggunaan laporan serta konfigurasi inventaris:

  • Sebaiknya pengguna dengan peran roles/storage.admin juga memiliki izin storageinsights.reportConfigs.* sehingga mereka dapat mempertahankan kontrol atas penggunaan semua resource dalam bucket mereka, seperti pembacaan objek dan metadatanya.

  • Sebaiknya batasi akses ke resource laporan inventaris Anda dengan memberikan izin storageinsights.reportConfigs.* hanya kepada individu yang diperlukan.

  • Setelah dibuat, konfigurasi laporan inventaris akan terus membuat laporan inventaris meskipun pengguna yang membuat konfigurasi tidak lagi memiliki izin yang diperlukan. Untuk berhenti membuat laporan inventaris, Anda dapat mengedit tanggal akhir dalam konfigurasi laporan inventaris atau menghapus konfigurasi sepenuhnya.