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服务器配置成功

 

你可能感兴趣的:(linux开启Rsyslog服务收集日志)