• rsyslog服务器同步其他服务器上面应用日志(如mysql审计日志 、nginx日志)


    **环境说明**
    系统:ubuntu 14.04

    (CentOS可以参考http://www.cnblogs.com/hanyifeng/p/5463338.html)

    rsyslog版本 :8.16.0-1ubuntu3

    目标log位置 /data/mysqldata/mysql-audit.log

    **日志服务端配置**
    1、打开/etc/default/rsyslog
    # 修改RSYSLOGD_OPTIONS=””
    RSYSLOGD_OPTIONS=”-r”
    # 参数解释
    # -r: 允许接受外来日志消息,启动监听端口514;
    # -x: 表示禁止中央日志服务器解析远程主机的FQDN(fully qualified domain name,完整域名)。默认情况下,当有其他机器向自己发送日志消息时,中央日志服务器将尝试解析该机器的FQDN。如果syslog守护进程无法解析出那个地址,它将继续尝试,这种毫无必要的额外负担将大幅降低日志记录工作的效率,应该禁止。
    # -m: 表示给日志添加-- MARK --标记,0表示关闭标记。日志文件里的“--MARK--”消息可以让你知道中央日志服务器上的rsyslog守护进程没有停工偷懒。

    2、配置远程服务器日志存放在日志服务器的本地位置以及日志格式
    在/etc/rsyslog.d/50-default.conf中添加以下内容
    # add: define logfiles
    $template Remote,"/var/log/remote_log/%fromhost%_%fromhost-ip%/log_%app-name%_%$YEAR%-%$MONTH%-%$DAY%.log"
    eg:
    /var/log/remote_log/salt-minion_192.168.217.133/log_mysql-audit_2017-08-02.log
    #/var/log/remote_log/:远程服务器中相关日志存放到本地的主路径
    #%fromhost%_%fromhost-ip%:z主路径下对应远程服务器的主机名和ip
    #%app-name%:远程服务器的(client端)中配置的tag
    #$YEAR%-%$MONTH%-%$DAY%:日期

    # Log all messages to the dynamically formed file.
    :fromhost-ip, !isequal, "127.0.0.1" ?Remote

    & ~

    **配置完成,重启日志服务器**
    /etc/init.d/rsyslog restart

    **客户端配置**
    1、创建配置文件 /etc/rsyslog.d/mysql-audit.conf
    vim mysql-audit.log

    module(load="imfile" PollingInterval="10") #加载模块
    input(type="imfile" File="/data/mysqldata/mysql_audit.log" #定义文件位置
    Tag="mysql-audit" #打tag
    StateFile="/var/spool/rsyslog/mysql-audit.state" #inotify 状态
    Severity="error" #log级别
    Facility="local7") #rsyslog 级别
    local7.* @192.168.0.5:514 #传送log服务器

    **或者直接清空/etc/rsyslog.conf中的内容(清空前记得备份),然后写入下面内容**

    module(load="imfile" PollingInterval="10") #加载模块
    input(type="imfile" File="/data/mysqldata/mysql_audit.log" #指定日志文件位置
    Tag="mysql-audit" #打tag
    StateFile="/var/spool/rsyslog/mysql-audit.state" #inotify 状态
    Severity="error" #log级别
    Facility="local7") #rsyslog 级别
    local7.* @192.168.0.5:514 #传送log服务器

    **重启rsyslog以及设定文件权限**

    touch /var/spool/rsyslog/mysql-audit.state
    chown syslog.adm /var/spool/rsyslog/mysql-audit.state
    chmod 755 /data/mysqldata/mysql-audit.log
    /etc/init.d/rsyslog restart

  • 相关阅读:
    P31 整体更新或新增 PUT
    P30 整体更新/替换资源 PUT
    P29 自定义错误信息和错误报告
    python: openpyxl带格式复制excel
    Android控件与布局——基础控件RadioButton
    EditText 使用详解
    Linux内核内存检测工具KASAN
    ISP基础(10)-Gamma校正及其实现
    ISP基础(08)-动态范围压缩
    ISP基础(07)-自动曝光
  • 原文地址:https://www.cnblogs.com/wclwcw/p/7274763.html
Copyright © 2020-2023  润新知