Pages

2011/04/05

ubuntu10.10(Merverick)のsyslog2ng

ubuntu10.10をrsyslogからsyslog-ngに入れ替えようと思いました。

デフォルトで入っているのはrsyslog、aptでsyslog-ngを入れると勝手にremoveされます。


さて、syslogからsyslog-ngに変更する際はsyslog2ngというスクリプトが使えますが、ubuntuのrsyslogからではどうかな。

 


rsyslog.confにはsysylog.confっぽい内容はないので、rsyslog.dの中身を使うのが良さそう。
 

バックアップを取って。
mv /etc/syslog-ng/syslog-ng.conf{,_def}


syslog-ngのsourceをunpackしたらsyslog2ngが入っているので使ってみる。
apt-get source syslog-ng
./syslog-ng-3.1.2/contrib/syslog2ng /etc/rsyslog.d/* > /etc/syslog-ng/syslog-ng.conf

 

-s で書式他チェック。

# syslog-ng -s
Configuration file has no version number, assuming syslog-ng 2.1 format. Please add @version: maj.min to the beginning of the file;
WARNING: global: the default value of chain_hostnames is changing to 'no' in version 3.0, please update your configuration accordingly;
WARNING: input: sources do not remove new-line characters from messages by default in version 3.0, please add 'no-multi-line' flag to your configuration if you want to retain this functionality;
WARNING: template: the default value for template-escape is changing to 'no' in version 3.0, please update your configuration file accordingly;
Unknown priority level; priority='=notice'


ごめん全然アカンわ orz
 

一応設定単位では使えるものもある、リモートへのログとかもこのように変換自体はされている。


source local {
unix-stream("/dev/log");
udp(ip(0.0.0.0) port(514));
internal();
};

# *.* @@xxx.xxx.xxx.xxx:514

filter f_1 {
level(debug..emerg);
};

destination d_1 {
udp("@xxx.xxx.xxx.xxx:514" port(514));
};

log { source(local); filter(f_1); destination(d_1); };


udpの行が明らかにおかしい(もとはTCPの設定)が、その辺は適当に切り貼りしよう。。。

0 件のコメント:

コメントを投稿