printk

时间:2021-12-06 04:24:11

printk的日志级别定义如下(在linux/kernel.h中):

#define KERN_EMERG "<0>"/*紧急事件消息,系统崩溃之前提示,表示系统不可用*/
#define KERN_ALERT "<1>"/*报告消息,表示必须立即采取措施*/
#define KERN_CRIT "<2>"/*临界条件,通常涉及严重的硬件或软件操作失败*/
#define KERN_ERR "<3>"/*错误条件,驱动程序常用KERN_ERR来报告硬件的错误*/
#define KERN_WARNING "<4>"/*警告条件,对可能出现问题的情况进行警告*/
#define KERN_NOTICE "<5>"/*正常但又重要的条件,用于提醒。常用于与安全相关的消息*/
#define KERN_INFO "<6>"/*提示信息,如驱动程序启动时,打印硬件信息*/
#define KERN_DEBUG "<7>"/*调试级别的消息*/

使用举例:
printk(KERN_INFO "INFO\n");  //可以使用数字代替 KERN_INFO

printk(<6> "INFO\n");  //使用数字

printk("INFO\n");  //默认是4

注:

当 printk() 中的消息日志级别小于当前控制台日志级别时,printk 的信息(要有/n符)就会在控制台上显示。但无论当前控制台日志级别是何值,通过dmesg总能查看。

通过读写/proc/sys/kernel/printk文件可读取和修改控制台的日志级别。

aaarticlea/png;base64,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" alt="" />

分别对应控制台日志级别、默认的消息日志级别、最低的控制台日志级别和默认的控制台日志级别。

可用下面的命令设置当前日志级别:

# echo 8 > /proc/sys/kernel/printk