คู่มือนี้อธิบายวิธีใช้ฟีเจอร์การแก้ไขข้อบกพร่องเกี่ยวกับงบประมาณความเป็นส่วนตัวใหม่สำหรับข้อผิดพลาด PRIVACY_BUDGET_EXHAUSTED ซึ่งพร้อมใช้งานในบริการรวมข้อมูลแล้วตั้งแต่v2.12.0
ตามที่ระบุไว้ในเอกสาร ขณะที่ส่งรายงานที่รวบรวมได้ไปยังการติดตั้งใช้งานบริการรวมข้อมูลผ่านงาน โครงสร้างพื้นฐานจะอาศัยบริการบัญชีการรายงานที่รวบรวมได้ซึ่งอยู่ในตัวประสานงาน TEE (Trusted Execution Environment) เพื่อจำกัดการใช้งานงบประมาณความเป็นส่วนตัว โปรดทราบว่า
งบประมาณความเป็นส่วนตัวจะกำหนดจำนวนครั้งสูงสุดที่สามารถใช้รายงานที่รวบรวมได้เหล่านี้
เพื่อสร้างรายงานสรุปเพื่อจำกัดการรับข้อมูล การรวมรายงานใดๆ ที่เกินงบประมาณความเป็นส่วนตัวที่จัดสรรไว้จะล้มเหลวและแสดงข้อผิดพลาด PRIVACY_BUDGET_EXHAUSTED
คู่มือนี้จะแนะนำฟีเจอร์การแก้ไขข้อบกพร่องที่สร้างและจัดเก็บไฟล์ JSON ตัวช่วยของรายงานที่เกี่ยวข้องซึ่งมีส่วนทำให้เกิดข้อผิดพลาด PRIVACY_BUDGET_EXHAUSTED ในภายหลังที่งานของคุณพบ ณ วันที่ v2.12.0
หากสนใจการกู้คืนงบประมาณ โปรดดูคำแนะนำแบบสาธารณะใน GitHub
สิ่งที่ต้องดำเนินการก่อน
การดำเนินการต่อในคู่มือนี้จะถือว่าคุณมีสิ่งต่อไปนี้
- บริการรวบรวมข้อมูล
v2.12.0(หรือเวอร์ชันที่ใหม่กว่า) ที่ติดตั้งใช้งานในระบบคลาวด์สาธารณะที่คุณเลือก (Google Cloud Platform หรือ Amazon Web Services)
แก้ไขข้อบกพร่องของงานที่ไม่สำเร็จเนื่องจากข้อผิดพลาด PRIVACY_BUDGET_EXHAUSTED
ในตอนนี้ เราคาดว่าคุณได้เรียกใช้ปลายทาง getJob ด้วย
รหัสคำขอของงานล่าสุด และได้รับข้อผิดพลาด PRIVACY_BUDGET_EXHAUSTED คล้ายกับ
การตอบกลับต่อไปนี้ จากบริการรวบรวมข้อมูล v2.12.0 คุณควรมีไฟล์การแก้ไขข้อบกพร่องที่ใช้โควต้าความเป็นส่วนตัวที่สร้างขึ้นใหม่ JSON ซึ่งอยู่ในที่เก็บข้อมูล Cloud Storage สาธารณะ
เส้นทางจะระบุโดย return_message และเป็นไปตามรูปแบบต่อไปนี้
- เส้นทางไฟล์:
<output_data_bucket_name>/<output_data_blob_prefix>/ - ชื่อไฟล์:
privacy_budget_exhausted_<request_received_at_timestamp>.json
{
"job_status": "FINISHED",
"request_received_at": <utc timestamp>,
"request_updated_at": <utc timestamp>,
"job_request_id": <customer assigned job id>,
…
"request_processing_started_at": <utc timestamp>,
"result_info": {
"return_code": "PRIVACY_BUDGET_EXHAUSTED",
"return_message": "com.google.aggregate.adtech.worker.exceptions.AggregationJobProcessException: Insufficient privacy budget for one or more aggregatable reports. No aggregatable report can appear in more than one aggregation job. Information related to reports that do not have budget can be found in the following file:
File path: ags-privacy-budget-codelab/output-bucket/output-domain Filename: privacy budget exhausted debugging information <utc timestamp> \n com.google.aggregate.adtech.worker.aggregation.concurrent.ConcurrentAggregationProcessor.consumePrivacyBudgetUnits(ConcurrentAggregationProcessor.java:525) \n com.google.aggregate.adtech.worker.aggregation.concurrent.ConcurrentAggregationProcessor.process(ConcurrentAggregationProcessor.java:319) \n com.google.aggregate.adtech.worker.WorkerPullWorkService.run(WorkerPullWorkService.java:157)",
"error_summary": {
"error_counts": "",
"error_messages": ""
}
}
}
ขั้นตอนการแก้ไขข้อผิดพลาด
ค้นหาและเปิดprivacy_budget_exhausted_debugging_information_<utc timestamp>.jsonเอาต์พุต
ที่ได้รับในที่เก็บข้อมูล Cloud สาธารณะ ซึ่งดูได้ที่
เส้นทาง <output_data_bucket_name>/<output_data_blob_prefix> ที่ระบุ
ใน return_message
ในไฟล์ JSON นั้น ให้เปรียบเทียบพร็อพเพอร์ตี้ filtering_id (ค่าเริ่มต้นคือ 0)
และ relevant_shared_info กับรายงานที่รวบรวมได้อินพุต shared_info
การพบรายการที่ตรงกันหมายความว่ารายงานเหล่านั้นใช้งบประมาณเกินที่จัดสรรไว้และทำให้งานล้มเหลว จึงต้องกรองออกในงานในอนาคต โปรดทราบว่าคุณยังคงนำรายงานที่ตรงกันกลับมาใช้ซ้ำได้ด้วยรหัสการกรองอื่น หลังจาก
ระบุและนำรายงานที่ตรงกันออกจากรายงานกลุ่ม AVRO ไฟล์แล้ว
คุณก็พร้อมที่จะเรียกใช้งานอีกครั้ง
ต่อไปนี้เป็นตัวอย่างของเอาต์พุต
privacy_budget_exhausted_debugging_information_<utc timestamp>.json
{
"privacy_budget_exhausted_info" : {
"aggregatable_input_budget_consumption_info" : [ {
"aggregateable_input_budget_id" : {
"filtering_id" : 0,
"relevant_shared_info" : {
"api" : "attribution-reporting",
"attribution_destination" : "f246a4e6-dde9-46a5-a6b2-ea523b484d0a",
"reporting_origin" : "foo.com",
"scheduled_report_time" : 1738814400.000000000,
"source_registration_time" : 1738713600.000000000,
"version" : "0.1"
}
}
}, {
"aggregateable_input_budget_id" : {
"filtering_id" : 0,
"relevant_shared_info" : {
"api" : "attribution-reporting",
"attribution_destination" : "f246a4e6-dde9-46a5-a6b2-ea523b484d0a",
"reporting_origin" : "foo.com",
"scheduled_report_time" : 1738796400.000000000,
"source_registration_time" : 1738713600.000000000,
"version" : "0.1"
}
}
} ]
}
}
ขั้นตอนถัดไป
ตรวจสอบว่ามีใครพบปัญหาเดียวกันนี้ในแดชบอร์ดสถานะของ Privacy Sandbox หรือในที่เก็บ GitHub สาธารณะหรือไม่ หากไม่เห็นวิธีแก้ไขปัญหาบริการรวบรวมข้อมูล โปรดสร้างปัญหาใน GitHub หรือส่งแบบฟอร์มขอรับการสนับสนุนด้านเทคนิค