yuu_nkjm blog


2010-04-08(Thu) 編集

[Linux][syslog] syslog-ngでプログラム名を使って記録するログのフィルタリング

「bindのログをmessagesに吐かせたくないなー」と思ったので,syslog-ngでプログラム毎にログファイルを分ける方法を調べた.programって関数が使えるんですね.matchを使っても出来そうですが.

bind(named)のログをnamedに.

filter f_named          { program("named"); };
destination d_named { file("/var/log/named");};
log  { source(src); filter(f_named); destination(d_named); };

messagesにnamedのログを記録させない.

filter f_messages   { not facility(news, mail, cron) and not filter(f_iptables)
and not filter(f_router) and not filter(f_named); };

以下メモ.

名前 説明
facility 指定したfacilityに合致するログメッセージが対象となる.facility(faciliy[,facility])の形式で指定する.
level 指定したpriorityに合致するログメッセージが対象となる.priority()level(pri[,pri1..pri2[,pri3]])の形式で指定する.
program 指定したプログラム名(正規表現による指定可)に合致するログメッセージが対象となる.program(プログラム名)の形式で指定する.
host 指定したホスト名(正規表現可)に合致するログメッセージが対象となる.host(ホスト名)の形式で指定する.
match 指定した正規表現そのものに合致するログメッセージが対象となる.
filter 別のfilterルールを呼び出す.

トップ «前の日(04-07) 最新 次の日(04-09)» 追記 設定
2006|01|06|12|
2007|06|09|
2008|01|03|04|06|07|08|09|10|12|
2009|01|02|05|06|07|08|10|11|12|
2010|03|04|05|06|07|08|09|10|11|
2011|01|02|03|04|05|06|07|08|09|11|12|
2012|01|02|04|06|07|08|10|11|12|
2013|01|02|03|07|08|10|11|12|
2014|01|02|04|05|06|07|08|09|10|11|
2015|01|02|07|11|12|
2016|01|03|05|07|08|09|