通过loganalyzer展示数据库中的日志

目的:通过loganalyzer展示数据库中的日志

准备环境:

??CentOS7_1:用来生成日志
??CentOS7_2:用来存放日志的数据库
??CentOS7_3:LAP服务器
?

第一步:在CentOS7_2安装mysql数据库

??此处使用二进制安装mariadb,可参考:
???? https://blog.51cto.com/14230410/2385780
??安装好mysql后,还需要安装rsyslog-mysql

        yum install rsyslog-mysql -y

??安装后可以看到,这个包里面就包含了一个模块和一个脚本。脚本是用来创建需要的用户和表的。
??首先创建用户,将这个脚本发送到CengOS7_2上:

        scp /usr/share/doc/rsyslog-8.24.0/mysql-createDB.sql 192.168.72.112:/data/

  然后在CentOS7_1上写上路径远程执行该脚本:

        ssh 192.168.72.112 ‘mysql < /data/mysql-createDB.sql‘

  这个时候在CentOS7_2上就可以看到创建好的表了。但是我们还需要一个用户来管理该数据库。
  创建loguser用户来管理这个库:

        grant all on Syslog.* to [email protected]‘192.168.72.%‘ identified by ‘centos‘;

  注:此处创建的用户,让其对Syslog库拥有所有权限,且只能在192.168.72.1这个网段登陆。
  创建完成后,将来就可以使用loguser来远程连接管理该数据库了。

第二步:在CentOS7_1上来参考原有的格式修改配置模块,使其能够引用模块

  修改模块的配置文件:

        vim /etc/rsyslog.conf
            $ModLoad ommysql

  直接在文件最后添加这行即可启动该模块。这里不需要写路径名,也不需要加后缀,只写个文件名即可。
    注:查看文件名:

                rpm -ql rsyslog-mysql

  启用模块后,还需要定义规则:

        vim /etc/rsyslog.conf
            *.info;mail.none;authpriv.none;cron.none                :ommysql:192.168.72.111,Syslog,loguser,centos

  注:默认的配置文件大概67%的位置添加上面这行,表示将日志发往192.168.72.111的数据库中。默认是放在本机的/var/log/messages中,这里选择直接添加,意味着日志会在本机保存一份并向远程数据库中发送一份。

第三步:安装使用loganalyzer

  当然,只放在数据库中看起来太乱了,我们希望画出饼状图、柱状图之类的。这时候就需要利用loganalyzer来展示数据库中的日志。这时就需要使用CentOS7_3搭建loganalyzer。
  首先在CentOS7_3上安装loganalyzer需要的工具:

        yum install httpd php php-mysql php-gd -y

  注:此处安装了apache、php,php想管理mysql所需的模块php-mysql,还有使用图形的模块php-gd。
  安装好之后将服务启动:

        systemctl start httpd

  可以看到80端口已经启动了。这时php就已经启动了,但是还没有连接数据库,需要一个连接数据库的代码文件。
  代码示例:

            <?php
            $mysqli=new mysqli("mysqlserver",“username",“password");
            if(mysqli_connect_errno()){
            echo "Failure";
            $mysqli=null;
            exit;
            }
            echo “OK";
            $mysqli->close();
            ?>

  注:此处只是给出一个代码块的示例,根据自己需要修改数据库名字、用户名、用户密码等等。

  现在就可以安装loganalyzer了。yum默认没有这个包,所以需要去官网下载源码包:
    http://loganalyzer.adiscon.com/
  下载好之后,使用tar将其解压缩至/var/www/html下:

        tar xvf loganalyzer-4.1.7.tar.gz -C /var/www/html/

  解压后的目录名太长了,不方便管理,可以根据个人需要考虑将其换个名字。这里将其改名为log:

mv loganalyzer-4.1.7/ log/

  但是这个时候就会发现,这个目录中什么都没有,不能够直接使用。仔细观察就会发现,里面有个文件夹src,真正的配置文件都放在了这里面。所以,我们需要将其拿出来并改名(因为已经有个log了,所以此处该命为logs):

        mv log/src logs

  原本的log文件中还有几个脚本,可以看到里面的说明。里面写了,还需要创建一个config.php文件,并且给它666权限,这个文件将来就是连接数据库的。创建出来之后去安装系统,安装好之后需要将其改为644,因为666权限太大了,容易被******。
  接下来在windows上打开浏览器,输入:本机ip/logs。后面就是图形化安装界面了。根据提示填好信息下一步下一步就可以了。。。
 
  到此,该实验就结束了。可以通过网页来查看日志了。数据库发生操作,刷新一下网页就能看到最新记录的日志了。当然,这个工具不仅提供了文字页面,在上面那行第三个还有个统计(Statistics),点进去可以看到,各种表格都是现成的,都不需要自己做了。对于小公司而言基本够用了。大公司或许会感觉简陋点。里面还有搜索、官方的说明帮助手册等等。
  注:如果说在上图的信息填写错误,或者说管理数据库的用户的密码更改之后,使用原密码会导致连接不上去。其实在安装好之后,config.php文件中会生成很多数据,其中就有用户口令等信息,如果填写错误或者发生变化,修改config.php文件即可。

