Linux 下的日志服务器操作

Linux 下的日志服务器操作

1.系统日志默认分类:

/var/log/messages             系统服务及日志,包括服务的信息,报错等等

/var/log/secure                  系统认证信息日志

/var/log/maillog                  系统邮件服务信息

/var/log/cron                     系统定时任务信息

/var/log/boot.log                系统启动信息

日志设备(可以理解为日志类型):

auth                                 pam产生的日志

authpriv                            ssh,ftp等登录信息的验证信息

cron                                 时间任务相关

kern                                 内核

lpr                                    打印

mail                                  邮件

mark(syslog)–rsyslog        服务内部的信息,时间标识

news                                新闻组

user                                 用户程序产生的相关信息

uucp                                 unix to unix copy, unix主机之间相关的通讯

local 1~7                           自定义的日志设备

日志级别:

debug                                有调式信息的,日志信息最多

info                                    一般信息的日志,最常用

notice                                 最具有重要性的普通条件的信息

warning                              警告级别

err                                      错误级别,阻止某个功能或者模块不能正常工作的信息

crit                                     严重级别,阻止整个系统或者整个软件不能正常工作的信息

alert                                    需要立刻修改的信息

emerg                                 内核崩溃等严重信息

none                                   什么都不记录

2. 服务器端配置:打开日志配置文件/etc/rsyslog.conf

# Provides UDP syslog reception

#$ModLoad imudp

#$UDPServerRun 514

# Provides TCP syslog reception

$ModLoad imtcp

$InputTCPServerRun 514

重启rsyskog服务

3.客户端配置

vim /etc/rsyslog.conf

若启用UDP传输:添加如下1行*.* @192.168.30.254:514

若启用TCP传输:添加如下1行

*.* @@192.168.30.254:514

测试

服务器端检查514端口是否正常

[root@localhost log]# lsof -i:514

COMMAND    PID USER  FD  TYPE DEVICE SIZE/OFF NODE NAME

rsyslogd 14021 root    3u  IPv4  43402      0t0  TCP *:shell (LISTEN)

rsyslogd 14021 root    4u  IPv6  43403      0t0  TCP *:shell (LISTEN)

rsyslogd 14021 root  11u  IPv4  42786      0t0  TCP 192.168.30.254:shell->192.168.30.1:59181 (ESTABLISHED)

现在客户端已经正常连上服务端

现在在服务端查看日志,同时在客户端进行日志测试操作

服务端:

[root@localhost log]# tail -f /var/log/messages

Jul  4 16:55:01 localhost systemd: Started Session 214 of user pcp.

Jul  4 16:55:01 localhost systemd: Starting Session 214 of user pcp.

Jul  4 16:55:02 localhost systemd: Removed slice user-995.slice.

Jul  4 16:55:02 localhost systemd: Stopping user-995.slice.

Jul  4 16:55:01 localhost systemd: Created slice user-995.slice.

Jul  4 16:55:01 localhost systemd: Starting user-995.slice.

Jul  4 16:55:01 localhost systemd: Started Session 65 of user pcp.

Jul  4 16:55:01 localhost systemd: Starting Session 65 of user pcp.

Jul  4 16:55:02 localhost systemd: Removed slice user-995.slice.

Jul  4 16:55:02 localhost systemd: Stopping user-995.slice.

Jul  4 16:55:46 localhost root: 12222222222222222222222222222222222222222

客户端

logger "12222222222222222222222222222222222222222"

这样一个简单的日志服务器就搭建完成了

但是我们会发现这样的日志会和服务器端的日志都是放在同一个文件下的,这样会产生很多的混乱,所以我们需要将这些日志进行分类存放

所以我们需要以下几点

1. 在/etc/rsyslog.conf中存在$IncludeConfig /etc/rsyslog.d/*.conf这么一句话,表示它会去这个目录下读取以.conf为后缀的所有文件

2.

:属性, 比较操作符, “值” 保存位置

属性包括以下内容

fromhost 哪个主机名发过来的

fromhost-ip 哪个ip发过来的

msg 从日志信息里的内容判断

hostname 从日志中的主机名判断

比较操作符包括以下内容

contains 包含

isequal 等于

startswith 以...开头

原文链接:https://blog.csdn.net/xiayun1995/java/article/details/83962934

那我们就在日志服务器/etc/rsyslog.d/写入一个叫192.168.30.1.conf的文件

:fromhost-ip, isequal, "192.168.30.1" /var/log/cclient/192,168.30.1.log

接下在客户端下进行一个简单日志操作

logger "12222222222222222222222222222222222222222"

查看服务端文件

[root@localhost cclient]# cat 192,168.30.1.log

Jul  4 17:19:18 localhost root: 12222222222222222222222222222222222222222

日志同步成功

你可能感兴趣的:(Linux 下的日志服务器操作)