android开发者选项中存在两个item是关于系统日志的。
1.日志记录器缓冲区大小
2.在设备上永久存储日志记录器数据
一个是用来设置缓冲区大小,一个是用来日志存储开关及过滤。
通过分析 system/core/logcat/logcatd.rc
mkdir /data/misc/logd 0770 logd log
日志的存储路径为 /data/misc/logd
这个路径存储的日志,每次重启机器之后将上一次的日志保存为logcat.id,如logcat.001,logcat.002
默认最多存储到logcat.256
而我们的需求是:重启设备1000次,根据日志分析重启是否正常,各个模块是否正常加载,所以需要存储1000份日志。
从system/core/logcat/logcat.rc中看到
# stop logcatd service and clear data
on property:logd.logpersistd.enable=true && property:logd.logpersistd=clear
setprop persist.logd.logpersistd ""
stop logcatd
# logd for clear of only our files in /data/misc/logd
exec - logd log -- /system/bin/logcat -c -f /data/misc/logd/logcat -n ${logd.logpersistd.size:-256}
setprop logd.logpersistd ""
系统中将 logd.logpersistd.size 配置为1024即可