Logcat的大小限制是多少以及如何更改其容量?

ron*_*ron 30 android

我相信Logcat是一个圆形商店,我想知道它被覆盖之前的限制是什么.

据推测,这意味着它的时间范围会根据用途而有所不同.

有没有办法扩大其容量?

Fea*_*eep 45

要查看大小,请使用-g

$ adb logcat -g
ring buffer is 64Kb (63Kb consumed), max entry is 4096b, max payload is 4076b
Run Code Online (Sandbox Code Playgroud)

  • @BrettG,我测试了长度为5000的字符串的日志输出,输出的日志消息长度为'4076`,所以根据我的测试结果,我可以说 - "max payload"数字是**最大日志消息长度**."4076"索引后的所有字符都将被忽略. (3认同)
  • 什么是最大入口和最大有效载荷? (2认同)

Shu*_*ary 37

从Android 5.0开始,Developer Options显示/允许增加环形缓冲区的大小.

开发者选项ScreenShot


Wad*_*ker 7

如前所述,您可以使用logcat -g查看循环缓冲区的大小.在我的Galaxy Nexus上,它是256 KB:

shell@android:/ $ logcat -g
/dev/log/main: ring buffer is 256Kb (255Kb consumed), max entry is 4096b, max payload is 4076b
/dev/log/system: ring buffer is 256Kb (0Kb consumed), max entry is 4096b, max payload is 4076b
Run Code Online (Sandbox Code Playgroud)

如果您需要保存比此更长的连续日志,则只需打开一个新的adb shell并键入即可

logcat -f myfile.log
Run Code Online (Sandbox Code Playgroud)

此命令会持续将日志条目重定向到文件myfile.log,直到您按ctrl-c停止它才会返回.现在回到原来的adb shell并输入你想要记录的命令,它的所有输出(在我的情况下超过256 KB)将保存到myfile.log.


Lar*_*rsH 5

以下是在某些版本的 Android 上更改日志环形缓冲区容量的方法:

adb logcat -G <size>:设置日志环形缓冲区的大小。可以在末尾添加 K 或 M 来表示千字节或兆字节。

(来源:logcat 文档

但是,它没有说明此选项在哪个版本的 Android 上可用。我看到在我的 Android 4.2.2 设备上它不是一个可识别的选项。