总结之:CentOS 6.5 rsyslog+MySQL+loganalyzer日志集中分析管理

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介:

前言
   rsyslog系统日志,在CentOS5上叫syslog,而在CentOS6上叫rsyslog,叫增强版的syslog,CentOS5上的配置文件在/etc/syslog.conf下,而CentOS6在/etc/rsyslog.conf下。
   syslog默认是把我们的日志放到文件、用户、日志服务器、管道中。
   rsyslog在syslog的基础上还多了一条途径,允许把日志放到mysql数据中。

   rsyslog比syslog好在哪里:
   Multi-threading:多线程
   TCP, SSL, TLS, RELP:支持tcp协议,ssh加密,支持RCLP协议
   MySQL, PostgreSQL, Oracle and more:支持日志存放在这些数据库中
   Filter any part of syslog message:支持自定义过滤器过滤一些信息
   Fully configurable output format:支持输出格式的完全自定义
   Suitable for enterprise-class relay chains:并且特别适用于企业级的日志收集

   日志是什么:通俗来讲就是记录过去所发生过的历史信息,而我们的系统日志有多种,比如说有错误日志、二进制日志、事物日志、中断日志、查询日志等,在这些日志中,除了事物日志,绝大多数据的日志都叫做历史日志,记录了我们系统中过去一段时间所发生的事情。

   日志有日志级别:priority优先级
   debug:调试,所谓调试就是不分轻重缓急,只要发生了就一律记录下来
   info:任何时候程序正常输出的信息,而不是说调试信息,都记录下来,如果定义了一个级别后这个级别以及比这个级别高的的级别都会被记录下来的。
   notice:注意,提醒用户要注意了
   warning:警告,提醒用户说可能会发生一些比较严重的问题了
   err:某个功能发有错误发生,必须要进行处理的
   crit:比err更严重了,现在不处理可能过一会就要挂了
   alert:红色警报,比crit更严重,需要马上处理
   emerg,panic:立马挂掉

   我们系统上运行了行行色色的软件,有很多都是服务级别的软件,这些软件都有可以产生日志,那日志记哪去,由谁来记录,记到哪个文件当中,记录哪个级别,如果都一个程序的日志都需要自己去定义,那就变得非常的麻烦,而绝大多数软件的日志信息都比较简单,没必要说自己去定义管理自己的日志,那由此我们就用到syslog,他是个服务,什么事也不干,他有两个进程,syslogd和klogd,一个是记录系统级别的日志信息,一个是记录内核级别的日志信息,而syslog他本身运行为一个服务,如果有人需要记录日志的话就把日志发给syslog,由syslog来帮记录,至于记录到哪去由syslog自己来判定,所以可以把他理解成是一个日志的框架,他是为了实现某种特定功能、为了承接各种用到这种功能的软件,而且能够实现低层帮更多软件记录日志的这么一种机制的,还有如果日志过多,那我们日后查找日志也不方便,那我们就要把日志分类管理了,这就是所说的设施(facility)了,从功能可程序上对日志信息进行分类,

   LogAnalyzer 是一个 syslog 和其他网络事件数据的 Web 前端工具,提供简单易用的日志浏览、搜索和基本分析以及图表显示读取到的日志进行分析的,一般我们都使用数据库的loganalyzer结合起来分析管理集中日志。

实现rsyslog日志集中到mysql+loganalyzer管理分析
   1、安装mysql,这个安装过程这里不再说明,前面的博文中我们已经详细说过了,可以参考博文:总结之:CentOS 6.5 LAMP分主机平台的搭建及测试http://tanxw.blog.51cto.com/4309543/1386381,这里有详细的安装过程。

   1、安装loganalyzer    

1
2
3
4
5
6
7
8
9
10
11
12
13
# tar xvzf loganalyzer-3.6.4.tar.gz
# cd loganalyzer-3.6.4
# mkdir /usr/local/apache/htdocs/syslog
把这两个src、contrib目录下的所有文件移动你本机能解析PHP路径下的web路径下。
# mv src/* /usr/local/apache/htdocs/syslog/
# mv contrib/* /usr/local/apache/htdocs/syslog/
# chmod u+x /usr/local/apache/htdocs/syslog/*.sh
# cd /usr/local/apache/htdocs/syslog/
# ./configure.sh
# ./secure.sh
# chmod 666 config.php
把这个目录下的所有文件的属主属组都改为apache运行的进程名
# chown -R daemon.daemon *

   wKioL1NEpGDQn7OHAABhn1HJinw895.jpg

       

    2、编辑rsyslog的配置文件    