原文地址:https://blog.51cto.com/14230410/2396508

时间: 2024-11-08 22:38:24

通过loganalyzer展示数据库中的日志的相关文章

通过loganalyzer展示数据库中的SYSLOG日志

环境准备 三台主机 一台日志服务器,利用上一个案例实现,IP:192.168.39.7, 一台数据库服务器,利用上一个案例实现,IP:192.168.39.27, 一台当httpd+php 服务器,并安装loganalyzer展示web图形,IP:192.168.39.77 日志服务器工具 loganalyzer-4.1.8.tar.gz 准备服务器: # 日志服务器 [[email protected] ~]$hostname rsyslog [[email protected] ~]$exi

展示数据库中的帖子内容

从数据库中进行查询和列出表中内容 下图是数据表user_fatie的结构 下图是数据表user_fatie 的内容 第一个页面是list.php.展示数据表user_fatie中的内容 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <title> 6 帖子列表 7 </title> 8 </head> 9 <body&

Mysql DBA 高级运维学习笔记-Mysql数据库中的日志文件

1.MySQL 引擎概述 1.1 什么是存储引擎 我们在录制一个视频文件的时候,可以转换成不同的格式如mp4,avi,wmv等,而且在电脑的磁盘上也会存在于不同类型的文件系统windows里常见的ntfs,fat32,存在于linux操作系统里常见的ext3,ext4,xfs.但是跟我们呈现的内容都是一样的,直观的区别是占用系统空间的大小与清晰程度不一样.那么数据库存储引擎也有很多种存储方式.无论用什么存储引擎来存储,用户看到的数据都是一样的.不同的引擎存储,引擎功能,占用的空间的大小,读取性能

mysql数据库中 二进制日志与重做日志的差别

首先:二进制日志会记录所有与mysql有关的日志记录,包括innodb myisam heap等其他引擎的日志.而innodb引擎的重做日志只记录与其有关的事务日志. 其次:记录的内容不同,不管你将二进制日志文件的格式设为statement 还是 row,又或者是mixed,其记录的都是关于一个事物的具体操作内容.而innodb存储引擎的重做日志文         件记录的关于每个页(page)的更改的屋里情况. 此外,写入的时间不同,二进制日志文件是在事物提交前进行记录的,而事物进行的过程中,

kettle作业(job)调用转换,设置变量,写日志到数据库中【转】

首先建立转换:从数据库表到日志 表输入的设置: 日志设置: 新建job: 转换选择刚才建好的输出日志转换.变量设置如下: 此ID就是转换中的${ID},执行job,可以看到控制台输出日志结果: 黑色字体部分中只写出了id=1的一条记录. 最后补充,将转换的日志写到数据库中:打开转换>ctrl+t>日志选项卡>转换>点击下面的SQL,执行SQL建表.执行完job会在数据库中写入日志记录.

游戏服务器中的日志处理方式之一

在游戏开发的过程中,我们需要记录一些日志,以便以后了解游戏运行的情况,以及根据日志发现并处理游戏中的突发情况. 一,游戏日志可以分为以下几种:1)系统日志2)用户操作日志3)异常日志,即错误日志 系统日志 系统日志一般描述的是服务器日常运行的状态.比如启动是否成功,每天统计一下内存的占用量,CPU的使用量等信息.用于查检服务器运行的健康状况.这对于技术分析来说是非常重要的.如果没有这些信息,一但服务器宕机,我们就两眼一抺黑,不知从何下手了.这部分日志一般产生的文件不大,内容不是太多,可以记录成文

mysql同一台服务器上不同数据库中个别表内容同步

>>>>>>soft_wsx>>>>>>--数据备份与还原>>同步备用服务器--1.完全备份主数据库--2.使用带SANDBY子句的RESTORE DATABASE语句从主数据库的完全备份中还原生成备用数据库--3.创建作业,使用BACKUP LOG定时对主数据库时行日志备份--4.创建作业,使用带STANDBY子句的RESTORE LOG语句定时从主数据库的日志备份中恢复数据到备用数据库--5.主数据库不可用时,使用带R

传递给数据库 &#39;master&#39; 中的日志扫描操作的日志扫描号无效

错误:连接数据库的时候提示:SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正确 C:\Documents and Settings\Administrator>"C:\Program Files\Microsoft SQL Server\100\Setup Bootstrap\Release\setup.exe" /q /ACTION=REBUILDDATABASE /INSTANCENAME=MSSQLSERVER /SQLSYSADMINACCOUNTS

数据库 的事务日志已满。若要查明无法重用日志中的空间的原因,请参阅 sys.databases 中的 log_reuse_wait_desc 列。

一种方法:清空日志.1.打开查询分析器,输入命令 SQL code? 1  DUMP TRANSACTION 数据库名 WITH NO_LOG 2.打开企业管理器,在数据库上点右键->属性->选项->故障恢复-模型-选择-简单模型.(也可以直接在查询分析器里执行: SQL code? 1 alter database 数据库名 set recovery simple  3.右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给