1. Ön koşullar
Bu Codelab'i gerçekleştirmek için birkaç ön koşul gereklidir. Her gereksinim, "Yerel Test" için gerekli olup olmadığına göre uygun şekilde işaretlenir veya "Toplama Hizmeti" olabilir.
1.1. Yerel Test Aracı'nı indirin (Yerel Test)
Yerel Test için Yerel Test Aracı'nın indirilmesi gerekir. Araç, şifrelenmemiş hata ayıklama raporlarından özet raporları oluşturur.
Yerel Test aracını GitHub'daki Lambda JAR Arşivleri'nden indirebilirsiniz. LocalTestingTool_{version}.jar
olarak adlandırılmalıdır.
1.2. JAVA JRE'nin yüklü olduğundan emin olun (Yerel Test ve Toplama Hizmeti)
"Terminal"i açın ve makinenizde Java veya openJDK'nın yüklü olup olmadığını kontrol etmek için java --version
kullanın.
Yüklü değilse Java sitesinden veya openJDK sitesinden indirip yükleyebilirsiniz.
1.3. Toplanabilir Rapor Dönüştürücüyü İndir (Yerel Test ve Toplama Hizmeti)
Toplanabilir rapor dönüştürücünün bir kopyasını Özel Korumalı Alan Demoları GitHub deposundan indirebilirsiniz.
1.4. Reklam gizliliği API'lerini etkinleştir (Yerel Test ve Toplama Hizmeti)
Tarayıcınızda chrome://settings/adPrivacy
adresine gidip tüm Reklam Gizliliği API'lerini etkinleştirin.
Üçüncü taraf çerezlerinin etkinleştirildiğinden emin olun.
Tarayıcınızda chrome://settings/cookies
bölümüne gidip "Gizli modda üçüncü taraf çerezlerini engelle" seçeneğini belirleyin.
1.5. Web ve Android kaydı (Toplama Hizmeti)
Özel Korumalı Alan API'lerini üretim ortamında kullanmak istiyorsanız hem Chrome hem de Android için kayıt ve onay işlemlerini tamamladığınızdan emin olun.
Yerel test için kayıt, bir chrome flag ve CLI anahtarı kullanılarak devre dışı bırakılabilir.
Demomuzda Chrome işaretini kullanmak için chrome://flags/#privacy-sandbox-enrollment-overrides
adresine gidip geçersiz kılmayı sitenizle güncelleyin. Demo sitemizi kullanacaksanız güncelleme gerekmez.
1.6. Aggregation Service ilk katılım (Toplama Hizmeti)
Toplama Hizmeti, hizmeti kullanabilmek için koordinatörlere ilk katılım gerektirir. Raporlama sitesi adresinizi, AWS hesap kimliğinizi ve diğer bilgileri sağlayarak toplama hizmeti ilk katılım formunu doldurun.
1.7. Bulut sağlayıcısı (Toplama Hizmeti)
Toplama Hizmeti, bulut ortamı kullanan bir Güvenilir Yürütme Ortamı kullanılmasını gerektirir. Toplama hizmeti, Amazon Web Services (AWS) ve Google Cloud'da (GCP) desteklenir. Bu Codelab, yalnızca AWS entegrasyonunu kapsar.
AWS, Nitro Enclaves adlı Güvenilir bir Yürütme Ortamı sağlar. Bir AWS hesabınız olduğundan emin olun ve AWS CLI ortamınızı ayarlamak için AWS CLI yükleme ve güncelleme talimatlarını uygulayın.
AWS KSA'nız yeniyse KSA yapılandırma talimatlarını kullanarak AWS KSA'nızı yapılandırabilirsiniz.
1.7.1. AWS S3 paketi oluşturma
Terraform durumunu depolamak için bir AWS S3 paketi, raporlarınız ve özet raporlarınızı depolamak için başka bir S3 paketi oluşturun. Sağlanan CLI komutunu kullanabilirsiniz. <>
içindeki alanı uygun değişkenlerle değiştirin.
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. Kullanıcı erişim anahtarı oluştur
AWS kılavuzunu kullanarak kullanıcı erişim anahtarları oluşturun. Bu, AWS'de oluşturulan createJob
ve getJob
API uç noktalarını çağırmak için kullanılır.
1.7.3. AWS kullanıcı ve grup izinleri
AWS'de Toplama Hizmeti'ni dağıtmak için hizmetin dağıtımında kullanılan kullanıcıya belirli izinler sağlamanız gerekir. Bu Codelab'de, dağıtımda tüm izinleri kullanabilmek için kullanıcının Yönetici Erişimine sahip olduğundan emin olun.
1.8. Terraform (Toplama Hizmeti)
Bu Codelab, Toplama Hizmeti'ni dağıtmak için Terraform'u kullanır. Terraform ikili programının yerel ortamınıza yüklendiğinden emin olun.
Terraform ikili programını yerel ortamınıza indirin.
Terraform ikili programı indirildikten sonra dosyayı çıkarın ve Terraform ikili programını /usr/local/bin
öğesine taşıyın.
cp <directory>/terraform /usr/local/bin
Terraform'un sınıf yolunda kullanılabilir olduğundan emin olun.
terraform -v
1.9. Postman (Toplama Hizmeti AWS için)
Bu Codelab'de istek yönetimi için Postman'i kullanın.
"Çalışma alanları" bölümüne giderek çalışma alanı oluşturun. üst gezinme öğesini tıklayın ve "Çalışma Alanı Oluştur"u seçin.
"Boş çalışma alanı"nı seçin, sonraki seçeneğini tıklayın ve "Özel Korumalı Alan" adını verin. "Kişisel"i seçin ve "Oluştur"u tıklayın.
Önceden yapılandırılmış çalışma alanı JSON yapılandırması ve Genel Ortam dosyalarını indirin.
JSON dosyalarını "Çalışma Alanım" bölümüne aktarın. "İçe aktar" seçeneğini kullanarak düğmesini tıklayın.
Bu işlem, createJob
ve getJob
HTTP istekleriyle birlikte sizin için Özel Korumalı Alan koleksiyonunu oluşturur.
AWS "Erişim Anahtarı"nı güncelleme ve "Gizli Anahtar" "Ortam hızlı bakış" bölümüne göz atın.
"Düzenle"yi tıklayın. ve "Geçerli Değer"i güncelleyin "access_key" erişim anahtarının ve "secret_key" olarak tanımlar. frontend_api_id
bilgisinin bu dokümanın 3.1.4 bölümünde sağlanacağını unutmayın. Ayrıca us-east-1 bölgesini kullanmanızı öneririz. Ancak farklı bir bölgede dağıtım yapmak istiyorsanız yayınlanan AMI'yi hesabınıza kopyaladığınızdan veya sağlanan komut dosyalarını kullanarak kendi kendine oluşturma işlemini gerçekleştirdiğinizden emin olun.
2. Yerel Test Codelab'i
Toplama yapmak ve şifrelenmemiş hata ayıklama raporlarını kullanarak özet raporlar oluşturmak için makinenizdeki yerel test aracını kullanabilirsiniz.
Codelab Adımları
Adım 2.1. Tetikleyici raporu: Raporu toplayabilmek için Özel Toplama raporlamasını tetikleyin.
Adım 2.2. Hata ayıklama toplanabilir raporu oluşturun: Toplanan JSON raporunu AVRO biçimli bir rapora dönüştürün.
Bu adım, reklam teknisyenlerinin API raporlama uç noktalarından raporları toplayıp JSON raporlarını AVRO biçimli raporlara dönüştürmesine benzer.
Adım 2.3. Hata ayıklama raporundan paket anahtarını ayrıştırma: Paket anahtarları, reklam teknolojileri tarafından tasarlanmıştır. Bu codelab'de, paketler önceden tanımlanmış olduğundan paket anahtarlarını sağlandığı şekilde alın.
Adım 2.4. Çıkış alanı AVRO'sunu oluşturun: Paket anahtarları alındıktan sonra Çıkış Alanı AVRO dosyasını oluşturun.
Adım 2.5. Yerel Test Aracı'nı kullanarak özet raporlar oluşturun: Yerel Ortamda Özet Raporlar oluşturabilmek için Yerel Test Aracı'nı kullanın.
Adım 2.6. Özet raporu inceleme: Yerel Test Aracı tarafından oluşturulan Özet Raporu inceleyin.
2.1. Tetikleyici raporu
Özel Korumalı Alan demo sitesine gidin. Bu işlem, gizli bir toplama raporunu tetikler. Raporu chrome://private-aggregation-internals
adresinden görüntüleyebilirsiniz.
Raporunuz "Beklemede" durumundaysa durumda raporu seçip "Seçili Raporları Gönder"i tıklayabilirsiniz.
2.2. Hata ayıklama için toplanabilir rapor oluşturun
chrome://private-aggregation-internals
alanındaki "Rapor Gövdesini" kopyalayın. [reporting-origin]/.well-known/private-aggregation/report-shared-storage
uç noktasında alınır.
"Rapor Gövdesi" bölümünde aggregation_coordinator_origin
öğesinin, https://publickeyservice.msmt.aws.privacysandboxservices.com
değerini içerdiğinden emin olun. Bu, raporun AWS için toplanabilir bir rapor olduğu anlamına gelir.
JSON "Rapor Gövdesi"ni yerleştirin JSON dosyasında da kullanabilirsiniz. Bu örnekte vim'i kullanabilirsiniz. Ancak, istediğiniz metin düzenleyiciyi kullanabilirsiniz.
vim report.json
Raporu report.json
alanına yapıştırın ve dosyanızı kaydedin.
Bunu yaptıktan sonra rapor klasörünüze gidin ve hata ayıklamanın toplanabilir raporunu oluşturmak için aggregatable_report_converter.jar
öğesini kullanın. Bu işlem, geçerli dizininizde report.avro
adında toplanabilir bir rapor oluşturur.
java -jar aggregatable_report_converter.jar \
--request_type convertToAvro \
--input_file report.json \
--debug
2.3. Paket anahtarını hata ayıklama raporundan ayrıştırın
Toplama Hizmeti, toplu işlem için iki dosya gerektirir. Toplanabilir rapor ve çıkış alan adı dosyası. Çıkış alanı dosyası, toplanabilir raporlardan almak istediğiniz anahtarları içerir. output_domain.avro
dosyasını oluşturmak için raporlardan alınabilen paket anahtarlarına ihtiyacınız vardır.
Paket anahtarları, API'yi çağıran kişi tarafından tasarlanmıştır ve demo önceden oluşturulmuş örnek paket anahtarları içerir. Demo, Özel Toplama için hata ayıklama modunu etkinleştirdiğinden hata ayıklama temiz metin yükünü "Rapor Gövdesi"nden ayrıştırabilirsiniz. paket anahtarını geri alın. Ancak bu durumda paket anahtarlarını site özel korumalı alan demosu oluşturur. Bu site için gizli toplama hata ayıklama modunda olduğundan, "Rapor Gövdesi"ndeki debug_cleartext_payload
özelliğini kullanabilirsiniz. paket anahtarını alın.
Rapor gövdesindeki debug_cleartext_payload
bilgisini kopyalayın.
Özel Toplama için hata ayıklama yükü kod çözücü aracını açın ve debug_cleartext_payload
öğenizi "INPUT" içine yapıştırın kutusunu işaretleyin ve "Kodu Çöz"ü tıklayın.
Sayfa, paket anahtarının ondalık değerini döndürür. Aşağıda örnek bir paket anahtarı verilmiştir.
2.4. AVRO çıkış alanını oluşturma
Artık paket anahtarına sahip olduğumuza göre, paket anahtarının ondalık değerini kopyalayın. Paket anahtarını kullanarak output_domain.avro
oluşturma işlemine devam edin.
öğesini aldığınız paket anahtarıyla değiştirdiğinizden emin olun.
java -jar aggregatable_report_converter.jar \
--request_type createDomainAvro \
--bucket_key <bucket key>
Komut dosyası, geçerli klasörünüzde output_domain.avro
dosyasını oluşturur.
2.5. Yerel Test Aracı'nı kullanarak özet raporlar oluşturun
Özet raporları oluşturmak için Bölüm 1.1'de indirilen LocalTestingTool_{version}.jar
kullanılır. Aşağıdaki komutu kullanın. LocalTestingTool_{version}.jar
değerini LocalTestingTool için indirilen sürümle değiştirmeniz gerekir.
Yerel geliştirme ortamınızda bir özet rapor oluşturmak için aşağıdaki komutu çalıştırın:
java -jar LocalTestingTool_{version}.jar \
--input_data_avro_file report.avro \
--domain_avro_file output_domain.avro \
--output_directory .
Komut çalıştırıldıktan sonra, aşağıdaki resme benzer bir şey görürsünüz. Bu işlem tamamlandığında output.avro
adlı bir rapor oluşturulur.
2.6. Özet raporu inceleme
Oluşturulan özet raporu AVRO biçimindedir. Bunu okuyabilmek için AVRO'dan JSON biçimine dönüştürmeniz gerekir. İdeal olarak, reklam teknolojisi AVRO raporlarını tekrar JSON biçimine dönüştürecek şekilde kodlama yapmalıdır.
Codelab'imiz için, sağlanan aggregatable_report_converter.jar
aracını kullanarak AVRO raporunu tekrar JSON biçimine dönüştüreceğiz.
java -jar aggregatable_report_converter.jar \
--request_type convertToJson \
--input_file output.avro
Bu işlem, aşağıdaki resme benzer bir rapor döndürür. Aynı dizinde oluşturulan bir raporla (output.json
) birlikte.
Özet raporu incelemek için JSON dosyasını seçtiğiniz bir düzenleyicide açın.
3. Toplama Hizmeti dağıtımı
Toplama Hizmeti'ni dağıtmak için aşağıdaki adımları uygulayın:
3. Adım: Aggregation Service Deployment: AWS'de Toplama Hizmeti'ni dağıtın
Adım 3.1 Toplama Hizmeti Deposu'nu klonlayın
Adım 3.2 Önceden oluşturulmuş bağımlılıkları indirin
3.3.Adım Bir geliştirme ortamı oluşturun
Adım 3.4. Toplama Hizmeti Dağıtma
3.1. Toplama Hizmeti deposunu klonlama
Yerel ortamınızda Toplama Hizmeti GitHub deposunu klonlayın.
git clone https://github.com/privacysandbox/aggregation-service.git
3.2. Önceden oluşturulmuş bağımlılıkları indirme
Toplama Hizmeti deposunu klonladıktan sonra deponun Terraform klasörüne ve ilgili bulut klasörüne gidin. cloud_provider AWS ise
hizmetine devam edebilirsiniz
cd <repository_root>/terraform/aws
uygulamasında download_prebuilt_dependencies.sh
yürütün.
bash download_prebuilt_dependencies.sh
3.3. Geliştirme ortamı oluşturma
bölgesinde bir geliştirici ortamı oluşturun. dev
adlı bir klasör oluşturun.
mkdir dev
demo
klasörünün içeriğini dev
klasörüne kopyalayın.
cp -R demo/* dev
dev
klasörünüze taşıyın.
cd dev
main.tf
dosyanızı güncelleyin ve dosyayı düzenlemek için input
için i
tuşuna basın.
vim main.tf
# işaretini kaldırıp paket ve anahtar adlarını güncelleyerek kırmızı kutudaki koddaki açıklamayı kaldırın.
AWS main.tf için:
Açıklama içermeyen kod aşağıdaki gibi görünür.
backend "s3" {
bucket = "<tf_state_bucket_name>"
key = "<environment_name>.tfstate"
region = "us-east-1"
}
Güncellemeler tamamlandığında güncellemeleri kaydedin ve esc
-> tuşlarına basarak düzenleyiciden çıkın. :wq!
. Bu işlem, main.tf
üzerindeki güncellemeleri kaydeder.
Sonra, example.auto.tfvars
öğesini dev.auto.tfvars
olarak yeniden adlandırın.
mv example.auto.tfvars dev.auto.tfvars
dev.auto.tfvars
dosyasını güncelleyin ve dosyayı düzenlemek için input
için i
düğmesine basın.
vim dev.auto.tfvars
Görüntünün ardından gelen kırmızı kutudaki alanları, Toplama Hizmeti'ne ilk katılım, ortam ve bildirim e-postasında sağlanan doğru AWS ARN parametreleriyle güncelleyin.
Güncellemeler tamamlandığında esc
-> öğesine basın. :wq!
. Bu işlem, dev.auto.tfvars
dosyasını kaydeder. Dosya, aşağıdaki resme benzer bir görünümde olacaktır.
3.4. Toplama Hizmeti Dağıtma
Toplama Hizmeti'ni dağıtmak için aynı
klasöründe Terraform'u başlatın.
terraform init
Bu, aşağıdaki resme benzer bir sonuç döndürecektir:
Terraform başlatıldıktan sonra Terraform yürütme planını oluşturun. Eklenecek kaynak sayısını ve aşağıdaki resme benzer diğer ek bilgileri burada döndürür.
terraform plan
Aşağıdaki "Plan" bölümünde görebilirsiniz özet. Bu yeni bir dağıtımsa eklenecek kaynak sayısını görmeniz gerekir. 0, değiştirilecek 0, kaldırılacak ise 0 değeri gösterilir.
Bu işlemleri tamamladıktan sonra Terraform'u uygulamaya başlayabilirsiniz.
terraform apply
İşlemlerin Terraform tarafından gerçekleştirilmesini onaylamanız istendiğinde, değere yes
girin.
terraform apply
tamamlandıktan sonra, createJob
ve getJob
için aşağıdaki uç noktalar döndürülür. Postman'da bölüm 1.9'da güncellemeniz gereken frontend_api_id
da döndürülür.
4. Toplama Hizmeti girişi oluşturma
Toplama Hizmeti'nde toplu işlem yapmak için AVRO raporlarını oluşturmaya devam edin.
4. Adım: Toplama Hizmeti Girişi Oluşturma: Toplama Hizmeti için toplu hale getirilen Toplama Hizmeti raporlarını oluşturun.
4.1.Adım Tetikleyici Raporu
Adım 4.2. Toplanabilir raporlar toplama
Adım 4.3. Raporları AVRO'ya dönüştürün
Adım 4.4. AVRO çıkış alanını oluşturma
4.1. Tetikleyici raporu
Özel Korumalı Alan demo sitesine gidin. Bu işlem, gizli bir toplama raporunu tetikler. Raporu chrome://private-aggregation-internals
adresinden görüntüleyebilirsiniz.
Raporunuz "Beklemede" durumundaysa durumda raporu seçip "Seçili Raporları Gönder"i tıklayabilirsiniz.
4.2. Birleştirilebilir raporlar toplama
Birleştirilebilir raporlarınızı, ilgili API'nizin .well-known
uç noktalarından toplayın.
- Özel Toplama
[reporting-origin] /.well-known/private-aggregation/report-shared-storage
- İlişkilendirme Raporları: Özet Raporu
[reporting-origin] /.well-known/attribution-reporting/report-aggregate-attribution
Bu Codelab için rapor toplamayı manuel olarak yapacaksınız. Üretim aşamasında, reklam teknisyenlerinin raporları programatik olarak toplayıp dönüştürmesi beklenir.
chrome://private-aggregation-internals
alanındaki "Rapor Gövdesini" kopyalayın. [reporting-origin]/.well-known/private-aggregation/report-shared-storage
uç noktasında alınır.
"Rapor Gövdesi" bölümünde aggregation_coordinator_origin
öğesinin, https://publickeyservice.msmt.aws.privacysandboxservices.com
değerini içerdiğinden emin olun. Bu, raporun AWS için toplanabilir bir rapor olduğu anlamına gelir.
JSON "Rapor Gövdesi"ni yerleştirin JSON dosyasında da kullanabilirsiniz. Bu örnekte vim'i kullanabilirsiniz. Ancak, istediğiniz metin düzenleyiciyi kullanabilirsiniz.
vim report.json
Raporu report.json
alanına yapıştırın ve dosyanızı kaydedin.
4.3. Raporları AVRO'ya dönüştürme
.well-known
uç noktalarından alınan raporlar JSON biçimindedir ve AVRO rapor biçimine dönüştürülmesi gerekir. JSON raporunu aldıktan sonra rapor klasörünüze gidin ve hata ayıklamayla ilgili toplanabilir raporun oluşturulmasına yardımcı olması için aggregatable_report_converter.jar
öğesini kullanın. Bu işlem, geçerli dizininizde report.avro
adında toplanabilir bir rapor oluşturur.
java -jar aggregatable_report_converter.jar \
--request_type convertToAvro \
--input_file report.json
4.4 AVRO çıkış alanını oluşturma
output_domain.avro
dosyasını oluşturmak için raporlardan alınabilen paket anahtarlarına ihtiyacınız vardır.
Paket anahtarları, reklam teknolojisi tarafından tasarlanmıştır. Ancak bu durumda, paket anahtarlarını Özel Korumalı Alan demosu sitesi oluşturur. Bu site için gizli toplama hata ayıklama modunda olduğundan, "Rapor Gövdesi"ndeki debug_cleartext_payload
özelliğini kullanabilirsiniz. paket anahtarını alın.
Devam edin ve rapor gövdesinden debug_cleartext_payload
değerini kopyalayın.
goo.gle/ags-payload-decoder adresini açın ve debug_cleartext_payload
öğenizi "INPUT" bölümüne yapıştırın kutusunu işaretleyin ve "Kodu Çöz"ü tıklayın.
Sayfa, paket anahtarının ondalık değerini döndürür. Aşağıda örnek bir paket anahtarı verilmiştir.
Paket anahtarına sahip olduğumuza göre output_domain.avro
oluşturma işlemine geçebilirsiniz.
öğesini aldığınız paket anahtarıyla değiştirdiğinizden emin olun.
java -jar aggregatable_report_converter.jar \
--request_type createDomainAvro \
--bucket_key <bucket key>
Komut dosyası, geçerli klasörünüzde output_domain.avro
dosyasını oluşturur.
4.5. Raporları AWS paketine taşıma
AVRO raporları (bölüm 3.2.3'ten) ve çıkış alanı (bölüm 3.2.4'ten) oluşturulduktan sonra, raporları ve çıkış alanını raporlama S3 paketlerine taşımaya devam edin.
Yerel ortamınızda AWS CLI kurulumu varsa raporları ilgili S3 paketine ve rapor klasörüne kopyalamak için aşağıdaki komutları kullanın.
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. Toplama Hizmeti kullanımı
terraform apply
itibarıyla create_job_endpoint
, get_job_endpoint
ve frontend_api_id
döndürüldü. frontend_api_id
değerini kopyalayın ve ön koşul bölümü 1.9'da ayarladığınız postman genel değişkenine (frontend_api_id
) yerleştirin.
5. Adım: Toplama Hizmeti Kullanımı: Özet raporları oluşturmak ve özet raporlarını incelemek için Aggregation Service API'yi kullanın.
5.1.Adım Toplu işlem için createjob Endpoint'i kullanma
Adım 5.2. Grup durumunu almak için getjob Endpoint'i kullanma
Adım 5.3. Özet Raporu İnceleme
5.1. Toplu işlem için createJob
uç noktası kullanılıyor
Postman'da "Özel Korumalı Alan"ı açın. koleksiyonu açın ve "createJob" öğesini seçin.
"Gövde"yi seçin ve "raw"ı seçin. tıklayın.
createJob
yük şeması, github'da bulunur ve aşağıdakine benzer. <>
değerini uygun alanlarla değiştirin.
{
"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"
}
}
"Gönder" düğmesini tıkladığınızda job_request_id
ile iş oluşturulur. İstek, Toplama Hizmeti tarafından kabul edildikten sonra bir HTTP 202 yanıtı alırsınız. Diğer olası dönüş kodları, HTTP yanıt kodlarında bulunabilir
5.2. Toplu durumu almak için getjob Endpoint'i kullanma
İş isteğinin durumunu kontrol etmek için getJob
uç noktasını kullanabilirsiniz. "getJob" öğesini seçin "Özel Korumalı Alan" koleksiyonudur.
"Params" bölümünde, Job_request_id değerini, createJob
isteğinde gönderilen job_request_id
olarak güncelleyin.
getJob
öğesinin sonucu, iş isteğinizin durumunu HTTP durumu 200 ile döndürmelidir. "Gövde" isteği job_status
, return_message
ve error_messages
(işte hata oluştuysa) gibi gerekli bilgileri içerir.
Oluşturulan demo raporunun raporlama sitesi, AWS kimliğinizdeki ilk katılım aşamasından farklı olduğundan PRIVACY_BUDGET_AUTHORIZATION_ERROR
return_code 'i içeren bir yanıt alabilirsiniz. Raporlar'ın raporlama kaynağının sitesi, AWS kimliği için kabul edilen raporlama sitesiyle eşleşmiyor.
{
"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. Özet Raporu İnceleme
Özet raporunuzu çıkış S3 paketinizde aldıktan sonra, bunu yerel ortamınıza indirebilirsiniz. Özet raporları AVRO biçimindedir ve JSON'a geri dönüştürülebilir. Aşağıdaki komutu kullanarak raporunuzu okumak için aggregatable_report_converter.jar
komutunu kullanabilirsiniz.
java -jar aggregatable_report_converter.jar \
--request_type convertToJson \
--input_file <summary_report_avro>
Bu, aşağıdaki resme benzer şekilde görünen her paket anahtarının birleştirilmiş değerlerini içeren bir JSON döndürür.
createJob
isteğinizde true
olarak debug_run
bulunuyorsa özet raporunuzu output_data_blob_prefix
konumundaki hata ayıklama klasöründe bulabilirsiniz. Rapor AVRO biçimindedir ve önceki komut kullanılarak JSON'a dönüştürülebilir.
Raporda grup anahtarı, gürültüsüz metrik ve özet raporu oluşturmak için gürültüsüz metriğe eklenen gürültü yer alır. Rapor aşağıdaki resme benzer.
Ek açıklamalarda in_reports
ve in_domain
değerleri de bulunmaktadır. Bu, şu anlama gelir:
- in_reports: Paket anahtarı, toplanabilir raporların içinde bulunur.
- in_domain: Paket anahtarı, exit_domain AVRO dosyasının içinde yer alır.