כלים לניפוי באגים בבעיות שקשורות לאחסון משותף.
ניפוי באגים של רכיבי worklet של Shared Storage באמצעות DevTools
כדי לבדוק את ה-worklets של האחסון המשותף שהופעלו מהדף שבו אתם נמצאים, אפשר לעבור לכרטיסייה 'מקורות' בחלונית DevTools ולהוסיף את נקודת העצירה של מאזין האירועים 'הצהרה ראשונה של סקריפט או worklet של אחסון משותף'. נקודת העצירה הזו תשהה את ההפעלה הראשונית של סקריפט המודול או של רכיבי ה-worklet לטווח קצר בזמן ההפעלה.
בנוסף, בדף chrome://inspect/#shared-storage-worklets
מוצגים כל הווידג'טים הפעילים של האחסון המשותף מכל הדפים.
ניפוי באגים של אחסון משותף וצבירה פרטית
כדי להפעיל ניפוי באגים, צריך להפעיל את שיטת JavaScript enableDebugMode()
באותו הקשר שבו נעשה שימוש באחסון משותף ובצבירה פרטית. הבחירה הזו תחול על דוחות עתידיים באותו הקשר.
privateAggregation.enableDebugMode();
כדי לשייך את הדוחות להקשרים שהפעילו אותם, אפשר להגדיר מפתח ניפוי באגים של מספר שלם ללא סימן באורך 64 ביט, שיוענק לקריאה של JavaScript. הערך של debugKey
הוא BigInt
.
privateAggregation.enableDebugMode({debugKey: 1234});
ניפוי באגים בנפח אחסון משותף
מוצגת הודעת שגיאה כללית ב-Shared Storage:
Promise is rejected without and explicit error message
כדי לנפות באגים ב-Shared Storage, אפשר לעטוף את הקריאות בבלוק try-catch.
try {
privateAggregation.contributeToHistogram({bucket, value});
} catch (e){
console.log(e);
}
ניפוי באגים של Private Aggregation
הדוחות נשלחים אל /.well-known/private-aggregation/report-shared-storage
ו-/.well-known/private-aggregation/debug/report-shared-storage
. דוחות ניפוי באגים מקבלים מטען ייעודי (payload) שדומה ל-JSON הבא. עומס העבודה הזה מגדיר את השדה api
בתור 'shared-storage'.
{
"aggregation_coordinator_origin": "https://publickeyservice.msmt.gcp.privacysandboxservices.com",
"aggregation_service_payloads": [ {
"debug_cleartext_payload": "omRkYXRhlKJldmFsdWVEAAAAgGZidWNrZXRQAAAAAAAAAAAAAAAAB1vNFaJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAKJldmFsdWVEAAAAAGZidWNrZXRQAAAAAAAAAAAAAAAAAAAAAGlvcGVyYXRpb25paGlzdG9ncmFt",
"key_id": "1569ab37-da44-4a26-80d9-5ed6524ab2a7",
"payload": "/9nHrWn1MnJWRxFvanbubciWE9mPyIij6uYLi5k351eQCd3/TZpe2knaatUNcniq4a4e61tmKebv50OmMRZFnnCfcAwIdIgLHu1a3en97PojqWJBfO52RiVMIcP7KQTLzMxq2LhvPSdV4zjXo1Teu/JuIK3LIyis3vUMpS+tUAX0QV+I6X5SVmZFiNW9aMb8DwLOtqrBy5JJ/EkOIY0G+1Fi1/3R7UtKsqM1o71A/OzdmlNkwO7EV/VUNinGvWnd19FvDHe/kqkNdTHKbhAnMmbZzHW9bsEQS81leElCla6BTdbdbeeFU/jbTj0AOaoNOIe5r7FU5NG6nW4ULXTCbLLjTQ1mtl3id3IP41Zin1JvABCDC/HUSgLFz8EUqkmbMIOlMfNYA79aURq6FqE0GO0HtICYf0GPNdVv7p4jY3FNn6+JS4l5F3t+3lP9ceo4IpCE+31jzMtYJ+19xFh6C5ufteBR/iknZFcc1w3caQBhgRl5jt8DbaOzYcW4690H8Ul4Oh2wRO+6/njifk+pExLay/O5swLi2lUUph5OUEaaztwwzh2mnhwIBxMkPnfsGihiF+5KDEajVfMZ3NLsIDoZO+l4RTZrkqE+jVkAqaZGBiCIx42Edp/JV0DXfrryypCdQBZr8iEbSzCM9hKsMfLN7S/VkPe5rDwOZbhKCn5XXgfGz5tSx/KbZgsQf4OCEhwAyNPHAh3MHU7xmkQ3pKg4EIUC/WOtKAlVDOtDMmPPoQY1eAwJhw9SxZaYF1kHjUkTm3EnGhgXgOwCRWqeboNenSFaCyp6DbFNI3+ImONMi2oswrrZO+54Tyhca5mnLIiInI+C3SlP4Sv1jFECIUdf/mifJRM5hMj6OChzHf4sEifjqtD4A30c4OzGexWarie2xakdQej9Go4Lm0GZEDBfcAdWLT9HwmpeI2u4HDAblXDvLN8jYFDOOtzOl90oU7AwdhkumUCFLRadXAccXW9SvLfDswRkXMffMJLFqkRKVE1GPonFFtlzaRqp7IgE8L6AOtz6NDcxAjHnEuzDPPMcWMl1AFH0gq7h"
} ],
"debug_key": "1234",
"shared_info": "{\"api\":\"shared-storage\",\"debug_mode\":\"enabled\",\"report_id\":\"80d93c0a-a94e-4ab7-aeb5-a4ecd4bfc598\",\"reporting_origin\":\"https://privacy-sandbox-demos-dsp.dev\",\"scheduled_report_time\":\"1717784740\",\"version\":\"0.1\"}"
}
ניפוי באגים של מטען נתונים ללא הצפנה
השדה debug_cleartext_payload
מקודד ב-CBOR Base64. אפשר להציג את הקטגוריה והערך באמצעות המפענח או באמצעות קוד ה-JavaScript שמופיע במפענח של אחסון משותף.
יצירת מעורבות ושיתוף משוב
חשוב לזכור שההצעה ל-Shared Storage API נמצאת כרגע בשלבי פיתוח ודיון, ולכן היא כפופה לשינויים.
נשמח לשמוע את דעתכם על Shared Storage API.
- הצעה: בודקים את ההצעה המפורטת.
- דיון: תוכלו להצטרף לדיון המתמשך כדי לשאול שאלות ולשתף את התובנות שלכם.
אפשר להתעדכן
- רשימת תפוצה: כדאי להירשם לרשימת התפוצה שלנו כדי לקבל את העדכונים וההודעות האחרונים שקשורים ל-Shared Storage API.
רוצה לקבל עזרה?
- תמיכה למפתחים: במאגר התמיכה למפתחים של ארגז החול לפרטיות תוכלו ליצור קשר עם מפתחים אחרים ולקבל תשובות לשאלות שלכם.