てきとうなメモ

本の感想とか技術メモとか

rsyslogのimklogの$klogConsoleLogLevel

CentOS7でrsyslogも5系から7系にバージョンアップしていて結構変更されているっぽい
imklogはカーネルのログを取得してくるモジュールである。

rsyslog5系だと$klogConsoleLogLevelで取ってくるログレベルを指定できる。

# /etc/rsyslog.conf
...
$klogConsoleLogLevel 2
...

けど、rsyslog7のimklogのコードを読むとlinuxだと無効になっているっぽい。(コメントに書かれてあるだけでなくconsole_log_level自体利用されていないようだ。)

// plugins/imklog/imklog.c
...
/* config settings */
typedef struct configSettings_s {
        int bPermitNonKernel; /* permit logging of messages not having LOG_KERN facility */
        int bParseKernelStamp; /* if try to parse kernel timestamps for message time */
        int bKeepKernelStamp; /* keep the kernel timestamp in the message */
        int iFacilIntMsg; /* the facility to use for internal messages (set by driver) */
        uchar *pszPath;
        int console_log_level; /* still used for BSD */
} configSettings_t;
...

普通に出力するときに指定すれば良いので問題ないけど。

# /etc/rsyslog.conf
...
kern.crit                           /var/log/kern.log
...