0. 日誌等級
- \include\linux\kern_levels.h
定義了8個level的優先級,其中0的優先級最高,7的優先級最低
#define KERN_EMERG KERN_SOH "0" /* system is unusable */
#define KERN_ALERT KERN_SOH "1" /* action must be taken immediately */
#define KERN_CRIT KERN_SOH "2" /* critical conditions */
#define KERN_ERR KERN_SOH "3" /* error conditions */
#define KERN_WARNING KERN_SOH "4" /* warning conditions */
#define KERN_NOTICE KERN_SOH "5" /* normal but significant condition */
#define KERN_INFO KERN_SOH "6" /* informational */
#define KERN_DEBUG KERN_SOH "7" /* debug-level messages */
1.查看日誌等級
- adb shell “cat proc/sys/kernel/printk”
C:\Windows\system32>adb shell " cat /proc/sys/kernel/printk "
8 4 1 7
第一個參數表示控制檯logLevel, 第二個參數表示printk默認的logLevel
2.修改日誌輸出等級
Log輸出等級修改爲8,導致Log量的增加,增加耗電
- adb shell “echo 日誌等級 > proc/sys/kernel/printk”
C:\Windows\system32>adb shell " echo 8 > /proc/sys/kernel/printk "
C:\Windows\system32>adb shell " cat /proc/sys/kernel/printk "
8 4 1 7
3. 測試
測試條件 | 日誌等級8 | 日誌等級4 | 差值 |
---|---|---|---|
1.暗屏5分鐘後 2.飛行模式 | 3.65mA | 3.48 mA | 0.17 mA |
1.暗屏5分鐘後 2.WiFi + 飛行模式 + 禁用 GMS | 5.95mA | 5.6 mA | 0.35 mA |
1.亮屏+桌面待機5分鐘 2.WiFi + 飛行模式 + 禁用 GMS | 301.2mA | 300.2 mA | 0.6 mA |
4. 日誌等級對功耗影響
影響度很少(小於1mA),不會導致異常功耗(出現相差10mA數量級的情況),建議按需開啓不同日誌等級,大膽開啓即可