基于mysql数据库的日志分析系统

现如今,日志已经成为了我们分析系统及相关服务的一个重要工具。而日志也具有其相对较为固定的格式以便于进行统计查询。其大致格式如下:

日期时间            主机            进程[pid]:事件内容

我们可以通过查看/var/log/message中的内容来看一下其记录的日志格式。

0000.jpg

Linux中,使用rsyslog来记录日志,其主要具有以下几点特性:

a、多线程进程;

b、支持UDPTCPSSL/TLSRELP等多种传输协议;

c、可存储日志信息于MysqlPGSQLOracle等数据库中;

d、具有功能强大的过滤器,可实现过滤日志信息中任何部分的内容;

e、可自定义输出格式;

下面我们就首先详细了解一下rsyslog程序。

1、程序相关环境;

rsyslogCentOS发行版中为默认安装的,当然,我们也可自己手动安装,配置好yum仓库后,执行yum –y install rsyslog即可。以CentOS7为例,其生成的相关文件主要有以下这些:

配置文件:/etc/rsyslog.conf/etc/rsyslog.d/*

主程序文件:/usr/sbin/rsyslogd

模块路径:/usr/lib64/rsyslogd/

Unit File/usr/lib/system/system/rsyslog.service

2、程序配置文件

rsyslog的程序配置文件由以下三部分组成:

#### MODULES ####
#### GLOBAL DIRECTIVES ####
#### RULES ####

需要注意的是,每个配置段的配置选项都有严格的定义,所以我们在添加配置选项时,同样也需要严格按照配置段位置进行添加;我们主要看一下RULES段的主要配置。

RULES段的配置具有固定的格式,由三部分组成:

Facility.priority                        target

Facility即为日志传输的信道,包括auth,authpriv,cron,daemon,kern,lpr,mail,mark,news,security,user,uucp,syslog,local0-local720类。

priority为日志的等级,包括debug,info,notice,warn(warning),err(error),crit(critical),alert,emerg(panic)几种;

target为日志的存储方式,有以下几种:

Ø  文件:将日志信息记录到指定的文件中,文件路径之前的“-”表示异步写入之意;

Ø  用户:将日志事件通知给指定的用户,一般指登录到当前系统上的所有用户的终端;

Ø  日志服务器:格式为@rsyslog_server,表示将日志信息发往指定的日志服务器;

Ø  管道:格式为|COMMAND,表示将日志通过管道传递给命令;

了解了rsyslog之后,那么我们要如何分析日志信息呢。在图像化界面下,我们可以通过一款软件loganalyzer进行分析,其需要运行于amp环境中;下面我们就搭建一个AMP+rsyslog+loganalyzer环境;

1、安装AMP+rsyslog环境

yum –y install httpd php php-mysql mariadb-server rsyslog ryslog-mysql

2.配置mysql相关用户与数据

    a、启动mysql服务

systemctl start mariadb.service

         b、运行mysql初始化设置;

mysql_secure_installation

         c、创建mysql数据库与账号;

mysql -u root -pmageedu < /usr/share/doc/rsyslog-7.4.7/mysql-createDB.sql
mysql> grant all on Syslog.* to ‘rsyslog’@’localhost’ identified by ‘mageedu’;
mysql> grant all on Syslog.* to ‘rsyslog’@’127.0.0.1’ identified by ‘mageedu’;
mysql> flush privileges;

3、配置rsyslog配置文件;

vim /etc/rsyslog/rsyslog.conf

MODULES下添加:$ModLoad        ommysql

RULES下添加:*.*                            :ommysql:127.0.0.1,Syslog,rsyslog,mageedu

4loganalyzer相关配置;

         a、解压loganalyzer安装包;

tar xf loganalyzer-3.6.5.tar.gz

         b、复制解压目录下src目录至/var/www/html目录;

cp –r loganalyzer-3.6.5/src /var/www/html

         c、创建软链接;

ln -sv /var/www/html/loganalyzer /var/www/html/log

         d、在/var/www/html/log目录中创建config.php并修改权限为666

cd /var/www/html/log
touch config.php
chmod 666 config.php

         e、为apache用户设置acl权限;

setfacl -m u:apache:rwx /var/www/html/loganalyzer-3.6.5

   f、设置防火墙并启动各服务

         5、在浏览器中访问httpd服务并安装loganalyzer

      111.jpg

222.png

至此,我们就搭建完成了amp+rsyslog+loganalyzer服务。

 

 

 

 

 

 

 

 

 

 

 

原创文章,作者:luoliumeng,如若转载,请注明出处:http://www.178linux.com/53818

(0)
luoliumengluoliumeng
上一篇 2016-10-23 20:05
下一篇 2016-10-23 20:17

相关推荐

  • 挂载

    挂载的相关介绍

    Linux干货 2017-12-10
  • Linux网络管理之网卡别名及网卡绑定配置

    在日常的运维工作当中,有时候需要在一块物理网卡上配置多个IP地址,这就是网卡子接口的概念,以及多块网卡实现网卡的绑定,通俗来讲就是多块网卡使用的一个IP地址,下面我来详细说明实现的过程。 &创建网卡子接口 在CentOS系统当中网络是由NetworkManager这个服务来管理的,它提供了一个图形的界面,但此服务不支持物理网卡子接口的设置,所以在配置网卡子接…

    系统运维 2016-09-02
  • Linux启动过程及系统初始化

    一、前言     服务器在正常的运行过程中,很少有重启的机会。在正常的情况下,也很少有出现启动异常的情况,但是在遭到了人为或者误操作的情况后,可能会出现启动异常的情况。为了加深学习系统启动流程,能够更加深入理解Linux系统的启动流程。总结了这篇文字。 二、简述启动流程     …

    Linux干货 2016-11-23
  • 文件权限

    首先简单介绍一下文件的属性: 使用ls -l 长列出-rw-r–r–. 1 root root 1302 Jul 25 10:23 group文件类型|owner权限group权限other权限|硬链接数|owner|group|文件大小(bytes)|mtime|文件名 文件类型:     &…

    2017-07-29
  • Linux之进程和计划任务

    进程的概念     内核的功用:进程管理、文件系统、网络功能、内存管理、驱动程序、 安全功能等     Process: 运行中的程序的一个副本,是被载入内存的一个指令集合进程ID(Process ID,PID)号码被用来标记各个进程    &nbs…

    Linux干货 2016-10-09
  •  编译安装步骤     大致过程:(源代码–预处理–编译–汇编–链接–执行)   第一步 下载安装开发工具“Development toos” 第二步 下载解压源代码包 仔细阅读“Install和 Read me” 第三步 使用./conf…

    Linux干货 2017-04-24