【问题标题】:Making my module's printk's print to my own logfile让我的模块 printk 打印到我自己的日志文件
【发布时间】:2023-04-01 16:41:01
【问题描述】:

我正在做一些 Linux 模块编程。我通常会打印一些错误消息和调试用的东西——然后我退出我的模块并使用“dmesg”来查看发生了什么。

这种调试方法已经不够用了。我想将我的“printk”文本通过管道传输到我自己的日志文件中——最好是本地的,但我知道这是否不可能,我需要将它放在 var/log/*.log 之类的地方。

我已经研究过编辑 syslog.conf - 但我不确定在那里做什么。我只想要我的模块的 printk 在它自己的文件中。有没有一种我的 Google-fu 无法捕捉到的简单方法?

【问题讨论】:

    标签: linux module linux-kernel printk


    【解决方案1】:

    您需要使用模块的唯一令牌开始每个 printk's

    printk("MyModule: ....", ....);
    
    1. 使用syslog-ng(例如)匹配规则来捕获所有模块的输出
    2. 使用`tail -f /var/log/messages | grep MyModule 查看实时内核的输出

    【讨论】:

    • 啊,我明白了 - 但是 printk 的第二个参数是什么?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-07-08
    • 1970-01-01
    • 1970-01-01
    • 2018-01-31
    • 2014-08-07
    • 2010-11-05
    • 1970-01-01
    相关资源
    最近更新 更多