Menggunakan Layanan Agregasi di AWS

1. Prasyarat

Untuk menjalankan Codelab ini, beberapa prasyarat diperlukan. Setiap persyaratan ditandai sesuai dengan apakah persyaratan tersebut diperlukan untuk "Pengujian Lokal" atau "Layanan Agregasi".

1.1. Mendownload Alat Pengujian Lokal (Pengujian Lokal)

Pengujian Lokal akan memerlukan download Alat Pengujian Lokal. Alat ini akan membuat laporan ringkasan dari laporan debug yang tidak dienkripsi.

Alat Pengujian Lokal tersedia untuk didownload di Lambda JAR Archives di GitHub. Class ini harus diberi nama LocalTestingTool_{version}.jar.

1.2. Pastikan JAVA JRE diinstal (Layanan Agregasi dan Pengujian Lokal)

Buka "Terminal" dan gunakan java --version untuk memeriksa apakah mesin Anda telah menginstal Java atau openJDK.

memeriksa versi java jre menggunakan java\n--version

Jika belum diinstal, Anda dapat mendownload dan menginstal dari situs Java atau situs openJDK.

1.3. Mendownload Konverter Laporan Gabungan (Layanan Agregasi dan Pengujian Lokal)

Anda dapat mendownload salinan pengonversi laporan agregat dari repositori GitHub Demo Privacy Sandbox.

1.4. Mengaktifkan Ad Privacy API (Layanan Agregasi dan Pengujian Lokal)

Di browser, buka chrome://settings/adPrivacy dan aktifkan semua Ad Privacy API.

Pastikan cookie pihak ketiga diaktifkan.

Di browser, buka chrome://settings/cookies, lalu pilih "Blokir cookie pihak ketiga dalam mode Samaran".

setelan chrome cookie pihak ketiga

1.5. Pendaftaran web dan Android (Layanan Agregasi)

Untuk menggunakan Privacy Sandbox API di lingkungan produksi, pastikan Anda telah menyelesaikan pendaftaran dan pengesahan untuk Chrome dan Android.

Untuk pengujian lokal, pendaftaran dapat dinonaktifkan menggunakan flag chrome dan tombol CLI.

Untuk menggunakan flag Chrome untuk demo kami, buka chrome://flags/#privacy-sandbox-enrollment-overrides dan perbarui penggantian dengan situs Anda atau jika Anda akan menggunakan situs demo kami, tidak diperlukan pembaruan.

pendaftaran privacy sandbox mengganti chromeflag

1.6. Orientasi Layanan Agregasi (Layanan Agregasi)

Layanan Agregasi memerlukan orientasi untuk koordinator agar dapat menggunakan layanan. Lengkapi formulir Orientasi Layanan Agregasi dengan memberikan alamat situs pelaporan, ID Akun AWS, dan informasi lainnya.

1.7. Penyedia cloud (Layanan Agregasi)

Layanan Agregasi memerlukan penggunaan Trusted Execution Environment yang menggunakan lingkungan cloud. Layanan agregasi didukung di Amazon Web Services (AWS) dan Google Cloud (GCP). Codelab ini hanya akan membahas integrasi AWS.

AWS menyediakan Trusted Execution Environment yang disebut Nitro Enclaves. Pastikan Anda memiliki akun AWS dan ikuti petunjuk penginstalan dan update AWS CLI untuk menyiapkan lingkungan AWS CLI.

Jika AWS CLI Anda baru, Anda dapat mengonfigurasi AWS CLI menggunakan petunjuk Konfigurasi CLI.

1.7.1. Membuat bucket AWS S3

Buat Bucket AWS S3 untuk menyimpan status Terraform, dan bucket S3 lain untuk menyimpan laporan dan laporan ringkasan Anda. Anda dapat menggunakan perintah CLI yang disediakan. Ganti kolom di <> dengan variabel yang sesuai.

aws s3api create-bucket --bucket <tf_bucket_name> --region us-east-1
aws s3api create-bucket --bucket <report_bucket_name> --region us-east-1