1
2
3
4
5
6
7
8
9
10
11
# vim /etc/rsyslog.conf
$ModLoad ommysql 这一项必须定义在Module一段中
ommysql:这个表示装载的模块名;Syslog表示数据名;rsysloguser,rsyslogpass这两个是用户和密码
*.*     :ommysql:127.0.0.1,Syslog,rsysloguser,rsyslogpass
                                                                                                                                                                    
接着安装要rsyslog-mysql、php和php-mysql并导入数据定义的脚本, /usr/share/doc/rsyslog-mysql/createDB .sql
# yum -y install php php-mysql
# yum -y install rsyslog-mysql
# cd /usr/share/doc/rsyslog-mysql-5.8.10/
导入数据库
# mysql < /usr/share/doc/rsyslog-mysql/createDB.sql

   wKiom1NEpJzi9ewYAAEpmEmwU8U559.jpg  

 

   3、登录数据库,给用户rsysloguser授权,密码为rsyslogpass    

1
2
3
4
# mysql
mysql> GRANT ALL ON Syslog.* TO  'rsysloguser' @ '127.0.0.1'  IDENTIFIED BY  'rsyslogpass' ;
mysql> GRANT ALL ON Syslog.* TO  'rsysloguser' @ 'localhost'  IDENTIFIED BY  'rsyslogpass' ;
mysql> FLUSH PRIVILEGES;

   wKioL1NEpJaQE_oZAAFzxR4tUwU989.jpg

   wKioL1NEpLCyj3-XAAFNhR7CUF8082.jpg


   启动服务,页面上输入地址测试安装:

   # service rsyslog start

   如果安装好之后连接不上数据库,提示说不能通过/var/lib/mysql/mysql.sock连接数据,那就在/var/lib/下创建mysql目录文件,再把/tmp/mysql.sock套接字文件链接到/var/lib/mysql/目录下去就可以连接上了:

   # mkdir /var/lib/mysql

   # ln -s /tmp/mysql.sock /var/lib/mysql/

   http://172.16.27.1/syslog    wKioL1NEpTLilQDZAAEqQpIWzO8493.jpg

wKiom1NEpYKimGNeAAJkW4JXpb8565.jpg

wKioL1NEpXSR-hkoAAG7SdV0dgo695.jpg

wKiom1NEpbOigAQ1AAGqCntplI4343.jpg

wKiom1NEpdHj9EjxAAHwHgHWqKQ274.jpg

wKiom1NEpeyCj2jwAAC4NlqqK4k574.jpg

wKioL1NEphnDl82gAAh1Eqik-fo296.jpg


结束:

   整理了一些操作步骤,对日志的集中式存放和管理,放在mysql数据库中是很好管理和分析的,这个页面也很直观的看出了这些日志信息,在此,大神有什么觉得不妥的万望指出哦,在此先谢谢你的关注了。










