日志,众所周知日志就是记录一些历史事件,从某种意义上讲我们小学的时候写的日记也是日志。然而对于计算机也是有日志的。计算机的日志记录的也是历史事件,只不过是按时间序列将发生的事件予以记录。
日志内容:事件发生的事件、事件内容
在计算机上日志还是有日志级别的,按照事件的关键性程度分为debug、info、notice、warn, warning、err, error、crit、alert、emerg, panic
一、CentOS6系统日志简介
Syslog特性:多线程,基于TCP、SSL、TLS传输文件
支持MYSQL、PGSQL、Oracle等多种关系型数据库
强大的包过滤器,可实现过滤系统信息中的任意部分
自定义输出格式
适用于企业级别日志记录需求
Facility:从功能或程序上对日志进行分类,并有专门的工具负责记录其日志
指定设施时可以使用通配符:
* 所有
f1,f2,f3.... 列表
! 取反
二、系统日志相关配置
rsyslog的主配置文件:/etc/rsyslog.conf,其定义格式
facility.priorityTarget
mail.info /var/log/maillog
# 比指定级别更高的所有级别,包括指定的级别本身;
mail.=info /var/log/maillog
# 明确指定级别;
mail.!info *
# 除了指定级别
*.info | COMMAND
# 所有facility的info级别
mail.*:
# mail的所有级别
mail,news.info:
# mail的info及以上级别 news的info及以上级别
Target:
文件路径:例如/var/log/messages
用户: *
日志服务器:@SERVER_IP
管道:|COMMAND
日志信息格式:
时间 主机 进程(PID):事件
三、启用日志服务器功能
启用日志服务器的功能:
vim /etc/syslog.conf # Provides UDP syslog reception $ModLoad imudp $UDPServerRun 514 # Provides TCP syslog reception $ModLoad imtcp $InputTCPServerRun 514
四、将系统日志存储于mysql数据库中
首先我们需要启动日志服务器功能
rsyslog支持将日志存储于MySQL服务器中:
1)安装配置好mysql数据库服务;
2)安装rsyslog-mysql包;
3)创建rsyslog依赖的数据库:
# mysql < /usr/share/doc/rsyslog-5.8.10/createDB.sql
4)配置rsyslog启用模块
在#### Modules #####启用模块:
$ModLoad ommysql
在####rules####段中定义记录日志信息于数据库中
facility.priority :ommysql:SERVER_IP,DATABASE,USERNAME,PASSWORD
5)创建数据库
Mysql
Grant all on DATABASE.* TO USERNAME@主机 idenitified by ‘PASSWORD’
Flush privileges;
五、通过webGUI展示日志信息
首先我们需要准备好安装环境
yum -y install httpd php mysql-devel rsyslog rsyslog-mysql php-mysql php-gd
然后的操作就是和做日志服务器、把日志保存至mysql数据库的步骤一样
然后我们需要安装LogAnalyzer
注:LogAnalyzer 是一个 syslog 和其他网络事件数据的 Web 前端工具,提供简单易用的日志浏览、搜索和基本分析以及图表显示。
tar xf loganalyzer-3.6.5.tar.gz mkdir /var/www/html/loganalyzer cp loganalyzer-3.6.5/src/* /var/www/html/loganalyzer/ cp loganalyzer-3.6.5/contrib/* /var/www/html/loganalyzer/ cd /var/www/html/loganalyzer/ chmod +x configure.sh secure.sh ./configure.sh ./secure.sh chmod 666 config.php chown -R apache.apache ./*
然后启动service rsyslog restart 重启日志服务
在浏览器输入网址,进入安装向导