第234篇 系统日志体系:logd 与 dropbox
先把结论放在前面:应用能看到的日志,只是 Android 日志体系的一小段。系统侧的日志由logd统一写入环形缓冲区,按main、system、radio、events、crash分区存储,每个分区有大小上限,超出后从头覆盖——这决定了日志的第一属性是"最近发生了什么",而不是"完整发生了什么"。dropbox则是另一个方向的机制:它按条目类型保存关键事件的快照,供系统与授权应用事后读取。面试里这题属于"系统层视角"的加分题。答得浅的是"Log.d打日志、logcat看日志";答得深的是能讲清 logd 的缓冲区与分区策略、logd -b与-c的用法、/data/system/dropbox的条目类型与读取限制、logcat的-v threadtime与-b crash的排查价值,以及 SELinux 权限对日志可见性的影响。logd 的分区与环形缓冲logd(log daemon)是系统日志的唯一写入通道,架构上是logd进程加logdreader 客户端(liblog里的