• linux开启Rsyslog服务收集日志


    一、查看是否安装了rsyslog服务

    [root@server-1 ~]# yum install -y rsyslog
    已加载插件:fastestmirror
    Loading mirror speeds from cached hostfile
     * base: mirrors.aliyun.com
     * extras: mirrors.aliyun.com
     * updates: mirrors.aliyun.com
    base                                                                                                               | 3.6 kB  00:00:00     
    dell-system-update_dependent                                                                                       | 2.3 kB  00:00:00     
    dell-system-update_independent                                                                                     | 2.3 kB  00:00:00     
    extras                                                                                                             | 3.4 kB  00:00:00     
    updates                                                                                                            | 3.4 kB  00:00:00     
    软件包 rsyslog-8.24.0-34.el7.x86_64 已安装并且是最新版本
    无须任何处理
    [root@server-1 ~]# 

    二、配置rsyslog.conf文件

    [root@server-1 ~]# vim /etc/rsyslog.conf

    将"#### MODULES ####"下面的

    # Provides UDP syslog reception
    $ModLoad imudp
    $UDPServerRun 514

    # Provides TCP syslog reception
    $ModLoad imtcp
    $InputTCPServerRun 514

    注释打开,启用udp.tcp协议,监听514端口

    # Provides UDP syslog reception
    $ModLoad imudp
    $UDPServerRun 514
    
    # Provides TCP syslog reception
    $ModLoad imtcp
    $InputTCPServerRun 514

    在下面加上接收日志的存放目录和文件命名规则

    #将所有从远程客户端接受到的消息写入指定目录下以它们的IP地址命名和日期命名的的文件中
    $template RemoteLogs,"/var/log/devicelog/%$YEAR%-%$MONTH%/%fromhost-ip%/%fromhost-ip%_%$YEAR%-%$MONTH%-%$DAY%.log"
    *.* ?RemoteLogs
    & ~

    将远端收集的日志存放到/var/log/devicelog/下,并创建年月目录,在下面创建每个IP主机的目录,在里面创建每天命名的日志文件

    保存,退出,重启rsyslog服务

    [root@server-1 ~]# systemctl restart rsyslog
    [root@server-1 ~]# 

    此时查看/var/log/devicelog/目录

    [root@server-1 log]# cd devicelog/
    [root@server-1 devicelog]# ll
    总用量 0
    drwx------ 4 root root 43 7月  10 13:42 2019-07
    [root@server-1 devicelog]# cd 2019-07/
    [root@server-1 2019-07]# ll
    总用量 0
    drwx------ 2 root root 38 7月  10 13:40 127.0.0.1
    [root@server-1 2019-07]# cd 127.0.0.1/
    [root@server-1 127.0.0.1]# ll
    总用量 20
    -rw------- 1 root root 17279 7月  10 13:51 127.0.0.1_2019-07-10.log

    下面多了创建的目录和相应的本机日志文件,说明配置成功。

    三、配置需要收集的主机客户端rsyslog.conf文件

    [root@localhost ~]# vim /etc/rsyslog.conf

    在#### RULES ####规则下,添加  *.*                                                     @172.28.18.69

    表示所有的日志都发送到172.28.18.69这台主机上,也就是上面我们所配置的rsyslog服务器地址,保存退出重启rssyslog服务 

    #### RULES ####
     47 
     48 # Log all kernel messages to the console.
     49 # Logging much else clutters up the screen.
     50 #kern.*                                                 /dev/console
     51 *.*                                                     @172.28.18.69
    [root@localhost ~]# systemctl restart rsyslog
    [root@localhost ~]# 

    我们重启下客户端主机的firewalld服务

    root@localhost ~]# systemctl restart firewalld
    [root@localhost ~]# 

    此时,去172.28.18.69主机上查看/var/log/devicelog/2019-07目录下

    [root@server-1 2019-07]# ll
    总用量 0
    drwx------ 2 root root 38 7月  10 13:40 127.0.0.1
    drwx------ 2 root root 41 7月  10 13:42 172.28.18.71
    [root@server-1 2019-07]# cd 172.28.18.71/
    [root@server-1 172.28.18.71]# ls
    172.28.18.71_2019-07-10.log

    多了一个我们配置的这台客户端172.28.18.71主机的日志文件,至此rsyslog服务器配置成功

  • 相关阅读:
    MySql-数据库基础
    Window安装MySQL
    Python程序中的进程操作-进程间通信(multiprocess.Queue)
    线程
    上传电影代码
    并发编程基础
    基于socketserver实现并发的socket编程
    模拟ssh远程执行命令
    GIT的使用,Pycharm中使用GitHub
    主机如何访问运行在虚拟机中的Django项目
  • 原文地址:https://www.cnblogs.com/sky-cheng/p/11163603.html
Copyright © 2020-2023  润新知