Android在哪里存储关闭日志?

Android在哪里存储关闭日志?,android,linux,logging,linux-kernel,Android,Linux,Logging,Linux Kernel,我知道可以通过ADB拉出kmsg或dmesg的内容来获取启动日志 但我不知道如何在Android中检索关机日志,因为Android中没有/var文件夹(大多数桌面linux发行版通常存储关机日志的地方) 那么如何在Android中获取关机日志呢?查看以下位置: /proc/last_kmsg /data/tombstones/ /data/dontpanic/ /data/system/dropbox/ (这个列表不是严格意义上的内核日志,包括框架和应用程序日志,它们有时也很有趣)我发现在An

我知道可以通过
ADB
拉出
kmsg
dmesg
的内容来获取启动日志
但我不知道如何在Android中检索关机日志,因为Android中没有
/var
文件夹(大多数桌面linux发行版通常存储关机日志的地方)


那么如何在Android中获取关机日志呢?

查看以下位置:

/proc/last_kmsg
/data/tombstones/
/data/dontpanic/
/data/system/dropbox/

(这个列表不是严格意义上的内核日志,包括框架和应用程序日志,它们有时也很有趣)

我发现在Android中收集关机日志的一个解决方法是在主机PC上运行
adb pull/proc/kmsg C:\logs.txt
,然后关闭设备。您将获得日志,直到主机和设备之间的USB通信中断!我知道这只是众多关机场景中的一个,但对于其他情况,我还没有找到令人满意的答案

TL;DR
通过adb运行命令,将logcat和proc/kmsg复制到一个文件中,即使adb与
nohup
disown
setId
断开连接,也能使其保持运行。可能需要busybox,也需要root和adb root。
setsid cat proc/kmsg>/sdcard/kmsg.txt&


logcat-v long-f/sdcard/logcat.txt
(不知何故,只有在没有
setsid的情况下才能工作)

或者将普通的复制命令添加到某些文件中。
/TL;DR

您可以不断地将
proc/kmsg
logcat
复制到android设备或microSD卡上的文件中,以获取日志,即使在adb断开连接后也是如此

您需要根访问权限和adb根访问权限才能使其工作。对于后者,如果您有自定义rom或adbd,请使用开发人员选项中的设置

使用
adb shell
获取android shell后,键入
su
获取超级用户访问权限

然后,您不仅需要在命令后面加一个符号(
&
),还需要确保命令在adb断开连接后保持运行。这是通过
nohup
disown
setsid
完成的(有关用法,请参阅)。
如果由于没有这些命令而无法工作,则需要安装。
见我的问题

有关如何获取logcat和内核日志并将其打印到某个文件或将其合并的信息,请参阅。 有关logcat命令的参数,请参见developer.android.com/tools/help/logcat.html

最后,您可以为内核消息使用类似于
setsidcatproc/kmsg>/sdcard/kmsg.txt&
的命令

对于logcat,您可以使用以下命令之一:
logcat-v long-f/sdcard/logcat.txt
logcat-v long>/sdcard/logcat.txt

我不知道为什么,但有时它不适用于
setsid
,只是没有连续复制,但在执行命令后不久就停止了。在这些情况下,当输入
作业时,它也会显示,否则它不会显示。然后,它在没有设置ID的情况下工作,在断开和重新连接后仍保持活动状态。我想你必须在文件越来越大的时候试试。如果有人知道为什么会这样。。。让我知道,我会编辑答案

希望这有帮助


fightcookie

较新的手机不使用这些位置中的任何一个,因此,如果您正在阅读本文,那么从现在开始


内核崩溃日志现在位于/sys/fs/pstore而不是/proc/last_kmsg

感谢您的回复!我检查了手机上的位置。我找不到/proc/last_kmsg和/data/tombstones/。并且/data/dontpanic上的“ls”没有返回任何内容!!我在/data/system/dropbox/中有一些运气,因为它们包含类似于system的文件_BOOT@915149630014.txt系统应用程序_strictmode@915149633098.txt.gz他们有一些应用程序级别的信息。他们都没有我们从kmsg获得的信息:(您没有像SYSTEM_LAST这样的文件_KMSG@xxx.txt.gz在/data/system/dropbox中?这可能不是一个标准功能…不幸的是。不,克里斯!没有这样的最后一类文件!!无论如何,非常感谢你的帮助!如果你发现任何其他线索,一定要回复,我仍然落后于android中的关机日志!!不幸的是你没有我不知道你那该死的手机什么时候会像我的手机一样自动关机。它认为35%的电池电量太低,所以即使重新启动它也会自动关机。有时候,直到它达到10%才会关机。该死的安卓