热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Rsyslog介绍以及结合loganalyzer进行日志分析

1.syslog介绍:日志服务在CentOS5上默认为syslog,而6上全部升级为rsyslog。Rsyslog是syslog的增强版,提供了很多高级的特性。syslog由两个进

1.syslog介绍:

  日志服务在CentOS 5上默认为syslog,而6上全部升级为rsyslog。Rsyslog是syslog的增强版,提供了很多高级的特性。syslog由两个进程构成,klogd和syslogd,klogd记录Kernel产生的日志信息,而syslogd是普通的日志信息。除了一些高级特性,Rsyslog和syslog的整体框架基本一致。


2.Rsyslog的特性:

  支持选择UDP|TCP协议传送日志文件;

  支持SSL加密;

  多线程模型工作;

  可以将日志放入关系型数据库中;

  可以作为日志服务器接收其他服务器发来的日志;


3.日志的级别

  日志的级别就是日志的记录等级,syslog将日志级别分为如下几个(低等级默认会包含高等级的日志信息):

debug调试级别,所有信息都会记录
info比debug级别稍高
notice通知信息,比info级别高
warning发出警告
err,error出现错误
crit比err更严重
alert系统出现严重问题
emerg,panic系统将要挂掉


4.syslog设施

  syslog将不同的日志分为几个类,这些种类就称作设施:

auth认证信息
authpriv授权信息
cron计划任务产生的信息
daemon守护进程产生的信息
kern内核产生的信息
lpr打印的信息
mail邮件相关的信息
mark防火墙标记的信息
news新闻组信息
security安全相关的信息
syslog系统日志
user用户相关的信息
uucpunix间复制相关
local{0-7}
用户自定义的日志类,分为7个级别