1.7.2. Membuat kunci akses pengguna

Buat kunci akses pengguna menggunakan panduan AWS. Ini akan digunakan untuk memanggil endpoint API createJob dan getJob yang dibuat di AWS.

1.7.3. Izin pengguna dan grup AWS

Untuk men-deploy Layanan Agregasi di AWS, Anda harus memberikan izin tertentu kepada pengguna yang digunakan untuk men-deploy layanan. Untuk Codelab ini, pastikan pengguna memiliki Akses Administrator untuk memastikan izin penuh dalam deployment.

1.8. Terraform (Layanan Agregasi)

Codelab ini menggunakan Terraform untuk men-deploy Layanan Agregasi. Pastikan biner Terraform diinstal ke lingkungan lokal Anda.

Download biner Terraform ke lingkungan lokal Anda.

Setelah biner Terraform didownload, ekstrak file dan pindahkan biner Terraform ke /usr/local/bin.

cp <directory>/terraform /usr/local/bin

Periksa untuk memastikan Terraform tersedia di classpath.

terraform -v

1.9. Postman (Untuk AWS Layanan Agregasi)

Untuk Codelab ini, gunakan Postman untuk pengelolaan permintaan.

Buat ruang kerja dengan membuka item navigasi atas "Ruang Kerja", lalu pilih "Buat Ruang Kerja".

postmanworkspace

Pilih "Ruang kerja kosong", klik berikutnya, lalu beri nama "Privacy Sandbox". Pilih "Pribadi", lalu klik "Buat".

Download file konfigurasi JSON dan Global Environment ruang kerja yang telah dikonfigurasi sebelumnya.

Impor file JSON ke "Ruang Kerja Saya" menggunakan tombol "Impor".

mengimpor file JSON postman

Tindakan ini akan membuat koleksi Privacy Sandbox untuk Anda beserta permintaan HTTP createJob dan getJob.

postman importedcollection

Perbarui "Kunci Akses" dan "Kunci Rahasia" AWS melalui "Tampilan cepat lingkungan".

tampilan cepat lingkungan postman

Klik "Edit" dan perbarui "Nilai Saat Ini" dari "access_key" dan "secret_key". Perhatikan bahwa frontend_api_id akan diberikan di bagian 3.1.4 dokumen ini. Selain itu, sebaiknya gunakan region us-east-1. Namun, jika Anda ingin men-deploy di wilayah lain, pastikan Anda menyalin AMI yang dirilis ke akun Anda atau melakukan build mandiri menggunakan skrip yang disediakan.

postman globalvariables

postman edit globalvariables

2. Codelab Pengujian Lokal

Anda dapat menggunakan alat pengujian lokal di komputer untuk melakukan agregasi dan membuat laporan ringkasan menggunakan laporan debug yang tidak dienkripsi.

Langkah-Langkah Codelab

Langkah 2.1. Pemicu laporan: Memicu pelaporan Agregasi Pribadi agar dapat mengumpulkan laporan.

Langkah 2.2. Membuat laporan agregat debug: Mengonversi laporan JSON yang dikumpulkan ke laporan berformat AVRO.
Langkah ini akan serupa dengan saat teknologi iklan mengumpulkan laporan dari endpoint pelaporan API dan mengonversi laporan JSON menjadi laporan berformat AVRO.

Langkah 2.3. Mengurai kunci bucket dari laporan debug: Kunci bucket dirancang oleh teknologi iklan. Dalam codelab ini, karena bucket telah ditentukan sebelumnya, ambil kunci bucket seperti yang disediakan.

Langkah 2.4. Membuat AVRO domain output: Setelah kunci bucket diambil, buat file AVRO Domain Output.

Langkah 2.5. Membuat laporan ringkasan menggunakan Alat Pengujian Lokal: Gunakan Alat Pengujian Lokal agar dapat membuat Laporan Ringkasan di Lingkungan Lokal.