本文转自 wei0164 51CTO博客,原文链接:http://blog.51cto.com/tanxw/1392591,如需转载请自行联系原作者
相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
21天前
|
SQL 关系型数据库 MySQL
【揭秘】MySQL binlog日志与GTID:如何让数据库备份恢复变得轻松简单?
【8月更文挑战第22天】MySQL的binlog日志记录数据变更,用于恢复、复制和点恢复;GTID为每笔事务分配唯一ID,简化复制和恢复流程。开启binlog和GTID后,可通过`mysqldump`进行逻辑备份,包含binlog位置信息,或用`xtrabackup`做物理备份。恢复时,使用`mysql`命令执行备份文件,或通过`innobackupex`恢复物理备份。GTID模式下的主从复制配置更简便。
90 2
|
20天前
|
安全 关系型数据库 MySQL
Linux(CentOS6)安装MySQL5.6
Linux(CentOS 6)系统上安装MySQL 5.6版本的详细步骤,包括准备数据存放目录、创建用户、下载安装包、初始化数据库、配置服务脚本、设置环境变量等操作。
55 1
|
24天前
|
关系型数据库 MySQL Java
centos7安装mysql教程及Navicat平替软件
【8月更文挑战第17天】本教程详述CentOS 7上安装MySQL的过程。首先确保移除任何预装的MySQL组件,然后通过wget获取并安装MySQL的YUM源。可以选择安装特定版本如5.7或8.0。安装MySQL服务器后,启动服务并查找初始密码。登录MySQL后应立即更改密码,并可根据需要设置远程访问权限。此外,还推荐使用免费开源的DBeaver作为数据库管理工具,提供了安装步骤以方便管理和操作MySQL数据库。
|
23天前
|
SQL 关系型数据库 MySQL
【MySQL】根据binlog日志获取回滚sql的一个开发思路
【MySQL】根据binlog日志获取回滚sql的一个开发思路
|
12天前
|
弹性计算 关系型数据库 MySQL
centos7 mysql安装及配置
本文详细介绍了在阿里云服务器ECS上通过yum源安装MySQL 8.0.12的过程,包括更新yum源、下载并安装MySQL源、解决安装过程中可能遇到的问题等步骤。此外,还介绍了如何启动MySQL服务、设置开机自启、配置登录密码、添加远程登录用户以及处理远程连接异常等问题。适合初学者参考,帮助快速搭建MySQL环境。
83 8
centos7 mysql安装及配置
|
28天前
|
关系型数据库 MySQL Linux
在CentOS上使用yum安装与使用MySQL
在CentOS操作系统上使用yum包管理器安装和配置MySQL数据库的详细步骤,包括下载MySQL的yum源配置、安装MySQL服务、启动和停止服务、设置开机自启动、获取临时密码、修改root用户密码、授权用户以及处理相关问题。同时,文章还包含了一些操作的截图,帮助用户更直观地理解安装和配置过程。
191 0
在CentOS上使用yum安装与使用MySQL
|
28天前
|
关系型数据库 MySQL Linux
在CentOs7虚拟机Linux离线安装mysql5.6(亲测可用)
该博客文章详细记录了在CentOS 7虚拟机上离线安装MySQL 5.6版本的完整过程,包括下载安装包、导入虚拟机、卸载MariaDB、配置文件设置、服务启动和权限配置等步骤。
在CentOs7虚拟机Linux离线安装mysql5.6(亲测可用)
|
11天前
|
API C# 开发框架
WPF与Web服务集成大揭秘:手把手教你调用RESTful API,客户端与服务器端优劣对比全解析!
【8月更文挑战第31天】在现代软件开发中,WPF 和 Web 服务各具特色。WPF 以其出色的界面展示能力受到欢迎,而 Web 服务则凭借跨平台和易维护性在互联网应用中占有一席之地。本文探讨了 WPF 如何通过 HttpClient 类调用 RESTful API,并展示了基于 ASP.NET Core 的 Web 服务如何实现同样的功能。通过对比分析,揭示了两者各自的优缺点:WPF 客户端直接处理数据,减轻服务器负担,但需处理网络异常;Web 服务则能利用服务器端功能如缓存和权限验证,但可能增加服务器负载。希望本文能帮助开发者根据具体需求选择合适的技术方案。
41 0
|
11天前
|
C# Windows 监控
WPF应用跨界成长秘籍:深度揭秘如何与Windows服务完美交互,扩展功能无界限!
【8月更文挑战第31天】WPF(Windows Presentation Foundation)是 .NET 框架下的图形界面技术,具有丰富的界面设计和灵活的客户端功能。在某些场景下,WPF 应用需与 Windows 服务交互以实现后台任务处理、系统监控等功能。本文探讨了两者交互的方法,并通过示例代码展示了如何扩展 WPF 应用的功能。首先介绍了 Windows 服务的基础知识,然后阐述了创建 Windows 服务、设计通信接口及 WPF 客户端调用服务的具体步骤。通过合理的交互设计,WPF 应用可获得更强的后台处理能力和系统级操作权限,提升应用的整体性能。
28 0
|
1月前
|
关系型数据库 MySQL Linux
【一键解锁神秘力量!】CentOS 7 通过编译源码方式安装 MySQL 数据库 —— 从零到英雄的数据库安装实战秘籍!
【8月更文挑战第9天】随着业务增长,对数据库的需求日益提高。在 CentOS 7 中,通过编译源码安装 MySQL 可提供更高定制性和灵活性。本文详细介绍从准备环境、下载源码、配置编译参数到安装 MySQL 的全过程,并对比 RPM 包安装方法,帮助读者根据需求选择合适方案。实践时需注意备份数据、选择合适版本、确保安全性和调优性能等要点。
102 1

热门文章

最新文章