美文网首页
syslog-ng之在客户端配置syslog-ng 3.16

syslog-ng之在客户端配置syslog-ng 3.16

作者: 御浅永夜 | 来源:发表于2018-08-27 11:41 被阅读0次

    注意版本

    目的

    完成以下步骤,可在客户端主机上配置syslog-ng 3.16

    步骤

    1. 在主机上安装syslog-ng程序。有关在特定操作系统上安装syslog-ng的详细信息,请参阅安装syslog-ng
    2. 配置本地源以收集主机的日志消息。 从版本3.2开始,syslog-ng OSE使用本机系统的logging方法自动收集的日志消息,例如,来自Linux上的/dev/log或FreeBSD上的/dev/klog的消息。有关自动收集的消息的完整列表,请参阅system:收集平台的系统特定日志消息
      要配置syslog-ng OSE,请使用任何常规文本编辑器应用程序编辑syslog-ng.conf文件。 配置文件的位置取决于您安装syslog-ng OSE的方式。 平台的本机包(如从Linux存储库下载的包)通常将配置文件放在/etc/syslog-ng/目录下。
      添加sources以从日志文件中收集消息。 file sources如下所示:
    source s_myfilesource {
        file("/var/log/myapplication.log" follow-freq(1));
    };
    

    为每一个source唯一命名。 有关配置文件源的详细信息,请参阅文件:从文本文件中收集消息

    许多应用程序默认情况下将日志消息发送到日志文件(例如,Roundcube webmail客户端或ProFTPD FTP服务器),但可以配置为将其发送到syslog。 如果可能,建议以这种方式重新配置应用程序。

    syslog-ng OSE的缺省配置文件收集特定于平台的日志消息和syslog-ng OSE的内部日志消息。

    source s_local {
       system();
      internal();
    };
    
    1. 创建直接指向syslog-ng服务器或本地中继的网络目标。 网络目标很大程度上取决于您的日志服务器或中继接受消息的协议。 许多系统仍然使用传统的BSD-syslog协议(RFC3162)而不是可靠的UDP传输:
    destination d_network { network("10.1.2.3" transport("udp")); };
    

    但是,如果可能,请使用比TCP传输更可靠的IETF-syslog协议:

    destination d_network {
        syslog("10.1.2.3" transport("tcp"));
    };
    
    1. 创建将本地源连接到syslog-ng服务器或中继的日志语句。 例如:
    log {
        source(s_local); destination(d_network);
    };
    
    1. 如果日志也将本地存储在主机上,请创建本地文件目标。

    syslog-ng OSE的默认配置将收集的消息放入/var/log/messages文件中:

    destination d_local {
        file("/var/log/messages");
    };
    
    1. 创建将本地源连接到文件目标的日志语句。

    syslog-ng OSE的默认配置只有一个日志语句:

    log {
        source(s_local); destination(d_local);
    };
    
    1. 根据需要设置过滤器,宏和其他功能和选项(例如TLS加密)。
      示例:syslog-ng OSE的缺省配置文件
      以下是syslog-ng OSE 3.16的默认配置文件。它收集本地日志消息和syslog-ng OSE的日志消息,并将它们保存在/var/log/messages文件中。
    @version: 3.16
    @include "scl.conf"
    source s_local {
        system(); internal();
    };
    destination d_local {
        file("/var/log/messages");
    };
    log {
        source(s_local); destination(d_local);
    };
    

    示例:客户端的简单配置
    以下是一个简单的配置文件,它使用IETF-syslog协议收集本地日志消息并将其转发到日志服务器。

    @version: 3.16
    @include "scl.conf"
    source s_local {
        system(); internal();
    };
    destination d_syslog_tcp {
        syslog("192.168.1.1" transport("tcp") port(2010));
    };
    log {
        source(s_local);destination(d_syslog_tcp);
    };
    
    

    参考

    syslog-ng官方技术说明书
    syslog-ng应用详解
    Open Source Log Management Tool - syslog-ng
    [git-syslog-ng]https://github.com/balabit/syslog-ng

    相关文章

      网友评论

          本文标题:syslog-ng之在客户端配置syslog-ng 3.16

          本文链接:https://www.haomeiwen.com/subject/umdziftx.html