rsyslog:本地日志&日志服务器

rsyslog:本地日志&日志服务器

环境:CentOS Linux release 7.1.1503 (Core)

安装

步骤

  • 检查是否已安装

rpm -qa | grep rsyslog,如果已安装则可跳过后面的步骤.

[root@localhost ~]# rpm -qa | grep rsyslog
rsyslog-7.4.7-7.el7_0.x86_64 #说明已安装
  • 搜索合适的版本:yum search rsyslog
  • 安装合适的版本:例如:yum install rsyslog.x86_64

配置文件

位置:/etc/rsyslog.conf

本地日志-写入本地文件

rsyslog默认是将日志存储在本地,所以不需要修改配置文件。

测试

根据配置文件中*.info;mail.none;authpriv.none;cron.none /var/log/messages可以知道info级别的日志存储在/var/log/messages.

  1. 开个shell执行命令tail -f /var/log/messages,关注是否有日志
  2. 在另外一个shell中执行logger -p info "hello, local rsyslog"
  3. 可以在tail的shell中看到以下的输出,,则说明已成功
[root@localhost ~]# tail -f /var/log/messages
Jan  5 10:47:30 localhost root: hello, local rsyslog

rsyslog日志服务器-日志写入远端rsyslog服务器

环境

需要2个,一个做server,1个做client。

Client端配置

  • 配置文件/etc/rsyslog.conf的最后一行:*.* @@remote-hos:514.该配置默认是注释掉的,可以直接取消注释。并将remote-host修改为自己的服务器地址,如果有需要端口号也可以修改
  • 配置文件/etc/rsyslog.conf中注释掉如下两行
*.info;mail.none;authpriv.none;cron.none                /var/log/messages
authpriv.*                                              /var/log/secure
  • 重启rsyslog:service rsyslog restart

Server端配置

  • 编辑配置文件/etc/rsyslog.conf:取消TCP、UDP连接的注释,修改成如下
# Provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514

# Provides TCP syslog reception
$ModLoad imtcp
$InputTCP
  • 重启rsyslog:service rsyslog restart

测试

  1. server端开个shell执行命令tail -f /var/log/messages,关注是否有日志
  2. client端执行命令logger -p info "hello, remote rsyslog
  3. server端执行命令logger -p info "hello, local rsyslog
  4. 可以看到如下输出, 则说明已成功:
[root@localhost ~]# tail -f /var/log/messages
Jan  5 10:58:20 localhost root: hello, remote rsyslog
Jan  5 10:58:25 localhost root: hello, local rsyslog

你可能感兴趣的:(Linux,运维,基础命令)