gpt4 book ai didi

android - 如何同步内核时间和logcat时间?

转载 作者:IT王子 更新时间:2023-10-29 00:40:20 25 4
gpt4 key购买 nike

我正在开发基于 Linux 内核的 Android 手机。我使用 kmsg 获取内核日志,使用 adb logcat -v time 获取平台日志。问题是内核日志显示从 0.000000 开始的时间,而 logcat 从系统时间开始显示(例如,如果手机上的时间是 10.43.00,它将显示从这个时间开始的第一条日志)

现在我无法比较这两个日志中的事件,因为时间基准(引用)不同。谁能指出如何同步这 2 次?

最佳答案

另一种解决方案类似于 jpg 的答案,但在另一个方向上,重定向内核消息到 logcat。这样更好,因为太多的 logcat 消息可能会使串行控制台过载(如果它处于 Activity 状态)。

您可以在 android shell 中运行它:

cat /proc/kmsg | while read LINE; do echo '\06kernel\0'$LINE'\0' > /dev/log/main; done

或者在主机 shell 中:

adb shell '(cat /proc/kmsg | while read LINE; do echo \\06kernel\\0$LINE\\0 > /dev/log/main; done)'

第一次启动该命令时,您会在一个地方看到所有当前的 dmesg 消息,但任何其他消息出现时都会交错显示。

然后在不同的 shell 中检查 logcat。如果您使用 -v 时间检查 logcat,则内核消息将同时包含 logcat 和内核时间戳。当然两者之间可能会有延迟。

查看交错消息的另一种更简单的方法是:

adb shell '(logcat & cat /proc/kmsg) > /path/to/log/file'

但在这种情况下,识别来自内核的消息有点困难,而且您无法分辨内核时间戳与 logcat 时间戳的关系。

关于android - 如何同步内核时间和logcat时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6329648/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com