前言
rsyslog:系统的一个日志服务,记录用户空间日志和内核日志
日志分为:
日志收集方、设施(facility)
日志级别(priority)
设施分为以下几种类别:
auth authpriv, cron, daemon, kern, lpr, mail, mark, news, security, user, uucp, local0-local7, syslog
日志级别:debug, info, notice,warn(warning), err(error), crit(critical), alert, emerg(panic)
emerg(panic) 程序或者系统崩溃前的最后信息
在rsyslog.conf
中指定级别:
* :所有级别
none :没有级别(表示不记录)
priority :此级别及更高级别日志
=priority :只记录此级别
#格式
facility.priorty /var/log/messages
程序环境:
程序包 :rsyslog
主程序 : rsyslogd
配置文件 :/etc/rsyslog.conf
服务文件 :/usr/lib/systemd/system/rsyslog.service
命令dmesg
:显示系统引导过程日志
rsyslog.conf简单介绍
配置文件分为下面三个部分
#### MODULES ####
#模块加载部分
#### GLOBAL DIRECTIVES ####
#全局设置部分
#### RULES ####
#定义日志记录保存
RULES
:
facility(设施).priority(级别) target(目标)
文件记录的格式:
事件产生的时间 主机 进程(PID): 事件内容
部分日志为二进制格式,比如/var/log/wtmp /var/log/btmp
查看日志命令:
/var/log/wtmp
last #当前系统上成功登陆的日志;
/var/log/btmp
lastb #当前系统失败的登陆尝试;
lastlog #显示每一个用户最近一次的登陆时间
mail.* -/var/log/maillog
#表示邮件的所有级别日志,异步写入磁盘,降低IO,提高性能
一:rsyslog作为日志服务器
可以通过udp和tcp方式建立网络连接
启用方式
编辑配置文件,启用模块:
# Provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514
# Provides TCP syslog reception
#$ModLoad imtcp
#$InputTCPServerRun 514
客户端发送日志到日志服务器
修改配置文件/etc/rsyslog.conf
中的#### RULES ####
示例:
*.info;mail.none;authpriv.none;cron.none @192.168.123.25
#将上面定义的日志发送到位于192.168.123.25的日志服务器
二:将日志保存到数据库
1.安装rsyslog-mysql
rsysog-mysql用于支持将日志写入mysql数据库
~]# yum install rsyslog-mysql -y
~]# rpm -ql rsyslog-mysql
在rsyslog的配置文件中添加模块
~]# vim /etc/rsyslog.conf
在模块部分加入mysql模块
ModLoad ommysql
2.MySQL为用户授权
~]# mysql -u root -p
为用户授权
mysql> grant all on Syslog.* to 'syslog'@'%' identified by '123456789';
mysql> flush privileges;
3.导入数据库
mysql> mysql -h数据库的ip -usyslog -p < /usr/share/doc/rsyslog-VERSION/mysql-createDB.sql
sql文件位置,可以通过rpm -ql rsyslog-mysql
查看
4.修改配置文件的target
~]# vim /etc/rsyslog.conf
示例:
*.info;mail.none;authpriv.none;cron.none :ommysql:192.168.123.25,Syslog,syslog,123456789
:ommysql:主机,数据库名,用户,密码
重启服务
systemctl restart rsyslog.service
到此,系统产生的日志将发送到位于192.168.123.25的MySQL数据库
三:安装loganalyzer
1.安装必须的软件包
~]# yum install httpd php php-mysql php-gd -y
mysql_connect(): Headers and client library minor...
,是由于php-mysql不兼容导致,需要卸载php-mysql,安装php-mysqlnd
并重启httpd服务.
2.下载并安装loganalyzer
loganalyzer官网:https://loganalyzer.adiscon.com/
~]# wget http://download.adiscon.com/loganalyzer/loganalyzer-4.1.7.tar.gz -C /tmp/loganalyzer-4.1.7.tar.gz
~]# cd /tmp&&tar xf loganalyzer-4.1.7.tar.gz
~]# cd loganalyzer-4.1.7
安装
~]# cp src/* /var/www/html/
~]# cp contrib/* /var/www/html/
~]# cd /var/www/html
~]# chmod u+x *.sh
~]# ./configure.sh && ./secure.sh
~]# chmod 666 config.php
3.网页进行初始化配置
浏览器访问:http://ip/install.php
无报错直接点击下一步
下面这些选项保持默认即可,也可修改为自己的需求
根据你的,mysql设置,数据库名和表名固定:
数据库名:Syslog
表名:SystemEvents
设置好了直接下一步
<center>End</center>