linux 中的log

linux 中的log

由于内核的特殊性,我们不能使用常规的方法查看内核的信息。下面介绍几种方法。

1 printk()打印内核消息。

2 管理内核内存的daemon(守护进程)
Linux系统当中最流行的日志记录器是Sysklogd,Sysklogd 日志记录器由两个守护进程(klogd syslogd)和一个配置文件(syslog.conf)组成。klogd 不使用配置文件,它负责截获内核消息,它既可以独立使用也可以作为 syslogd 的客户端运行。syslogd 默认使用 /etc/syslog.conf 作为配置文件,它负责截获应用程序消息,还可以截获 klogd 向其转发的内核消息。支持 internet/unix domain sockets 的特性使得这两个工具可以用于记录本地和远程的日志。

3 dmesg命令
dmesg用来显示开机信息,kernel会将开机信息存储在ring buffer中。您若是开机时来不及查看信息,可利用dmesg来查看。开机信息亦保存在/var/log目录中,名称为dmesg的文件里。

  more   /var/log/dmesg

4 /proc/kmsg
这个文件用于检索用printk生成的内核消息。任何时刻只能有一个具有超级用户权限的进程可以读取这个文件。也可以用系统调用syslog检索这些消息。通常使用工具dmesg或守护进程klogd检索这些消息。
/proc/kmsg 的log 是单纯的内核log
开机时,一部分的log会通过串口到串口log,通过printk等级来决定
其他全部到/proc/kmsg ,这是一个缓存ring buffer

5.syslogd 这个是当systemd进程起来后,应用层的log 都会写入一个内存缓存中,

像logread 和logcat 都是从这个内存缓存中读出log,这个是可以通过LOGI,LOGD来配置log等级的

一般这个缓存中的log会被写入文件中,以防丢失,但目前移远没有这么做,因为这个缓存有10m,够用了

在这里插入图片描述
关于syslogd klogd的描述
可以参考:
https://blog.csdn.net/weixin_30362233/article/details/98494787

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

white_line

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值