Langkah 2.6. Meninjau laporan ringkasan: Meninjau Laporan Ringkasan yang dibuat oleh Alat Pengujian Lokal.

2.1. Laporan pemicu

Buka situs demo sandbox privasi. Tindakan ini akan memicu laporan agregasi pribadi. Anda dapat melihat laporan tersebut di chrome://private-aggregation-internals.

chrome private aggregationinternals

Jika laporan Anda berstatus "Tertunda", Anda dapat memilih laporan tersebut dan mengklik "Kirim Laporan yang Dipilih".

mengirim aggregationreport pribadi

2.2. Membuat laporan agregat debug

Di chrome://private-aggregation-internals, salin "Isi Laporan" yang diterima di endpoint [reporting-origin]/.well-known/private-aggregation/report-shared-storage.

Pastikan di "Isi Laporan", aggregation_coordinator_origin berisi https://publickeyservice.msmt.aws.privacysandboxservices.com yang berarti laporan tersebut adalah laporan agregat AWS.

private aggregationreport

Tempatkan JSON "Report Body" dalam file JSON. Dalam contoh ini, Anda dapat menggunakan vim. Namun, Anda dapat menggunakan editor teks apa pun yang Anda inginkan.

vim report.json

Tempelkan laporan ke report.json dan simpan file Anda.

file JSON laporan

Setelah itu, buka folder laporan dan gunakan aggregatable_report_converter.jar untuk membantu membuat laporan agregat debug. Tindakan ini akan membuat laporan gabungan yang disebut report.avro di direktori Anda saat ini.

java -jar aggregatable_report_converter.jar \
 --request_type convertToAvro \
 --input_file report.json \
 --debug

2.3. Mengurai kunci bucket dari laporan debug

Layanan Agregasi memerlukan dua file saat melakukan pengelompokan. Laporan gabungan dan file domain output. File domain output berisi kunci yang ingin Anda ambil dari laporan gabungan. Untuk membuat file output_domain.avro, Anda memerlukan kunci bucket yang dapat diambil dari laporan.

Kunci bucket dirancang oleh pemanggil API, dan demo berisi contoh kunci bucket yang telah dibuat sebelumnya. Karena demo telah mengaktifkan mode debug untuk Agregasi Pribadi, Anda dapat mengurai payload cleartext debug dari "Isi Laporan" untuk mengambil kunci bucket. Namun, dalam hal ini, demo sandbox privasi situs membuat kunci bucket. Karena agregasi pribadi untuk situs ini berada dalam mode debug, Anda dapat menggunakan debug_cleartext_payload dari "Isi Laporan" untuk mendapatkan kunci bucket.

Salin debug_cleartext_payload dari isi laporan.

men-debug payload cleartext dari reportbody

Buka alat Debug payload decoder for Private Aggregation dan tempel debug_cleartext_payload Anda di kotak "INPUT", lalu klik "Decode".

payloaddecoder

Halaman ini menampilkan nilai desimal kunci bucket. Berikut adalah contoh kunci bucket.

payload decoderresult

2.4. Membuat AVRO domain output

Setelah memiliki kunci bucket, salin nilai desimal kunci bucket. Lanjutkan untuk membuat output_domain.avro menggunakan kunci bucket. Pastikan Anda mengganti dengan kunci bucket yang Anda ambil.

java -jar aggregatable_report_converter.jar \
 --request_type createDomainAvro \
 --bucket_key <bucket key>

Skrip ini akan membuat file output_domain.avro di folder Anda saat ini.

2.5. Membuat laporan ringkasan menggunakan Alat Pengujian Lokal

Kita akan menggunakan LocalTestingTool_{version}.jar yang didownload di Bagian 1.1 untuk membuat laporan ringkasan. Gunakan perintah berikut. Anda harus mengganti LocalTestingTool_{version}.jar dengan versi yang didownload untuk LocalTestingTool.

Jalankan perintah berikut untuk membuat laporan ringkasan di lingkungan pengembangan lokal Anda:

