syslog-ng 部署记录

1、安装完毕后使用:/opt/syslog-ng/sbin/syslog-ng -e -F -d -v来检查系统是否正常

 [root@station33 etc]# /opt/syslog-ng/sbin/syslog-ng -e -F -d -v
Error binding socket; addr='AF_INET(0.0.0.0:6514)', error='Address already in use (98)'
Error initializing source driver; source='s_net', id='s_net#0'
Error initializing message pipeline;

报上面错是要先报syslog-ng 给停了,再做测试

  Syslog connection accepted; fd='10', client='AF_INET(192.168.2.105:35527)', local='AF_INET(0.0.0.0:6514)'
SSL error while reading stream; tls_error='SSL routines:SSL3_READ_BYTES:sslv3 alert certificate unknown'
I/O error occurred while reading; fd='10', error='Connection reset by peer (104)'
Syslog connection closed; fd='10', client='AF_INET(192.168.2.105:35527)', local='AF_INET(0.0.0.0:6514)'
Closing log transport fd; fd='10'

报上面错有两种情况:1、证书有问题,请注意证书common name ,2、syslog服务器与客户机的时间不同步

2、当你又要CA认证,又想要监控网络设备时,因网络设备的syslog接口默认都是UDP (514)在这种情况下你要在syslog-ng.conf添加一个新的UDP端口 

添加一个端口:(主要有下面三个步骤

一、添加源端口( 源后面的端口命名可自行定义,但

source s_net_udp {
    udp(port(514));
    };
二、定义一下目标(包括日志存储目录,此久还可以定义文件的属性

destination d_udp { file("/home/syslog/net/$SOURCEIP/messages.$R_YEAR-$R_MONTH-$R_DAY" log_fifo_size(360000) perm(0644) dir_perm(0755)); };

三、日志的过滤及对应关系统表

log { source(s_net_udp); destination(d_udp); };

3、如果机器过多,可能生成的日志比较大,这样我们就要做一个脚本放入定时任务来做相关处理

脚本信息如下:
#!/usr/bin/perl -w
use File::Copy;
use File::Find;
use POSIX qw(strftime);
my %directories;
$deltime=90*24*3600;
if( ! -d "/home/syslogbackup/"){
      mkdir  "/home/syslogbackup/";
}
find( \&filehandler, "/home/syslog/" );


sub filehandler {
        my $file=$File::Find::name;
        my $sfile=$_;
        my $path=$File::Find::dir;
        print "$file $path $sfile\n";
            return unless -f $file;


######################################################### mv admin.log old > 7 to backup and gzip file  and del old > 30 day file
          my  $mtime=(stat($file))[9];
        $smtime=strftime("%y%m%d %H:%M",localtime($mtime));
        $del=time -$mtime;
        if ($del >  $deltime){
        unlink $file;
        print "$del > $deltime ";
                print "mtime $smtime deltime $file\n";
        }


        if(-f $file ){
                if ($del >  90*24*3600){
                        unlink $file;
                }
        if ($del >  7*24*3600){
        $path=~ s/syslog/syslogbackup/g;
        if( ! -d  $path){
        mkdir($path);
        }
        rename("$file", "$path/$sfile");
        if($file !~ /gz/){
        `gzip -9 "$path/$sfile"`;
        }
        }}
######################################################### mv session.log old > 2 to backup and gzip file  and del old > 30 day file


##############################################################


}

 

你可能感兴趣的:(职场,休闲,syslog-ng,网络设备,日志压缩)