rsyslog:日志收集和存储系统;
日志:历史事件记录;
syslog:
klogd:kernel
syslogd:service(application)
事件记录格式:
日期时间 主机进程[pid]:事件内容
C/S架构:服务,可监听于某套接字,帮其它主机记录日志信息;
S:udp, tcp协议;
rsyslog特性:
rsyslog中的术语:
facility:设施、信道;
auth, authpriv, cron, daemon, kern, lpr, mail, mark, news, security, user, uucp, syslog, local0-local7
priority:
debug, info, notice, warn(warning), err(error), crit(critical), alert, emerg(panic)
程序包:rsyslog
程序环境:
配置文件:
有三部分组成:严格按照配置段位置添加配置
- #### MODULES ####
- #### GLOBAL DIRECTIVES ####
- #### RULES ####
RULES:
facility.prioritytarget
facility:
*:所有的facility;
f1,f2,f3,...:列表中给定的所有facility;
auth,authpriv,security.info
f1.p1;f2,p2;f3.p3;...:列表中给定的所有facility;
auth.info;authpriv.notic;security,warn;
priority:
*:所有级别
none:没有级别,不记录日志;
PRIORITY:此级别(含)及其以上的所有级别;
=PRIORITY:仅指定的级别;
target:
文件:将日志信息记录到指定的文件中;文件路径之前的“-”表示异步写入之意;
用户:将日志事件通知给指定的用户;一般指登录到当前系统上的所有用户的终端;
日志服务器:@rsyslog_server,把日志信息发往指定的日志服务器;
管道:|COMMAND
命令行客户端程序:
- logger - a shell command interface to the syslog(3) system log module
- logger [options] [message]
配置rsyslog服务器:
- #### modules ####
-
- …………
-
- # Provides UDP syslog reception
-
- $ModLoad imudp
-
- $UDPServerRun 514
-
-
-
- # Provides TCP syslog reception
-
- $ModLoad imtcp
-
- $InputTCPServerRun 514
其它几个日志文件:
last, lastb - show listing of last logged in users
-num, -n num
/var/log/btmp:登录当前系统的所有的失败的尝试;
/var/log/wtmp:所有成功登录至当前系统的相关信息;
lastlog - reports the most recent login of all users or of a given user
/var/log/dmesg:系统引导过程中的日志信息;
文本查看工具;
也可以使用dmesg命令;
rsyslog记录日志于mysql:
前提:准备好msql server或mariadb server;
(1) 安装rsyslog连接至mysql server的驱动模块;
yum install rsyslog-mysql
(2) 在mysql server准备rsyslog专用的用户账号;
- GRANT ALL ON Syslog.* TO 'rsyslog'@'127.0.0.1' IDENTIFIED BY 'rsyslogpass';
- GRANT ALL ON Syslog.* TO 'rsyslog'@'local' IDENTIFIED BY 'rsyslogpass';
(3) 生成所需要的数据库和表;
mysql -ursyslog -h127.0.0.1 -prsyslogpass < /usr/share/doc/rsyslog-7.4.7/mysql-createDB.sql
(4) 配置rsyslog使用ommysql模块
- #### MODULES ####
-
- ......
-
- $ModLoad ommysql
(5) 配置RULES,将所期望的日志信息记录于mysql中;
facility.priority :ommysql:DBHOST,DB,DBUSER,DBUSERPASS
(6) 重启rsyslog服务;
(7) loganalyzer
WebGUI, 运行amp环境中;
(a) 准备amp环境
- yum install httpd php php-mysql php-gd
- systemctl start httpd.service
(b) 安装loganalyzer
- tar xf loganalyzer-VERSION.tar.gz
- cd loganalyzer-VERSION
- cp -a src /var/www/html/loganalyzer-VERSION
- cd /var/www/html
- ln -sv loganalyzer-VERSION log
- cd log
- touch config.php
- chmod 666 config.php
打开浏览器,配置;
- MySQL Native, Syslog Field
-
- Table Type:"Monitorware“
chmod 644 config.php
先配置在同一台主机上
1,安装程序包
yum install httpd php php-mysql rsyslog-mysql mariadb-server php-gd -y
2,启动MariaDB数据库
3,配置rsyslog服务和mariadb数据库的连接
编辑rsyslog配置文件
vim /etc/rsyslog.conf
在浏览器访问