Adakah yang tahu jika ada cara praktis untuk menentukan penyebab "Aw Snap!" pesan yang sesekali muncul di Google Chrome? Apakah Chrome memiliki log kesalahan yang bisa saya lihat? Saya menduga masalah ini disebabkan oleh loop rekursif dalam kode yang kemudian menelan semua memori? Apakah ada cara saya dapat mengkonfirmasi ini?
31
Jawaban:
Ada, lihat penjelasan di sini: untuk login biasa di Chrome, Anda dapat mencoba:
Gunakan fitur logging Chrome :
Untuk mengaktifkan pencatatan, luncurkan Chrome dengan panji-panji baris perintah ini:
--enable-logging --v=1
Output akan disimpan ke file
chrome_debug.log
di direktori data pengguna Chrome .Lokasi file log dapat ditimpa oleh
CHROME_LOG_FILE
variabel lingkungan.Untuk daftar lengkap bendera, periksa: Google Chrome beralih baris perintah .
Atau gunakan konsol javascript :
Tekan Ctrl+ Shift+ J(Windows / Linux) atau Cmd+ Option+ J(Mac).
sumber
Akun Twitter resmi Pengembang Chrome yang ditautkan ke situs web yang membantu Anda men-debug halaman "Aw snap": http://www.chromium.org/for-testers/enable-logging
Rekomendasi ini untuk meluncurkan Chrome dengan bendera ini:
--enable-logging --v=1
Jika Anda melakukannya, maka Anda dapat mengambil log kerusakan dari file
chrome_debug.log
di direktori data pengguna Chrome (di direktori indukDefault/
) atau di folder binary build (out\Debug
) jika Anda menggunakan debug build.sumber
--enable-logging --v=1
jauh sebelum edit untuk jawaban yang diterima menambahkannya.The Yah! Halaman ini biasanya terkait dengan proses kesalahan segmentasi yang dapat dikaitkan dengan bug perangkat lunak . Untuk menentukan penyebabnya, Anda dapat mengaktifkan pencatatan (seperti yang disarankan dalam jawaban lain) atau menganalisis backtrace dari file dump inti (di macOS , Linux , misalnya Ubuntu ).
Jika Anda tidak tahu penyebabnya (mis. Pelacakan jejak hanya terdiri dari alamat memori), Anda dapat membuat tiket dukungan baru di sistem pelacakan bug Chrome (atau periksa apakah sudah ada). Saat melaporkan, Anda harus mengunggah dan memasukkan Crash ID dengan membuka
chrome://crashes/
halaman, sehingga alamat memori dapat diterjemahkan ke dalam simbol debug oleh pengelola Chrome.Atau Anda dapat men - decode dump crash sendiri.
Lihat juga: Di mana Google Chrome Crash Dump berada?
Untuk menyederhanakan di atas, berikut adalah alasan utama mengapa halaman dapat macet:
Anda telah menemukan bug (baik di situs web atau dengan browser web sendiri).
Bug situs web
Contoh: JavaScript VM mencapai memori yang dialokasikan maksimum (kehabisan kehabisan memori).
Untuk memeriksanya, jalankan DevTools dan periksa tab Memory . Jika itu masalahnya, kode harus berhenti secara otomatis sesaat sebelum potensi kehabisan kehabisan memori (misalnya, Masalah 810015 ). Jika demikian, laporkan masalahnya kepada pemilik situs web, atau profil kode JS untuk menemukan bug.
Bug peramban
Anda telah mencapai file terbuka maksimum di sistem Anda (lihat: # 787381 ).
Di Linux / Unix / macOS, untuk memverifikasi itu, jalankan:
dan periksa apakah telah
kern.num_files
mencapai bataskern.maxfiles
.Jika itu masalahnya, tambahkan batas dengan menjalankan perintah berikut:
Anda dapat memiliki beberapa malware / virus yang mengubah file Chrome Anda yang menyebabkan crash.
memtest
).macOS
Untuk menampilkan log dari Chrome, jalankan:
atau dengan menjalankan aplikasi Konsol , di mana Anda juga dapat memeriksa semua dump crash (atau check-in
~/Library/Logs/DiagnosticReports
). Lihat: Kesalahan debug "Aw, Snap!" Di ChromeDebugging
Jika tidak ada di atas yang membantu, Anda dapat mempertimbangkan mengkompilasi Chrome dari sumbernya (membutuhkan waktu lama), kemudian jalankan langsung dari Terminal. Setelah itu, setiap kesalahan "Aw, Snap!" Harus diikuti oleh jejak stack penuh termasuk fungsi dan baris dalam file kode sumber di mana itu terjadi.
sumber