Android 10 设置kernel log level
文章目录
- 查看平台默认kernel loglevel
- 关闭所有kernel log
- 修改kernel log默认值
- printk文件解读
有时候kernel log内容过多/过少影响我们分析问题,因此需要对kernel log进行设置。
查看平台默认kernel loglevel
$ cat /proc/sys/kernel/printk
6 6 1 7
kernle log级别为6 6 1 7
关闭所有kernel log
$ echo "0 6 1 7" >proc/sys/kernel/printk //往printk文件写入“0 6 1 7”,关闭所有kernle log
$ cat /proc/sys/kernel/printk //查看修改后的kernle log
0 6 1 7
注意
:只能临时关闭,重启后重置,默认值修改见下文
修改kernel log默认值
以Android 10.0 qcom平台为例,修改如下:
device/qcom/common/rootdir/etc/init.qcom.sh
case "$buildvariant" in"userdebug" | "eng")#set default loglevel to KERN_INFO
- echo "6 6 1 7" > /proc/sys/kernel/printk
+ echo "0 6 0 7" > /proc/sys/kernel/printk;;*)#set default loglevel to KERN_WARNINGecho "4 4 1 4" > /proc/sys/kernel/printk;;
esac
printk文件解读
该文件中4个数字,如“6 6 1 7”,根据日志记录消息的重要性/优先级(数值越小,优先级越高),定义将其发送到何处。
源码定义如下:
kernel/msm-4.14/kernel/printk/printk.c
int console_printk[4] = {CONSOLE_LOGLEVEL_DEFAULT, /* console_loglevel 控制台日志级别,优先级高于该值的消息将被打印至控制台*/MESSAGE_LOGLEVEL_DEFAULT, /* default_message_loglevel 默认的消息日志级别,将用该优先级来打印没有优先级的消息*/CONSOLE_LOGLEVEL_MIN, /* minimum_console_loglevel 最低的控制台日志级别,控制台日志级别可被设置的最小值(最高优先级)*/CONSOLE_LOGLEVEL_DEFAULT, /* default_console_loglevel 默认的控制台日志级别,控制台日志级别的缺省值*/
};
kernel/msm-4.14/include/linux/kernel_level.h
#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 */
Android 10 设置kernel log level相关推荐
- Android kernel log level查看和设置
如何通过adb shell快速查看kernel log的loglevel 在调试过程中,有时需要确认终端kernel log的loglevel,可以通过如下命令快速查看: adb shell cat ...
- Android 10 设置壁纸流程
---------------------------------------------------------------------------------------------------- ...
- android log抓取方法,Android系统之Android抓取各种log的方法
Android系统之Android抓取各种log的方法 2018年11月25日 | 萬仟网移动技术 | 我要评论 android之android抓取各种log的方法 1.logcat (四类log b ...
- Android系统(118)---Android抓取各种log的方法
Android抓取各种log的方法 转自 http://blog.csdn.net/matthewei6/article/details/50596983 1.logcat (四类log buffer ...
- Android 系统(38)---Android抓取各种log的方法
Android抓取各种log的方法 http://blog.csdn.net/matthewei6/article/details/50596983 1.logcat (四类log buffer是ma ...
- android 打印kernel log,android8.0 kernel4.9.44 各层log打开
一.问题 平台android8.0 kernel4.9.44,想加个i2c驱动,打开log都是一件脑瓜疼的事. 二.log总结 android有三种log. 1.kernel下面的,就是driver层 ...
- Android 10 Firewall blacklist 设置范例
Android 10 Firewall blacklist 设置范例 Background Android 10中系统NMS中带有防火墙接口. 在这里举一个设置黑名单的例子 public void s ...
- 【高通SDM660平台 Android 10.0】(10) --- Camera Sensor lib 与 Kernel Camera Probe 代码分析
[高通SDM660平台 Android 10.0]Camera Sensor lib 与 Kernel Camera Probe 代码分析 一.libmmcamera_imx258.so 代码分析 1 ...
- 解决OPPO Reno Ace(Android 10)、华为P20、P30进入自启权限设置页面问题,通过AccessibilityService获取栈顶Activity和相应的包名以及类名
我的问题 在借鉴了网上各路大佬的成果后,发现在Android 10以上大家对自启权限和白名单权限的资料甚少.以至于不能直接通过Copy来解决问题,在华为P20.P30和OPPO Reno ...
最新文章
- 127.0.0.1和0.0.0.0地址的区别
- YOLO v4它来了:接棒者出现,速度效果双提升
- HI3519V101调试记录
- 七日Python之路--第八天
- /proc/sys/net/ipv4详解(2)
- NSArray创建和使用
- [推荐]大量 Blazor 学习资源(一)
- multi task训练torch_采用single task模型蒸馏到Multi-Task Networks
- SpringBoot-JPA删除不成功,只执行了查询语句
- 自制XML解析器源码分析
- Android你可能要用到的自定义View分享
- flex 3 学习小结2
- 一级 计算机应用基础,一级计算机应用基础(教材浓缩精华版)
- python视频培训班
- html的header背景图片,关于在HTML插入背景图片的问题
- BCH/BCHABC/BCHSV分叉后重放机制小结
- 关于 网页 链接 分享朋友圈 更换title 文字方法
- PHP执行shell_exec方法失败
- 问题解决:Failed to download metadata for repo ‘appstream‘: Cannot prepare internal mirrorlist:...
- 高等工程数学 —— 第一章 (1)距离与范数
热门文章
- 计算机专业硕士毕业论文,计算机专业硕士毕业论文致谢范文
- 电子元器件简介——芯片封装篇
- 凡亿教育发布电子工程师利器:IC封装网 V.1.0
- 【思维进阶】如果回到十年前你会做哪些事情?
- 川普撞脸希拉里(基于 OpenCV 的面部特征交换)-1
- SpringCloud系列之Eureka服务注册及发现
- 多商户商城系统功能拆解24讲-平台端分销会员
- MS-RTOS --- 技术特点及其检测标准
- 中国大学MOOC课程《程序设计入门——C语言》 期末考试编程题
- 周一不睡觉,也要把pandas groupy 肝完,你该这么学,No.8