java -jar LocalTestingTool_{version}.jar \
--input_data_avro_file report.avro \
--domain_avro_file output_domain.avro \
--output_directory .

Anda akan melihat tampilan seperti gambar berikut setelah perintah dijalankan. Laporan output.avro akan dibuat setelah proses ini selesai.

laporan ringkasan pengujian lokal avrofile

2.6. Meninjau laporan ringkasan

Laporan ringkasan yang dibuat dalam format AVRO. Agar dapat membacanya, Anda perlu mengonversinya dari AVRO ke format JSON. Idealnya, teknologi iklan harus membuat kode untuk mengonversi laporan AVRO kembali ke JSON.

Untuk Codelab, kita akan menggunakan alat aggregatable_report_converter.jar yang disediakan untuk mengonversi laporan AVRO kembali ke JSON.

java -jar aggregatable_report_converter.jar \
--request_type convertToJson \
--input_file output.avro

Tindakan ini akan menampilkan laporan yang mirip dengan gambar berikut. Bersama dengan laporan output.json yang dibuat di direktori yang sama.

file avro ringkasan dikonversi menjadi tojson

Buka file JSON di editor pilihan Anda untuk meninjau laporan ringkasan.

3. Deployment Layanan Agregasi

Untuk men-deploy Layanan Agregasi, gunakan langkah-langkah berikut:

Langkah 3. Deployment Layanan Agregasi: Men-deploy Layanan Agregasi di AWS
Langkah 3.1. Clone Repositori Layanan Agregasi
Langkah 3.2. Download dependensi bawaan
Langkah 3.3. Membuat lingkungan pengembangan
Langkah 3.4. Men-deploy Layanan Agregasi

3.1. Meng-clone repositori Layanan Agregasi

Di lingkungan lokal Anda, clone repositori GitHub Layanan Agregasi.

git clone https://github.com/privacysandbox/aggregation-service.git

3.2. Mendownload dependensi bawaan

Setelah meng-clone repositori Layanan Agregasi, buka folder Terraform repositori dan folder cloud yang sesuai. Jika cloud_provider Anda adalah AWS, Anda dapat melanjutkan ke /terraform/aws

cd <repository_root>/terraform/aws

Di /terraform/aws, jalankan download_prebuilt_dependencies.sh.

bash download_prebuilt_dependencies.sh

3.3. Membuat lingkungan pengembangan

Buat lingkungan pengembangan di /terraform/aws/environments. Buat folder bernama dev.

mkdir dev

Salin konten folder demo ke folder dev.

