Rapor biçimlendirme, çıkış alanı sorunları ve koordinatör sorunları dahil olmak üzere birden fazla faktör, toplama hizmetiyle çalışırken sorun oluşturabilir. Sorunu doğru şekilde teşhis etmek için hata kaynağını ve içerdiği meta verileri anlamak önemlidir.
Rehber konuları:
- İstemci Measurement Protocol API kurulumunu doğrulama
- Raporlama kaynağı ayarlarınızla ilgili sorunları giderme
- Toplu raporlarınızla ilgili sorunları giderme
- Dağıtım sürümünüzü inceleme
İstemci ölçüm API'si kurulumunu doğrulama
Kaynak sunucunuzun doğru şekilde kaydedildiğini doğruladıktan sonra aşağıdaki adımları tamamlayın:
Raporları nasıl tetiklediğinizi kontrol edin. Kullanılan API'ye göre doğru rapor biçimini aldığınızı onaylayın:
- Attribution Reporting API
- Attribution Reporting API için kaynağı (Etkinlik ve Özet) başarıyla kaydettiğinizden emin olun. Tetikleyici kaydı (Etkinlik ve Özet) gerçekleştirmek için
Attribution-Reporting-Register-Trigger
alanına iletilen JSON'un doğru olduğundan emin olmak üzere başlık doğrulama aracını kullanın. (Attribution Reporting API Özet Raporları hakkında daha fazla bilgi edinin.)
- Attribution Reporting API için kaynağı (Etkinlik ve Özet) başarıyla kaydettiğinizden emin olun. Tetikleyici kaydı (Etkinlik ve Özet) gerçekleştirmek için
- Private Aggregation API
- Private Aggregation API'de raporlama,
contributeToHistogram
işlevi kullanılarak tamamlanabilir. Paket anahtarını ve değerini ilettiğinizden emin olun. Paket anahtarıBigInt
biçiminde olmalıdır. (Private Aggregation API hakkında daha fazla bilgi edinin.)
- Private Aggregation API'de raporlama,
- Attribution Reporting API
Önerildiği şekilde raporları tetikliyorsanız ancak sorun yaşamaya devam ediyorsanız Chrome Geliştirici Konsolu'ndaki hem "Konsol" hem de "Ağ" sekmesinde hata olup olmadığını kontrol edin.
Bu istemci API'leri için daha fazla sorun giderme desteğine ihtiyacınız varsa Attribution Reporting API ve Private Aggregation API + Shared Storage için hata ayıklama kılavuzumuza göz atın.
Raporlama kaynağı ayarlarınızla ilgili sorunları giderme
Raporlama kaynak sunucusu, birleştirilebilir raporların gönderileceği doğru .well-known
uç noktalarını belirttiğiniz yerdir. Dağıtılan raporlama kaynak sunucunuzun doğru şekilde kaydedildiğini ve tescil edildiğini doğrulayın.
Raporlama kaynağınız rapor alıyor mu?
Dağıtılan raporlama kaynak sunucunuzun düzgün bir şekilde kaydedildiğini ve tescil edildiğini doğrulayın. Bu sunucu, birleştirilebilir raporların gönderileceği doğru .well-known
uç noktalarını belirttiğiniz yerdir.
İstemci tarafı measurement API | Eşleşen toplanabilir uç nokta |
---|---|
Attribution Reporting | POST /.well-known/attribution-reporting/report-aggregate-attribution |
Gizli Toplama + Ortak Depolama (Kombinasyon) | POST /.well-known/private-aggregation/report-shared-storage |
Private Aggregation + Protected Audience (Combo) | POST /.well-known/private-aggregation/report-protected-audience |
Kaynak sunucunuzun doğru şekilde kaydedildiğini doğruladıktan sonra aşağıdaki adımları tamamlayın:
Raporları nasıl tetiklediğinizi kontrol edin. Kullanılan API'ye göre doğru rapor biçimini aldığınızı onaylayın:
Önerildiği şekilde raporları tetikliyorsanız ancak sorun devam ediyorsa Chrome Geliştirici Konsolu'ndaki hem "Konsol" hem de "Ağ" sekmesinde hata olup olmadığını kontrol edin.
Bu istemci API'leri için daha fazla sorun giderme desteğine ihtiyacınız varsa Attribution Reporting API ve Private Aggregation API + Shared Storage için hata ayıklama kılavuzlarına göz atın.
Toplu raporlarınızla ilgili sorunları giderme
Toplu raporlar, istemci tarafı ölçüm API'leri tarafından oluşturulur ve raporlama kaynağınıza gönderilir. Bu raporlar, raporlama uç noktanız tarafından AVRO
biçimine dönüştürülmelidir. Bu dönüşümle ilgili sorunlar varsa veya raporların kendisi bozuksa Toplama Hizmeti'nde hatalar görebilirsiniz.
Toplanabilir raporlarınız doğru şekilde dönüştürülüyor mu?
Raporlama uç noktanızın (.well-known/…
), verilen birleştirilebilir JSON raporunu doğru şekilde AVRO
olarak dönüştürdüğünü doğrulayın.
Bu sorun nedeniyle ortaya çıkabilecek API hataları şunlardır:
Hata | DECRYPTION_ERROR |
---|---|
Örnek |
"result_info": {
"return_code": "REPORTS_WITH_ERRORS_EXCEEDED_THRESHOLD",
"return_message": "Aggregation job failed early because the number of reports excluded from aggregation exceeded threshold.",
"error_summary": {
"error_counts": [
{
"category": "DECRYPTION_ERROR",
"count": 1,
"description": "Unable to decrypt the report. This may be caused by: tampered aggregatable report shared info, corrupt encrypted report, or other such issues."
},
{
"category": "NUM_REPORTS_WITH_ERRORS",
"count": 1,
"description": "Total number of reports that had an error. These reports were not considered in aggregation. See additional error messages for details on specific reasons."
}
],
"error_messages": []
}
}
|
Kontrol Et |
Bu durum, şifre çözme hatalarından kaynaklanabilir. Bu hatalar, birleştirilebilir AVRO raporları veya çıkış alanı AVRO'su olsun, AVRO raporlarının doğru şekilde oluşturulmamasından kaynaklanabilir. Toplanabilir AVRO raporları doğru şekilde oluşturuluyor mu? Yükün base64 kodunun çözülmesi ve bayt dizisine dönüştürülmesi gerekir. Raporun avro biçiminde olduğundan emin olun. Ayrıca, çıkış alanının AVRO doğru olup olmadığını kontrol edin. Paketler, kaçış karakteri eklenmiş Unicode onaltılık biçimine, ardından bayt dizisine dönüştürülür.
Birden fazla hata sayısı görürseniz Toplama Hizmeti GitHub sayfasında hatalar hakkında daha fazla bilgi edinebilirsiniz.
|
Hata | DECRYPTION_KEY_NOT_FOUND |
---|---|
Örnek |
"result_info": {
"return_code": "REPORTS_WITH_ERRORS_EXCEEDED_THRESHOLD",
"return_message": "Aggregation job failed early because the number of reports excluded from aggregation exceeded threshold.",
"error_summary": {
"error_counts": [{
"category": "DECRYPTION_KEY_NOT_FOUND",
"count": 1,
"description": "Could not find decryption key on private key endpoint."
}, {
"category": "NUM_REPORTS_WITH_ERRORS",
"count": 1,
"description": "Total number of reports that had an error. These reports were not considered in aggregation. See additional error messages for details on specific reasons."
}],
"error_messages": []
}
}
|
Kontrol Et |
Attribution Reporting API
Attribution Reporting API için bu hata, tetikleyici kaydıyla ilgili bir sorundan kaynaklanabilir. aggregation_coordinator_origin alanını kullanarak tetikleyicilerini doğru buluta kaydettiklerini kontrol edin (buradaki talimatları uygulayın). Ayrıca, müşterinin Aggregation Service'in Google Cloud dağıtımına AWS ile şifrelenmiş raporlar veya AWS dağıtımına Google Cloud ile şifrelenmiş raporlar da sağlıyor olabilirsiniz. Toplanabilir raporları şifrelemek için hangi ortak anahtar uç noktasının kullanıldığını doğrulamalarını isteyin. Google Cloud için birleştirilebilir rapordaki "aggregation_coordinator_origin" alanı https://publickeyservice.msmt.gcp.privacysandboxservices.com olmalıdır. AWS için bu alan https://publickeyservice.msmt.aws.privacysandboxservices.com olmalıdır. Private Aggregation APIPrivate Aggregation API için, Private Aggregation API açıklama sayfasındaki Toplama koordinatörü seçimi bölümündeki örneği kullanarak "aggregationCoordinatorOrigin" değerini tanımlamanız gerekir. Lütfen Örneğin:
sharedStorage.run('someOperation', {'privateAggregationConfig':
{'aggregationCoordinatorOrigin': ' https://publickeyservice.msmt.gcp.privacysandboxservices.com'}});
|
Hata | DECRYPTION_KEY_FETCH_ERROR |
---|---|
Örnek |
"result_info": {
"return_code": "REPORTS_WITH_ERRORS_EXCEEDED_THRESHOLD",
"return_message": "Aggregation job failed early because the number of reports excluded from aggregation exceeded threshold.",
"error_summary": {
"error_counts": [
{
"category": "DECRYPTION_KEY_FETCH_ERROR",
"count": 1,
"description": "Fetching the decryption key for report decryption failed. This can happen using an unapproved aggregation service binary, running the aggregation service binary in debug mode, key corruption or service availability issues."
},
{
"category": "NUM_REPORTS_WITH_ERRORS",
"count": 1,
"description": "Total number of reports that had an error. These reports were not considered in aggregation. See additional error messages for details on specific reasons."
}
]
}
}
|
Kontrol Et | Onaylanmamış ikili veya hata ayıklama modu sorunları varsa doğru ikiliyi kullanarak sorunu düzeltebilirsiniz. Önceden oluşturulmuş AMI'yi kullanmak veya AMI'nizi kendiniz oluşturmak için buradaki talimatları uygulayın. |
Aşağıdaki adımları uygulayarak doğrulama yapın:
.well-known uç noktasından topladığınız birleştirilebilir raporları AVRO'ya dönüştürmek ve çıktı alan adı anahtarlarını oluşturmak için
aggregatable_report_converter
aracını kullanabilirsiniz. (Not: Çıkış alan dosyaları 16 baytlık büyük endian bayt dizesi olmalıdır.)Herkese açık bulut sağlayıcınızın hata ayıklama raporlarınızı toplayabilmesi ve çıkış alan adı anahtarlarınızı kullanarak bir Toplama Hizmeti işi çalıştırabilmesi için codelab'deki adımları uygulayın: a. Google Cloud: Toplama Hizmeti Google Cloud Codelab'in 3.1.2 ile 3.2.3 arasındaki adımlarını uygulayın. b. Amazon Web Services: Aggregation Service AWS Codelab'in 4.2 ile 5.3 arasındaki adımlarını uygulayın.
Bu işlem SUCCESS
yanıtı döndürüyorsa dönüşümünüz çalışıyor demektir.
Toplanabilir raporlarınız bozulmadı mı?
Toplu raporunuzun, çıkış alan anahtarlarınızın ve paylaşılan bilgilerinizin bozulmadığını doğrulayın. Daha fazla bilgi edinmek için birleştirilebilir raporları dönüştürmek ve alan dosyaları oluşturmak üzere örnek kodlara bakın.
Bu sorunla ilgili olarak karşılaşabileceğiniz API hataları şunlardır:
Hata | INPUT_DATA_READ_FAILED |
---|---|
Uç nokta | createJob |
Kontrol Et |
createJob isteğinde input_data_bucket_name , input_data_blob_prefix , output_data_bucket_name ve output_data_blob_prefix alanı doğru mu? Giriş raporu veri konumunda, işlenecek raporlar var mı? Raporlar ve çıkış alanının depolama konumundan okuma izniniz var mı?
|
Aşağıdaki adımları uygulayarak doğrulama yapın:
Toplu raporu doğrulama:
- Toplu raporlar oluşturun ve çıktı alanını
AVRO
biçimine dönüştürmek içinaggregatable_report_converter
aracını kullanın. - Bu toplanabilir rapor ve çıkış alan dosyasıyla bir
createJob
isteği çalıştırın. - Bu işlem sonucunda
SUCCESS
döndürülürse toplanabilir rapor bozulmamış demektir. Bu işlem hata döndürüyorsa toplanabilir raporunuzla veya hem rapor hem de alanınızla ilgili bir sorununuz var demektir. - Sonraki adımda alan dosyasını kontrol edin.
- Toplu raporlar oluşturun ve çıktı alanını
Çıkış alan dosyasını doğrulama:
- Çıkış alan dosyası oluşturun ve birleştirilebilir raporu oluşturmak için
aggregatable_report_converter
aracını kullanın. - Bu toplanabilir rapor ve çıkış alan dosyasıyla bir
createJob
isteği çalıştırın. - Bu işlem
SUCCESS
döndürüyorsa çıkış alanı bozulmamış demektir ve birleştirilebilir raporu oluşturma kodunuzda bir sorun vardır. shared_info
adresini kontrol etmek için sonraki adıma geçin.
- Çıkış alan dosyası oluşturun ve birleştirilebilir raporu oluşturmak için
Paylaşılan bilgileri doğrulama:
- Raporlarda hata ayıklama özelliğini etkinleştirdiğinizden emin olun. Hata ayıklama özelliği etkinleştirilen raporlarda
debug_cleartext_payload
alanı bulunur. - Yerel test aracıyla kullanılacak bir hata ayıklama raporu oluşturun ve yük olarak
debug_cleartext_payload
kullanın. - Yerel test aracını alan dosyanızla çalıştırın. Bu bir
SUCCESS
iseshared_info
dosyanızla oynanmış demektir.
- Raporlarda hata ayıklama özelliğini etkinleştirdiğinizden emin olun. Hata ayıklama özelliği etkinleştirilen raporlarda
Başka bir hata veya müdahale olduğundan şüpheleniyorsanız JSON toplu raporunu, alan anahtarını, oluşturulan toplu AVRO
raporunu ve çıkış alanını toplayın ve sonraki adımlara geçin.
Yeni dağıtım sürümünüzü inceleme
Toplama Hizmeti sürümünüzün hâlâ desteklendiğini doğrulayın. Kullandığınız sürümü belirledikten sonra Toplama Hizmeti sürümlerinin listesini kontrol edin ve sürümünüzde destek sonu uyarısı bulunmadığını onaylayın:
This release has reached its end of support on { date }
. Hangi sürümü dağıttığınızı belirlemeyle ilgili aşağıdaki talimatlar, desteklenen herkese açık bulutlar içindir.
Google Cloud için adımlar
- Compute Engine > Sanal makine örnekleri'ne gidin.
- Adında
-worker-
bulunan sanal makine örneğini tıklayın. Custom Metadata
bölümünü ve ardındantee-image-reference
anahtarını bulun.- Not: Terraform tarafından Google Cloud'da temel hazırlığı yapılan her sanal makinede bu meta veriler (çalışan modülündeki
tee-image-reference
meta verileri) bulunmalıdır.
- Not: Terraform tarafından Google Cloud'da temel hazırlığı yapılan her sanal makinede bu meta veriler (çalışan modülündeki
tee-image-reference
değerinde sürüm numarası yer alır. Örneğin, aşağıdaki yolun sürüm numarasıv2.9.1
'tür. Bunlar, bir Google Cloud projesinin Artifact Registry'sinde bulunan önceden oluşturulmuş görüntülerdir.- Not: Bu, önceden oluşturulmuş öğeleri kullanıyorsanız geçerlidir. Aksi takdirde, bu ad, resminizi kişisel olarak adlandırıp etiketlediğiniz adla eşleşmelidir.
(örnek:
us.docker.pkg.dev/<gcp_project_name>/artifacts:aggregation-service- container-artifacts-worker_mp_go_prod:2.9.1
)
- Not: Bu, önceden oluşturulmuş öğeleri kullanıyorsanız geçerlidir. Aksi takdirde, bu ad, resminizi kişisel olarak adlandırıp etiketlediğiniz adla eşleşmelidir.
(örnek:
Amazon Web Services için adımlar
- Amazon Web Services konsolunuzda EC2 Örnekleri'ne gidin.
aggregation-service-operator-dev-env
adlı örneği tıklayın.- Örnek sayfasında Ayrıntılar > AMI (Amazon Makine Görüntüsü)'nü bulun.
- Sürüm adınız resim yoluna eklenmelidir. Örneğin, aşağıdaki yolun sürüm numarası
v2.9.1
'tür.- Not: Bu, önceden oluşturulmuş öğeleri kullanıyorsanız geçerlidir. Aksi takdirde, bu ad, resminizi kişisel olarak adlandırıp etiketlediğiniz adla eşleşmelidir.
(örnek:
aggregation-service-enclave_2.9.1--2024-10-03T01-24-25Z
)
- Not: Bu, önceden oluşturulmuş öğeleri kullanıyorsanız geçerlidir. Aksi takdirde, bu ad, resminizi kişisel olarak adlandırıp etiketlediğiniz adla eşleşmelidir.
(örnek:
Sonraki Adımlar
Toplama Hizmeti sorununuzun çözümünü görmüyorsanız GitHub sorunu bildirerek veya teknik destek formunu göndererek bizi bilgilendirin.