Android carservice 日志策略
背景:
目前在行车过程中,会有大量信号交互,交互过程 carservice都会有日志记录,导致android logcat日志不能存储很长时间。会对分析问题有影响。海涛老师希望精简日志,提高日志存储时长(目前只能存储3小时),鉴于carservice目前基本不出现问题。所以,希望关闭log。来减少log量。
综上所述:我们制定了如下方案:
http://gerrit.auto.mioffice.cn/c/cockpit/core/platform/android/services/MiVehicleService/+/43294
- 默认关闭carservice info级别日志。
- 如果出现问题我们可以通过如下命令打开日志,复现问题,收集日志。
❗ 打开 log
# 打开 log adb shell settings put global vehicle_debug_enable 1 # 关闭 log adb shell settings put global vehicle_debug_enable 0
潜在问题需要测试和app确认:
❗ qnx日志查看方式
如果出现偶现问题可能现场不会有信号交互相关日志,但是可以通过qnx carservice日志来分析。 qnx日志查看方式 bugreport-watt-SQ3A.220705.003.A1-2023-09-12-19-20-32/FS/qnx/dump/high_rate 路径下就是qnx日志。
carservice进程重启问题
背景:
Carservice 进程可能会存在极低可能的重启问题,由于现在很多app没有处理carservice重启,导致的连接断开问题,导致logcat中大量打印carservice crash(其实只重启了一次,但是app不再重联,每次尝试操作都会打印报错。)
我们认为任何app不能假设carservice永远是好的。万一carservice重启了,app是能够感知到的,需要能够处理这种异常,进行重新连接。具体怎么重新连接。如下:
http://gerrit.auto.mioffice.cn/admin/repos/cockpit/core/platform/android/apps/CarDemo