Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memecahkan masalah alur MediaTailor acara
Memahami alur AWS Elemental MediaTailor peristiwa memberikan dasar yang kuat untuk memecahkan masalah penyisipan iklan. Dengan menganalisis urutan, waktu, dan pola peristiwa, Anda dapat dengan cepat mengidentifikasi di mana masalah terjadi dan menerapkan solusi yang ditargetkan.
Bagian ini memberikan panduan praktis untuk menggunakan analisis aliran peristiwa untuk mendiagnosis masalah. Untuk memahami konsep dasar alur peristiwa, lihatAlur acara penyisipan iklan.
Mengidentifikasi alur peristiwa yang tidak lengkap
Alur peristiwa yang tidak lengkap terjadi ketika urutan peristiwa yang diharapkan berhenti sebelum mencapai personalisasi manifes yang berhasil (proses MediaTailor memasukkan informasi iklan yang dipersonalisasi ke dalam manifes). Mengidentifikasi di mana aliran putus membantu menentukan akar penyebab kegagalan penyisipan iklan.
Pola aliran umum yang tidak lengkap
Titik kegagalan yang berbeda dalam aliran peristiwa menunjukkan jenis masalah tertentu, seperti berikut ini.
-
Alur berhenti setelah deteksi peluang iklan: Menunjukkan masalah dengan penanda iklan atau manifes itu sendiri yang MediaTailor mencegah membuat permintaan ADS. Masalah konektivitas, konfigurasi, atau batas waktu ADS akan terjadi setelah permintaan ADS dibuat.
-
Alur berhenti setelah permintaan ADS: Menyarankan masalah respons ADS, masalah penguraian VAST, kegagalan pemrosesan kreatif, batas waktu ADS, kesalahan konektivitas, atau masalah konfigurasi seperti ADS tidak valid URLs yang hanya ditemukan saat permintaan dibuat.
-
Suar pelacakan yang hilang: Mungkin menunjukkan masalah konfigurasi pelacakan, masalah pelaporan sisi server, atau celah implementasi sisi klien.
CloudWatch kueri untuk analisis aliran yang tidak lengkap
Gunakan kueri Amazon CloudWatch Logs Insights ini untuk mengidentifikasi alur peristiwa yang tidak lengkap. Jalankan kueri ini terhadap grup log yang sesuai berdasarkan jenis analisis yang diperlukan.
Pemilihan grup log:
-
MediaTailor/AdDecisionServerInteractions- Gunakan untuk kueri yang menganalisis interaksi server keputusan iklan, peluang iklan, dan kegagalan terkait iklan.
-
MediaTailor/TranscodeService- Gunakan untuk menganalisis masalah di mana iklan tidak dimasukkan karena masalah transcoding, kegagalan pemrosesan kreatif, atau masalah terkait non-iklan lainnya.
contoh mengidentifikasi peluang iklan tanpa personalisasi manifes yang berhasil
Grup log: MediaTailor/AdDecisionServerInteractions
Kueri berikut mengidentifikasi peluang iklan yang tidak menghasilkan personalisasi manifes yang berhasil:
fields @timestamp, eventType, avail.availId, sessionId | filter eventType = "AD_MARKER_FOUND" | stats count() as total_opportunities by avail.availId | join ( fields @timestamp, eventType, avail.availId | filter eventType = "FILLED_AVAIL" | stats count() as successful_fills by avail.availId ) on avail.availId | where ispresent(total_opportunities) and not ispresent(successful_fills) | sort total_opportunities desc
contoh menganalisis tingkat penyelesaian aliran peristiwa
Grup log: MediaTailor/AdDecisionServerInteractions
Kueri berikut menganalisis tingkat penyelesaian di berbagai jenis acara:
fields @timestamp, eventType, avail.availId | filter eventType in ["AD_MARKER_FOUND", "MAKING_ADS_REQUEST", "VAST_RESPONSE", "FILLED_AVAIL", "BEACON_FIRED"] | stats count() by eventType, avail.availId | sort avail.availId, eventType
contoh temukan sesi dengan acara suar yang hilang
Grup log: MediaTailor/AdDecisionServerInteractions
Kueri berikut mengidentifikasi sesi yang telah mengisi avails tetapi tidak ada peristiwa suar yang sesuai:
fields @timestamp, eventType, sessionId, avail.availId | filter eventType = "FILLED_AVAIL" | stats count() as filled_avails by sessionId | join ( fields @timestamp, eventType, sessionId | filter eventType = "BEACON_FIRED" | stats count() as beacon_events by sessionId ) on sessionId | where filled_avails > 0 and (not ispresent(beacon_events) or beacon_events = 0) | sort filled_avails desc
contoh mengidentifikasi kegagalan penyisipan iklan terkait transcoding
Grup log: MediaTailor/TranscodeService
Kueri berikut mengidentifikasi masalah transcoding yang mencegah penyisipan iklan berhasil:
fields @timestamp, eventType, sessionId, requestId | filter eventType in ["TRANSCODE_IN_PROGRESS", "INTERNAL_ERROR", "MISSING_VARIANTS", "PROFILE_NOT_FOUND"] | stats count() as transcode_issues by eventType, sessionId | sort transcode_issues desc
Menganalisis masalah waktu acara
Analisis waktu peristiwa membantu mengidentifikasi kemacetan kinerja dan mengoptimalkan alur kerja penyisipan iklan. Pola waktu yang tidak biasa sering menunjukkan masalah mendasar yang memengaruhi pengalaman pemirsa.
Ambang waktu kinerja
Gunakan ambang waktu ini untuk mengidentifikasi potensi masalah kinerja.
-
Total durasi aliran lebih dari 5 detik: Dapat memengaruhi pengalaman penampil dan dapat menunjukkan masalah kinerja ADS, masalah server asal (seperti batas waktu pengambilan manifes), atau MediaTailor masalah internal termasuk masalah infrastruktur dengan NAT Gateway, DynamoDB, atau komponen sistem lainnya. EC2
-
Waktu respons ADS lebih dari 2 detik: Menyarankan masalah performa ADS atau masalah latensi jaringan.
-
Personalisasi manifes lebih dari 1 detik: Dapat menunjukkan penundaan pemrosesan kreatif, masalah server asal (seperti batas waktu pengambilan manifes), atau masalah MediaTailor sistem internal termasuk kendala infrastruktur dengan NAT Gateway, DynamoDB, atau komponen lainnya. EC2
Kueri analisis waktu
Gunakan kueri ini untuk menganalisis pola waktu acara.
contoh mengukur total durasi aliran peristiwa
Kueri berikut mengukur total durasi alur peristiwa dan mengidentifikasi yang melebihi 5 detik:
fields @timestamp, eventType, avail.availId | filter avail.availId = "your-avail-id" | filter eventType in ["AD_MARKER_FOUND", "FILLED_AVAIL"] | sort @timestamp asc | stats min(@timestamp) as start_time, max(@timestamp) as end_time by avail.availId | eval duration_seconds = (end_time - start_time) / 1000 | where duration_seconds > 5
contoh menganalisis waktu respons ADS
Kueri berikut menganalisis waktu respons ADS dan mengidentifikasi yang melebihi 2 detik:
fields @timestamp, eventType, avail.availId | filter avail.availId = "your-avail-id" | filter eventType in ["MAKING_ADS_REQUEST", "VAST_RESPONSE"] | sort @timestamp asc | stats min(@timestamp) as request_time, max(@timestamp) as response_time by avail.availId | eval ads_response_seconds = (response_time - request_time) / 1000 | where ads_response_seconds > 2
contoh mengidentifikasi personalisasi manifes lambat
Kueri berikut mengidentifikasi proses personalisasi manifes yang memakan waktu lebih dari 1 detik:
fields @timestamp, eventType, avail.availId | filter avail.availId = "your-avail-id" | filter eventType in ["VAST_RESPONSE", "FILLED_AVAIL"] | sort @timestamp asc | stats min(@timestamp) as response_time, max(@timestamp) as filled_time by avail.availId | eval personalization_seconds = (filled_time - response_time) / 1000 | where personalization_seconds > 1
Masalah dan solusi aliran peristiwa umum
Bagian ini memberikan solusi untuk masalah alur peristiwa yang sering ditemui, yang diatur berdasarkan jenis masalah dan gejala.
Kegagalan permintaan server keputusan iklan
Gejala: Alur peristiwa berhenti setelah deteksi peluang iklan. Tidak ada peristiwa permintaan ADS yang dicatat.
Penyebab dan solusi umum
-
Kesalahan konfigurasi URL ADS: Verifikasi URL ADS dalam konfigurasi pemutaran Anda sudah benar dan dapat diakses. Di log interaksi iklan, Anda akan melihat peristiwa permintaan ADS (
MAKING_ADS_REQUEST
) tetapi tidak ada respons VAST yang sesuai, sering disertai dengan peristiwa kesalahanERROR_UNKNOWN
atau serupa. -
Masalah konektivitas jaringan: Periksa konektivitas jaringan antara MediaTailor dan ADS Anda, termasuk aturan firewall dan resolusi DNS.
-
Masalah sertifikat SSL/TLS: Pastikan ADS Anda menggunakan sertifikat SSL yang valid dari otoritas sertifikat tepercaya. Untuk Google Ad Manager secara khusus, Anda mungkin perlu menghubungi AWS Support
untuk mengaktifkan flag konfigurasi yang menerima sertifikat SSL Google.
Permintaan diagnostik
Kueri berikut membantu mendiagnosis kegagalan permintaan ADS dengan melacak urutan peristiwa:
fields @timestamp, eventType, sessionId | filter sessionId = "your-session-id" | filter eventType in ["AD_MARKER_FOUND", "MAKING_ADS_REQUEST", "ERROR_ADS_IO", "ERROR_UNKNOWN_HOST"] | sort @timestamp asc
Kegagalan respons server keputusan iklan
Gejala: Permintaan ADS berhasil tetapi MediaTailor tidak menerima respons, atau terjadi kesalahan penguraian.
Penyebab dan solusi umum
-
Format VAST tidak valid: Validasi respons ADS VAST Anda terhadap standar spesifikasi VAST.
-
Masalah batas waktu ADS: Tingkatkan setelan batas waktu ADS atau optimalkan waktu respons ADS.
-
Inventaris iklan kosong: Periksa ketersediaan inventaris iklan dan kriteria penargetan dalam konfigurasi ADS Anda.
Permintaan diagnostik
Kueri berikut membantu mendiagnosis kegagalan respons ADS dengan memeriksa peristiwa permintaan dan respons:
fields @timestamp, eventType, sessionId | filter sessionId = "your-session-id" | filter eventType in ["MAKING_ADS_REQUEST", "VAST_RESPONSE", "EMPTY_VAST_RESPONSE", "ERROR_ADS_RESPONSE_PARSE", "ERROR_ADS_TIMEOUT"] | sort @timestamp asc
Manifestasikan kegagalan personalisasi
Gejala: Respons luas diterima tetapi personalisasi manifes gagal atau iklan dilewati.
Penyebab dan solusi umum:
-
Masalah transcoding kreatif: Periksa apakah iklan tersebut adalah
NEW_CREATIVE
, yang memerlukan transcoding sebelum penyisipan. Anda juga dapat memeriksa kesalahan transcoding dengan memeriksa MediaTailor/TranscodeService log untuk peristiwa kesalahan sepertiINTERNAL_ERROR
,MISSING_VARIANTS,
atau.PROFILE_NOT_FOUND
-
Masalah ketidakcocokan durasi: Verifikasi durasi iklan sesuai dengan durasi jeda iklan yang tersedia.
-
Masalah ambang personalisasi: Tinjau pengaturan ambang personalisasi dalam konfigurasi pemutaran Anda.
Permintaan diagnostik
Kueri berikut membantu mendiagnosis kegagalan personalisasi manifes dengan memeriksa respons VAST dan ketersediaan yang diisi:
fields @timestamp, eventType, sessionId, skippedAds | filter sessionId = "your-session-id" | filter eventType in ["VAST_RESPONSE", "FILLED_AVAIL", "WARNING_NO_ADVERTISEMENTS"] | sort @timestamp asc
Kueri untuk alasan iklan yang dilewati
Kueri berikut memberikan informasi terperinci tentang mengapa iklan dilewati:
fields @timestamp, eventType, sessionId, skippedAds.reason, skippedAds.creativeUniqueId | filter sessionId = "your-session-id" | filter eventType = "WARNING_NO_ADVERTISEMENTS" or ispresent(skippedAds) | sort @timestamp asc
Kueri untuk alasan iklan yang dilewati dan unik kreatif IDs
Kueri berikut memberikan informasi iklan terperinci yang dilewati termasuk alasan dan unik kreatif IDs untuk dua iklan pertama di masing-masing keuntungan:
fields @timestamp, eventType | filter sessionId = "your-session-id" | filter eventType = "FILLED_AVAIL" | fields avail.skippedAds.0.vastDuration as SkippedDur_Ad0, avail.skippedAds.0.skippedReason as Ad0_SkipReason, avail.skippedAds.0.creativeUniqueId as SkippedCreative0_UID | fields avail.skippedAds.1.vastDuration as SkippedDur_Ad1, avail.skippedAds.1.skippedReason as Ad1_SkipReason, avail.skippedAds.1.creativeUniqueId as SkippedCreative1_UID | sort @timestamp desc
Melacak kegagalan suar
Gejala: Personalisasi manifes yang berhasil tetapi suar pelacakan hilang atau gagal.
Penyebab dan solusi umum
-
Masalah implementasi sisi klien: Sebagian besar masalah suar pelacakan berasal dari masalah implementasi sisi klien, seperti tidak cukup URLs sering melacak polling untuk pelacakan sisi klien, atau masalah logika penembakan suar khusus pemain.
-
Melacak masalah aksesibilitas URL: Verifikasi bahwa pelacakan URLs dalam respons VAST dapat diakses dan mengembalikan respons yang sesuai. Masalah dapat terjadi ketika tidak dapat URLs dijangkau atau ketika MediaTailor menghadapi masalah internal yang mencegah pengiriman respons pelacakan berhasil.
-
Masalah permintaan segmen pemain: Kegagalan suar pelacakan yang jelas dapat terjadi ketika pemutar klien tidak benar-benar meminta segmen apa pun. Ini menghasilkan tidak ada suar yang dikirim, yang muncul sebagai kegagalan pelacakan tetapi sebenarnya merupakan masalah implementasi pemain daripada masalah suar.
Permintaan diagnostik
Kueri berikut membantu mendiagnosis kegagalan suar pelacakan dengan memeriksa ketersediaan yang terisi dan peristiwa suar:
fields @timestamp, eventType, sessionId | filter sessionId = "your-session-id" | filter eventType in ["FILLED_AVAIL", "BEACON_FIRED", "ERROR_FIRING_BEACON_FAILED"] | sort @timestamp asc
Praktik terbaik pemantauan aliran acara
Menerapkan praktik pemantauan ini untuk secara proaktif mengidentifikasi dan menyelesaikan masalah alur peristiwa:
Menyiapkan CloudWatch alarm
Buat CloudWatch alarm Amazon untuk memantau metrik alur peristiwa utama.
-
Alarm laju penyelesaian aliran: Peringatan saat rasio personalisasi manifes yang berhasil terhadap peluang iklan turun di bawah ambang batas yang dapat diterima.
-
Alarm waktu respons ADS: Pantau waktu respons ADS rata-rata dan waspada saat melebihi ambang batas kinerja.
-
Alarm tingkat kesalahan: Lacak frekuensi peristiwa kesalahan dan waspada pada lonjakan yang tidak biasa pada jenis kesalahan tertentu.
Permintaan pemantauan reguler
Jalankan kueri ini secara teratur untuk menjaga visibilitas ke dalam kesehatan alur acara:
contoh tingkat keberhasilan aliran acara harian
Kueri berikut memberikan ikhtisar harian tentang tingkat keberhasilan alur acara menurut jenis acara:
fields @timestamp, eventType | filter @timestamp > datefloor(@timestamp, 1d) | stats count() as total_events by eventType | sort total_events desc
contoh tren tingkat kesalahan per jam
Kueri berikut melacak tingkat kesalahan menurut jam untuk mengidentifikasi masalah yang sedang tren:
fields @timestamp, eventType | filter eventType like /ERROR_/ | stats count() as error_count by datefloor(@timestamp, 1h) as hour | sort hour desc
Panduan pengoptimalan kinerja
Gunakan analisis alur peristiwa untuk mengoptimalkan performa penyisipan iklan.
-
Optimalisasi ADS: Bekerja sama dengan penyedia ADS Anda untuk mengoptimalkan waktu respons dan mengurangi latensi.
-
Persiapan kreatif: Pra-transkode iklan iklan agar sesuai dengan profil konten Anda dan mengurangi penundaan pemrosesan.
-
Penyetelan konfigurasi: Sesuaikan pengaturan batas waktu, ambang personalisasi, dan parameter konfigurasi lainnya berdasarkan analisis alur peristiwa.
Sumber daya pemecahan masalah tambahan
Untuk panduan pemecahan masalah tambahan di luar analisis alur peristiwa:
-
Untuk informasi format log terperinci dan spesifikasi teknis, lihatMelihat log.
-
Untuk pemecahan masalah komprehensif masalah penyisipan iklan umum, lihat. Memecahkan masalah umum
-
Untuk panduan pengaturan pemantauan dan peringatan, lihatPemantauan AWS Elemental MediaTailor dengan CloudWatch metrik Amazon.
-
Untuk prosedur logging debug, lihatMenghasilkan log debug.