5.rsyslog的配置:

  rsyslog的配置文件是/etc/rsyslog.conf及/etc/rsyslogd/*.conf。

  /etc/rsyslog.conf文件分为四个"区域":

MODULESsyslog的模块
GLOBAL全局定义,记录的格式等等
RULES记录日志相关
begin forwarding rule一些转发的记录信息


  我们主要关心RULES区域,要想使rsyslog记录特定类、级别的日志,就需要在RULES中定义,格式为:

facility(设施).priority(日志级别)    Target(日志输出的位置)

注:

  日志级别、设施可以使用通配符:

    *:所有级别

    ,:列表,例如:a,b,c是a、b、c三个级别

    !:取反

  记录的位置常用的大概有四种:

    文件,如/var/log/message

    用户,发送给指定的用户,*为所有用户

    日志服务器:@172.16.10.1

    管道:|COMMAND 交给特定的命令处理

例如:

mail.info     /var/log/maillog    记录mail类型中info及以上级别的日志信息
mail.=info    /var/log/maillog    只记录maill类型中info级别的日志信息
mail.!info    /var/log/maillog    记录mail类型中info以下级别的日志信息
mail.!=info   /var/log/maillog    记录mail类型中除了info级别的日志信息
*.info        /var/log/maillog    记录所有info及以上级别的日志信息
mail,news.info    -/var/log/maillog    记录mail类型、news类型中的info及以上级别的日志信息,并且以异步方式写入文件


二、配置rsyslog和loganalyzer结合工作:

1.介绍

  loganalyzer是一款Web界面日志分析工具,可以分析mysql中的日志信息,由php编写,依赖于LAMP平台。要想将日志信息写入到mysql中,需要安装rsyslog-mysql工具,并启用rsyslog的模块。


2.安装LAMP及相关文件:

[root@localhost ~]# yum install -y httpd mysql mysql-server php php-mysql rsyslog-mysql

3.导入rsyslog-mysql的sql文件(创建库、表)并创建一个用户:

[root@localhost ~]# service mysqld start
[root@localhost ~]# mysql -uroot [root@localhost loganalyzer]# mysql
 mysql> GRANT ALL ON Syslog.* TO ‘loganauser‘@‘localhost‘ IDENTIFIED BY ‘redhat‘;
 mysql> GRANT ALL ON Syslog.* TO ‘loganauser‘@‘127.0.0.1‘ IDENTIFIED BY ‘redhat‘;


4.配置rsyslog加载ommysql模块(写入mysql数据库的模块):

[root@localhost ~]# vim /etc/rsyslog.conf
 在MODULES区域添加:
    $ModLoad ommysql
[root@localhost loganalyzer]# service rsyslog restart
Shutting down system logger:                               [  OK  ]
Starting system logger:                                    [  OK  ]
[root@localhost loganalyzer]#


5.下载loganalyzer并解压到/var/www/loganalyzer目录进行配置:

[root@localhost ~]# tar -xf loganalyzer-v3.6.1.tar.gz
[root@localhost ~]# cd loganalyzer-3.6.1/
[root@localhost loganalyzer-3.6.1]# mv src/ /var/www/loganalyzer
[root@localhost loganalyzer-3.6.1]# mv contrib/* /var/www/loganalyzer/
[root@localhost loganalyzer-3.6.1]# cd /var/www/loganalyzer/
[root@localhost loganalyzer]# chmod +x configure.sh secure.sh
[root@localhost loganalyzer]# ./configure.sh 
[root@localhost loganalyzer]# ./secure.sh 
[root@localhost loganalyzer]# rm -rf configure.sh secure.sh 
[root@localhost loganalyzer]# chown -R apache.apache *


6.配置httpd默认首页为index.php并启动:

[root@localhost loganalyzer]# vim /etc/httpd/conf/httpd.conf
   DirectoryIndex index.php
[root@localhost loganalyzer]# service httpd start
Starting httpd:                                            [  OK  ]
[root@localhost loganalyzer]#


7.打开http://hostname/loganalyzer/install.php安装之:

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

8.配置syslog将日志写入到mysql数据库:

[root@localhost loganalyzer]# vim /etc/rsyslog.conf 
  *.info       :ommysql:127.0.0.1,Syslog,loganauser,redhat
[root@localhost loganalyzer]# service rsyslog restart
Shutting down system logger:                               [  OK  ]
Starting system logger:                                    [  OK  ]
[root@localhost loganalyzer]#


9.刷新网页查看日志已经有了两条记录:

技术分享


本文出自 “SystemCall社区” 博客,请务必保留此出处http://minux.blog.51cto.com/8994862/1731119


推荐阅读
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 1,关于死锁的理解死锁,我们可以简单的理解为是两个线程同时使用同一资源,两个线程又得不到相应的资源而造成永无相互等待的情况。 2,模拟死锁背景介绍:我们创建一个朋友 ... [详细]
  • 后台获取视图对应的字符串
    1.帮助类后台获取视图对应的字符串publicclassViewHelper{将View输出为字符串(注:不会执行对应的ac ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • 本文介绍了通过ABAP开发往外网发邮件的需求,并提供了配置和代码整理的资料。其中包括了配置SAP邮件服务器的步骤和ABAP写发送邮件代码的过程。通过RZ10配置参数和icm/server_port_1的设定,可以实现向Sap User和外部邮件发送邮件的功能。希望对需要的开发人员有帮助。摘要长度:184字。 ... [详细]
  • 在project.properties添加#Projecttarget.targetandroid-19android.library.reference.1..Sliding ... [详细]
  • CentOS 7部署KVM虚拟化环境之一架构介绍
    本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ... [详细]
  • Webpack5内置处理图片资源的配置方法
    本文介绍了在Webpack5中处理图片资源的配置方法。在Webpack4中,我们需要使用file-loader和url-loader来处理图片资源,但是在Webpack5中,这两个Loader的功能已经被内置到Webpack中,我们只需要简单配置即可实现图片资源的处理。本文还介绍了一些常用的配置方法,如匹配不同类型的图片文件、设置输出路径等。通过本文的学习,读者可以快速掌握Webpack5处理图片资源的方法。 ... [详细]
  • 动态规划算法的基本步骤及最长递增子序列问题详解
    本文详细介绍了动态规划算法的基本步骤,包括划分阶段、选择状态、决策和状态转移方程,并以最长递增子序列问题为例进行了详细解析。动态规划算法的有效性依赖于问题本身所具有的最优子结构性质和子问题重叠性质。通过将子问题的解保存在一个表中,在以后尽可能多地利用这些子问题的解,从而提高算法的效率。 ... [详细]
author-avatar
厦禾Tony_303
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有