linux下日志收集服务器部署

541人浏览   2024-05-21 08:02:49

最近在运维实施的过程中需要集中收集交换机日志,所以本人就研究了一下,发现系统的rsyslog服务还是能够满足日志收集的要求的,所以今天写了这篇文章,希望能帮助到大家,闲话少叙,接下来是正文。。。

注:本次收集的是H3C交换机系统日志,如果需要收集其他交换机或者服务器的日志, 在客户端会有些许的差别。

一、服务器务器端

服务器端使用了Cent OS 7.0,并使用其内置的rsyslog进程收集其他设备日志信息。

1,编辑rsyslog参数

打开 /etc/sysconfig/rsyslog

找到SYSLOGD_OPTIONS,加入参数"-m 0 -r"。

-m 0表示不在日志中添加时间戳消息

-r 表示允许接收外来日志消息。

[root@zabbixserver ~]# vim /etc/sysconfig/rsyslog


编辑rsyslog配置文件

2,[root@zabbixserver ~]# vim /etc/rsyslog.conf

打开 /etc/rsyslog.conf,找到如图所示位置。

删掉两个注释用的#号,使rsyslog在UDP的514端口上接收消息。也可以删掉TCP两行注释的#号,使用TCP的514端口。


在GLOBAL DIRECTIVE块之后添加以下的日志接收模板:

$template IpTemplate,"/var/log/%FROMHOST-IP%.log"

*.* ?IpTemplate

& ~

$template IpTemplate :指令让rsyslog进程把日志文件写入到/var/log/下指定的log文件中,指定的log文件使用客户端的IP地址命名。

& ~:表示的是重定向规则,告知rsyslog进程无需进一步处理日志消息,无需写入本地日志文件。


3,验证rsyslog配置

修改完配置文件,创建接收模板之后就可以重启rsyslog进程。

sudo service rsyslog restart

重启后可以使用netstat命令验证rsyslog进程的工作状态。

sudo netstat -tulpn | grep rsyslog


4,配置交换机(客户)端

交换机的配置相对简单,只需要两行命令即可。

需要进入到全局模式中,使用命令:

info-center enable

info-center loghost 192.168.1.10 facility local4

注:ip换成需要监控的主机就可以。


相关推荐