linux dmesg时间戳转换成对应时间
linux dmesg时间戳转换成对应时间
1.1 获取dmesg的时间戳
[205979.184114] Memory cgroup out of memory: Kill process 7951 (mysqld) score 2016 or sacrifice child
[205979.184398] Killed process 7951 (mysqld) total-vm:5188956kB, anon-rss:1029532kB, file-rss:37424kB, shmem-rss:0kB
[205979.249230] oom_reaper: reaped process 7951 (mysqld), now anon-rss:0kB, file-rss:40kB, shmem-rss:0kB
[232549.899205] IPv6: ADDRCONF(NETDEV_UP): calib230ef3abb4: link is not ready
[232549.900328] IPv6: ADDRCONF(NETDEV_CHANGE): calib230ef3abb4: link becomes read
2.1 时间戳表示的含义dmesg
日志中的“时间”(232549.900328) 表示的是系统启动到事件发生的时间差,这个值可以转换成时间戳
//如果没有bc计算器的命令可以安装
yum -y install bc
unix_time=`echo "$(date +%s) - $(cat /proc/uptime | cut -f 1 -d' ') + 232549.900328 " | bc`
echo ${unix_time}
注:注:/proc/uptime 第一列表示的是系统开机时间,根据这个值和当前时间可以获取到 dmesg 日志中事件发生的时间
3.1 把时间戳转换为对应的可读的时间
date -d "@${unix_time}" '+%Y-%m-%d %H:%M:%S'
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!