Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memec MediaTailor ahkan masalah alur peristiwa
Memahami AWS Elemental MediaTailor alur acara 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 alur peristiwa dasar, lihatAlur acara penyisipan iklan.
Mengidentifikasi aliran 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 lokasi putusnya aliran membantu menentukan akar penyebab kegagalan penyisipan iklan.
Pola aliran umum yang tidak lengkap
Titik kegagalan yang berbeda dalam alur 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 URL ADS tidak valid yang hanya ditemukan saat permintaan dibuat.
-
Suar pelacakan 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 dibutuhkan.
Pemilihan grup log:
-
MediaTailor/AdDecisionServerInteractions- Gunakan untuk kueri yang menganalisis interaksi server keputusan iklan, peluang iklan, dan ADS-related kegagalan.
-
MediaTailor/TranscodeService- Gunakan untuk menganalisis masalah di mana iklan tidak disisipkan 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 acara
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 peristiwa suar yang hilang
Grup log: MediaTailor/AdDecisionServerInteractions
Kueri berikut mengidentifikasi sesi yang telah mengisi ketersediaan 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 acara membantu mengidentifikasi hambatan 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.
-
Durasi aliran total lebih dari 5 detik: Dapat memengaruhi pengalaman pemirsa 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, EC2, atau komponen sistem lainnya.
-
Waktu respons ADS lebih dari 2 detik: Menyar ankan masalah kinerja 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, EC2, atau komponen lainnya.
Kueri analisis waktu
Gunakan kueri ini untuk menganalisis pola waktu peristiwa.
contoh mengukur durasi aliran peristiwa total
Kueri berikut mengukur durasi total alur peristiwa dan mengidentifikasi durasi 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 waktu 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, diatur berdasarkan jenis masalah dan gejala.
Kegagalan permintaan server keputusan iklan
Gejala: Alur acara berhenti setelah deteksi peluang iklan. Tidak ada peristiwa permintaan ADS yang dicatat.
Penyebab dan solusi umum
-
Kesalahan konfigurasi URL ADS: Pastikan URL ADS dalam konfigurasi pemutaran Anda 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_UNKNOWNatau peristiwa serupa. -
Masalah konektivitas jaringan: Periksa konektivitas jaringan antara MediaTailor dan ADS Anda, termasuk aturan firewall dan resolusi DNS.
-
SSL/TLS masalah sertifikat: Pastikan ADS Anda menggunakan sertifikat SSL yang valid dari otoritas sertifikat tepercaya. Khususnya untuk Google Ad Manager, Anda mungkin perlu menghubungi Dukungan AWS
untuk mengaktifkan tanda konfigurasi yang menerima sertifikat SSL Google.
Kueri 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: Ting katkan setelan batas waktu ADS atau optimalkan waktu respons ADS.
-
Inventaris iklan kosong: Per iksa ketersediaan inventaris iklan dan kriteria penargetan dalam konfigurasi ADS Anda.
Kueri 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
Kegagalan personalisasi nyata
Gejala: Tanggapan V AST diterima tetapi personalisasi manifes gagal atau iklan dilewati.
Penyebab dan solusi umum:
-
Masalah transcoding kreatif: Per iksa apakah iklan tersebut adalah iklan
NEW_CREATIVE, yang memerlukan transcoding sebelum penyisipan. Anda juga dapat memeriksa kesalahan transcoding dengan memeriksa MediaTailor/TranscodeService log untuk kejadian kesalahan sepertiINTERNAL_ERROR,MISSING_VARIANTS,atauPROFILE_NOT_FOUND. -
Masalah ketidakcocokan durasi: Pastikan durasi iklan sesuai dengan durasi jeda iklan yang tersedia.
-
Masalah ambang batas personalisasi: Tinjau setelan ambang personalisasi dalam konfigurasi pemutaran Anda.
Kueri 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 alasan 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 ID unik kreatif
Kueri berikut memberikan informasi detail iklan yang dilewati termasuk alasan dan ID unik kreatif untuk dua iklan pertama di masing-masing iklan tersedia:
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 berhasil tetapi beacon pelacakan hilang atau gagal.
Penyebab dan solusi umum
-
Client-side masalah implementasi: Sebagian besar masalah suar pelacakan berasal dari masalah implementasi sisi klien, seperti tidak cukup sering melakukan polling URL pelacakan untuk pelacakan sisi klien, atau masalah logika pemicu suar khusus pemain.
-
Masalah aksesibilitas URL pelacakan: Pastikan URL pelacakan dalam respons VAST dapat diakses dan mengembalikan tanggapan yang sesuai. Masalah dapat terjadi ketika URL tidak dapat dijangkau atau ketika menemukan masalah MediaTailor internal yang mencegah pengiriman respons pelacakan berhasil.
-
Masalah permintaan segmen pemain: Kegagalan suar pelacakan yang jelas dapat terjadi ketika pemain klien tidak benar-benar meminta segmen apa pun. Ini menghasilkan tidak ada beacon yang dikirim, yang muncul sebagai kegagalan pelacakan tetapi sebenarnya merupakan masalah implementasi pemain daripada masalah suar.
Kueri diagnostik
Kueri berikut membantu mendiagnosis kegagalan suar pelacakan dengan memeriksa ketersediaan yang diisi 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
Terapkan 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 tingkat penyelesaian aliran: Peringatan ketika 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 beri peringatan saat melebihi ambang kinerja.
-
Alarm tingkat kesalahan: L acak frekuensi kejadian kesalahan dan waspada pada lonjakan yang tidak biasa pada jenis kesalahan tertentu.
Kueri pemantauan reguler
Jalankan kueri ini secara teratur untuk menjaga visibilitas ke dalam kondisi alur peristiwa:
contoh tingkat keberhasilan alur acara harian
Kueri berikut memberikan ikhtisar harian tingkat keberhasilan alur acara berdasarkan 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 per 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 kinerja penyisipan iklan.
-
Pengoptimalan ADS: Bek erja sama dengan penyedia ADS Anda untuk mengoptimalkan waktu respons dan mengurangi latensi.
-
Persiapan kreatif: kreasi Pre-transcode iklan agar sesuai dengan profil konten Anda dan mengurangi penundaan pemrosesan.
-
Penyetelan konfigurasi: S esuaikan pengaturan batas waktu, ambang batas personalisasi, dan parameter konfigurasi lainnya berdasarkan analisis aliran 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 penyisipan iklan umum yang komprehensif, lihatMemecahkan masalah umum.
-
Untuk panduan pengaturan pemantauan dan peringatan, lihatMemantau AWS Elemental MediaTailor dengan CloudWatch metrik Amazon.
-
Untuk prosedur pencatatan debug, lihatMenghasilkan log debug.