cp -R demo/* dev

Pindahkan ke folder dev.

cd dev

Perbarui file main.tf dan tekan i untuk input guna mengedit file.

vim main.tf

Hapus tanda komentar pada kode di kotak merah dengan menghapus # dan memperbarui nama bucket dan kunci.

Untuk main.tf AWS:

tffile utama AWS

Kode tanpa komentar akan terlihat seperti berikut.

backend "s3" {
  bucket = "<tf_state_bucket_name>"
  key    = "<environment_name>.tfstate"
  region = "us-east-1"
}

Setelah pembaruan selesai, simpan pembaruan dan keluar dari editor dengan menekan esc -> :wq!. Tindakan ini akan menyimpan pembaruan di main.tf.

Selanjutnya, ganti nama example.auto.tfvars menjadi dev.auto.tfvars.

mv example.auto.tfvars dev.auto.tfvars

Perbarui dev.auto.tfvars dan tekan i untuk input guna mengedit file.

vim dev.auto.tfvars

Perbarui kolom di kotak merah pada gambar berikut dengan parameter AWS ARN yang benar yang diberikan selama email aktivasi, lingkungan, dan notifikasi Layanan Agregasi.

edit dev auto tfvarsfile

Setelah update selesai, tekan esc -> :wq!. Tindakan ini akan menyimpan file dev.auto.tfvars dan akan terlihat seperti gambar berikut.

memperbarui tfvarsfile otomatis dev

3.4. Men-deploy Layanan Agregasi

Untuk men-deploy Layanan Agregasi, di folder /terraform/aws/environments/dev yang sama, lakukan inisialisasi Terraform.

terraform init

Tindakan ini akan menampilkan sesuatu yang mirip dengan gambar berikut:

terraforminit

Setelah Terraform diinisialisasi, buat rencana eksekusi Terraform. Di sini, jumlah resource yang akan ditambahkan dan informasi tambahan lainnya akan ditampilkan, mirip dengan gambar berikut.

terraform plan

Anda dapat melihat ringkasan "Rencana" berikut. Jika ini adalah deployment baru, Anda akan melihat jumlah resource yang akan ditambahkan dengan 0 untuk diubah dan 0 untuk dihancurkan.

terraformplan

Setelah menyelesaikan langkah ini, Anda dapat melanjutkan untuk menerapkan Terraform.

terraform apply

Setelah diminta untuk mengonfirmasi tindakan yang dilakukan oleh Terraform, masukkan yes ke dalam nilai.

terraform applyprompt

Setelah terraform apply selesai, endpoint berikut untuk createJob dan getJob akan ditampilkan. frontend_api_id yang perlu Anda perbarui di Postman di bagian 1.9 juga ditampilkan.

terraform applycomplete

4. Pembuatan input Layanan Agregasi

Lanjutkan untuk membuat laporan AVRO untuk pengelompokan di Layanan Agregasi.

Langkah 4. Pembuatan Input Layanan Agregasi: Buat laporan Layanan Agregasi yang dikelompokkan untuk Layanan Agregasi.
Langkah 4.1. Laporan Pemicu
Langkah 4.2. Kumpulkan laporan gabungan
Langkah 4.3. Konversikan laporan ke AVRO
Langkah 4.4. Membuat AVRO domain output

4.1. Laporan pemicu

Buka situs demo Privacy Sandbox. Tindakan ini akan memicu laporan agregasi pribadi. Anda dapat melihat laporan tersebut di chrome://private-aggregation-internals.

chrome private aggregationinternals

Jika laporan Anda berstatus "Tertunda", Anda dapat memilih laporan tersebut dan mengklik "Kirim Laporan yang Dipilih".

mengirim aggregationreport pribadi

4.2. Mengumpulkan laporan gabungan

Kumpulkan laporan agregat dari endpoint .well-known API yang sesuai.

  • Agregasi Pribadi
    [reporting-origin] /.well-known/private-aggregation/report-shared-storage
  • Pelaporan Atribusi - Laporan Ringkasan
    [reporting-origin] /.well-known/attribution-reporting/report-aggregate-attribution

Untuk Codelab ini, Anda akan melakukan pengumpulan laporan secara manual. Dalam produksi, teknologi iklan diharapkan untuk mengumpulkan dan mengonversi laporan secara terprogram.

Di chrome://private-aggregation-internals, salin "Isi Laporan" yang diterima di endpoint [reporting-origin]/.well-known/private-aggregation/report-shared-storage.

Pastikan di "Isi Laporan", aggregation_coordinator_origin berisi https://publickeyservice.msmt.aws.privacysandboxservices.com yang berarti laporan tersebut adalah laporan agregat AWS.

private aggregationreport

Tempatkan JSON "Report Body" dalam file JSON. Dalam contoh ini, Anda dapat menggunakan vim. Namun, Anda dapat menggunakan editor teks apa pun yang Anda inginkan.

vim report.json

Tempelkan laporan ke report.json dan simpan file Anda.

file JSON laporan

4.3. Mengonversi laporan ke AVRO

Laporan yang diterima dari endpoint .well-known dalam format JSON dan perlu dikonversi ke format laporan AVRO. Setelah memiliki laporan JSON, buka folder laporan dan gunakan aggregatable_report_converter.jar untuk membantu membuat laporan agregat debug. Tindakan ini akan membuat laporan gabungan yang disebut report.avro di direktori Anda saat ini.

java -jar aggregatable_report_converter.jar \
 --request_type convertToAvro \
 --input_file report.json

4.4. Membuat AVRO domain output

Untuk membuat file output_domain.avro, Anda memerlukan kunci bucket yang dapat diambil dari laporan.

Kunci bucket dirancang oleh teknologi iklan. Namun, dalam hal ini, demo Privacy Sandbox situs membuat kunci bucket. Karena agregasi pribadi untuk situs ini berada dalam mode debug, Anda dapat menggunakan debug_cleartext_payload dari "Isi Laporan" untuk mendapatkan kunci bucket.

Lanjutkan dan salin debug_cleartext_payload dari isi laporan.

men-debug payload cleartext dari reportbody

Buka goo.gle/ags-payload-decoder dan tempel debug_cleartext_payload Anda di kotak "INPUT", lalu klik "Decode".

payloaddecoder

Halaman ini menampilkan nilai desimal kunci bucket. Berikut adalah contoh kunci bucket.

payload decoderresult

Setelah memiliki kunci bucket, buat output_domain.avro. Pastikan Anda mengganti dengan kunci bucket yang Anda ambil.

java -jar aggregatable_report_converter.jar \
 --request_type createDomainAvro \
 --bucket_key <bucket key>

Skrip ini akan membuat file output_domain.avro di folder Anda saat ini.

4.5. Memindahkan laporan ke bucket AWS

Setelah laporan AVRO (dari bagian 3.2.3) dan domain output (dari bagian 3.2.4) dibuat, lanjutkan untuk memindahkan laporan dan domain output ke bucket S3 pelaporan.

Jika Anda telah menyiapkan AWS CLI di lingkungan lokal, gunakan perintah berikut untuk menyalin laporan ke bucket S3 dan folder laporan yang sesuai.

aws s3 cp report.avro s3://<report_bucket_name>/<report_folder>/
aws s3 cp output_domain.avro s3://<report_bucket_name>/<output_domain_folder>/

5. Penggunaan Layanan Agregasi

Dari terraform apply, Anda akan mendapatkan create_job_endpoint, get_job_endpoint, dan frontend_api_id. Salin frontend_api_id dan tempatkan ke dalam variabel global postman frontend_api_id yang Anda siapkan di bagian prasyarat 1.9.

Langkah 5. Penggunaan Layanan Agregasi: Gunakan Aggregation Service API untuk membuat laporan ringkasan dan meninjau laporan ringkasan.
Langkah 5.1. Menggunakan Endpoint createJob untuk membuat batch
Langkah 5.2. Menggunakan Endpoint getJob untuk mengambil status batch
Langkah 5.3. Meninjau Laporan Ringkasan

5.1. Menggunakan endpoint createJob untuk membuat batch

Di Postman, buka koleksi "Privacy Sandbox" dan pilih "createJob".

Pilih "Body" dan pilih "raw" untuk menempatkan payload permintaan Anda.

postman createJob requestbody

Skema payload createJob tersedia di github dan terlihat mirip dengan berikut ini. Ganti <> dengan kolom yang sesuai.

{
  "job_request_id": "<job_request_id>",
  "input_data_blob_prefix": "<report_folder>/<report_name>.avro",
  "input_data_bucket_name": "<bucket_name>",
  "output_data_blob_prefix": "<output_folder>/<summary_report_prefix>",
  "output_data_bucket_name": "<bucket_name>",
  "job_parameters": {
    "output_domain_blob_prefix": "<output_domain_folder>/<output_domain>.avro",
    "output_domain_bucket_name": "<bucket_name>",
    "attribution_report_to": "<reporting origin of report>",
    "reporting_site": "<domain of reporting origin(s) of report>", // Only one of attribution_report_to or reporting_site is required as of v2.7.0
    "report_error_threshold_percentage": "10",
    "debug_run": "true"
  }
}

Setelah Anda mengklik "Kirim", tugas dengan job_request_id akan dibuat. Anda akan menerima respons HTTP 202 setelah permintaan diterima oleh Layanan Agregasi. Kode yang mungkin ditampilkan lainnya dapat ditemukan di kode respons HTTP

postman createJob requeststatus

5.2. Menggunakan Endpoint getJob untuk mengambil status batch

Untuk memeriksa status permintaan tugas, Anda dapat menggunakan endpoint getJob. Pilih "getJob" di koleksi "Privacy Sandbox".

Di "Params", perbarui nilai job_request_id menjadi job_request_id yang dikirim dalam permintaan createJob.

postman getJobrequest

Hasil getJob akan menampilkan status permintaan tugas Anda dengan status HTTP 200. Permintaan "Body" berisi informasi yang diperlukan seperti job_status, return_message, dan error_messages (jika tugas mengalami error).

postman getJob requeststatus

Karena situs pelaporan laporan demo yang dihasilkan berbeda dengan situs yang diaktifkan di ID AWS Anda, Anda mungkin menerima respons dengan return_code PRIVACY_BUDGET_AUTHORIZATION_ERROR. Hal ini normal karena situs asal pelaporan laporan tidak cocok dengan situs pelaporan yang diaktifkan untuk ID AWS.

{
    "job_status": "FINISHED",
    "request_received_at": "2023-12-07T22:50:58.830956Z",
    "request_updated_at": "2023-12-07T22:51:10.526326456Z",
    "job_request_id": "<job_request_id>",
    "input_data_blob_prefix": "<report_folder>/<report_name>.avro",
    "input_data_bucket_name": "<input_bucket_name>",
    "output_data_blob_prefix": "<output_folder>/<summary_report_prefix>",
    "output_data_bucket_name": "<output_bucket_name>",
    "postback_url": "",
    "result_info": {
        "return_code": "PRIVACY_BUDGET_AUTHORIZATION_ERROR",
        "return_message": "Aggregation job successfully processed",
        "error_summary": {
            "error_counts": [],
            "error_messages": []
        },
        "finished_at": "2023-12-07T22:51:10.517730898Z"
    },
    "job_parameters": {
        "debug_run": "true",
        "output_domain_bucket_name": "<output_domain_bucket_name>",
        "output_domain_blob_prefix": "<output_domain_folder>/<output_domain>.avro",
        "attribution_report_to": "https://privacy-sandbox-demos-dsp.dev",
        "reporting_site": "<domain of reporting origin(s) of report>", // Only one of attribution_report_to or reporting_site is required as of v2.7.0
    },
    "request_processing_started_at": "2023-12-07T22:51:06.034472697Z"
}

5.3. Meninjau Laporan Ringkasan

Setelah menerima laporan ringkasan di Bucket S3 output, Anda dapat mendownloadnya ke lingkungan lokal. Laporan ringkasan dalam format AVRO dan dapat dikonversi kembali ke JSON. Anda dapat menggunakan aggregatable_report_converter.jar untuk membaca laporan menggunakan perintah berikut.

java -jar aggregatable_report_converter.jar \
--request_type convertToJson \
--input_file <summary_report_avro>

Tindakan ini akan menampilkan JSON nilai gabungan dari setiap kunci bucket yang terlihat mirip dengan gambar berikut.

summaryreport

Jika permintaan createJob Anda menyertakan debug_run sebagai true, Anda dapat menerima laporan ringkasan di folder debug yang terletak di output_data_blob_prefix. Laporan ini dalam format AVRO dan dapat dikonversi menggunakan perintah sebelumnya ke JSON.

Laporan ini berisi kunci bucket, metrik tanpa derau, dan derau yang ditambahkan ke metrik tanpa derau untuk membentuk laporan ringkasan. Laporannya mirip dengan gambar berikut.

debug summaryreport

Anotasi juga berisi in_reports dan in_domain yang berarti:

  • in_reports - kunci bucket tersedia di dalam laporan agregat.
  • in_domain - kunci bucket tersedia di dalam file AVRO output_domain.