Lihat di beberapa lokasi seperti ini:
/proc/last_kmsg
/data/tombstones/
/data/dontpanic/
/data/system/dropbox/
(Daftar ini bukan hanya log kernel, termasuk kerangka kerja dan log aplikasi juga, yang terkadang juga menarik)
TL;DR :
Jalankan perintah melalui adb yang menyalin logcat dan proc/kmsg ke file dan tetap menjalankannya bahkan saat adb terputus dengan nohup
, disown
atau setsid
. Mungkin perlu busybox, perlu root dan adb root juga.
setsid cat proc/kmsg > /sdcard/kmsg.txt &
dan
logcat -v long -f /sdcard/logcat.txt
(entah bagaimana hanya berfungsi tanpa setsid
)
Atau tambahkan perintah salin normal ke beberapa skrip startup.
/TL;DR
Anda dapat terus menyalin proc/kmsg
dan logcat
ke file di perangkat android Anda atau kartu microSD untuk mendapatkan log bahkan setelah adb terputus.
Anda memerlukan akses root dan akses root adb agar ini berfungsi. Untuk yang terakhir, gunakan pengaturan di opsi pengembang jika Anda memiliki rom khusus atau aplikasi adbd tidak aman.
Setelah menggunakan adb shell
untuk mendapatkan shell android anda, ketik su
untuk mendapatkan akses pengguna super.
Maka Anda tidak hanya perlu meletakkan ampersand (&
) setelah perintah tetapi pastikan juga bahwa perintah tetap berjalan setelah adb terputus. Itu dilakukan oleh nohup
, disown
atau setsid
(lihat di sini untuk penggunaan).
Jika tidak berhasil karena Anda tidak memiliki perintah ini, Anda perlu menginstal busybox.
Lihat pertanyaan saya di sini.
Lihat di sini untuk mengetahui cara mendapatkan logcat dan log kernel serta mencetaknya ke beberapa file atau menggabungkannya. Lihat developer.android.com/tools/help/logcat.html untuk parameter untuk perintah logcat.
Pada akhirnya Anda dapat memiliki perintah seperti setsid cat proc/kmsg > /sdcard/kmsg.txt &
untuk pesan kernel.
Untuk logcat, Anda dapat memiliki salah satu dari perintah berikut:logcat -v long -f /sdcard/logcat.txt
atau logcat -v long > /sdcard/logcat.txt
Saya tidak tahu kenapa, tapi terkadang tidak bekerja dengan setsid
dan tidak menyalin terus menerus tetapi berhenti segera setelah menjalankan perintah. Dalam situasi ini, itu juga muncul saat memasukkan jobs
, yang tidak sebaliknya. Maka itu hanya berfungsi tanpa setsid
, itu tetap hidup setelah memutuskan dan menghubungkan kembali. Saya kira Anda harus mencoba ketika file terus bertambah besar. Jika seseorang mengetahui mengapa ini berlaku seperti itu... beri tahu saya dan saya akan mengedit jawabannya.
Mungkin menambahkan perintah ke skrip startup juga bisa menjadi solusi bagi sebagian orang.
Semoga ini bisa membantu.
fightcookie
Satu solusi yang saya temukan untuk mengumpulkan log shutdown di Android adalah menjalankan adb pull /proc/kmsg C:\Logs.txt
pada PC host dan kemudian matikan perangkat. Anda akan mendapatkan log hingga komunikasi USB antara host dan perangkat terkunci! Saya tahu ini hanya satu kasus dari sekian banyak skenario penonaktifan, tetapi saya belum menemukan jawaban yang memuaskan untuk kasus lain!