美文网首页
LAMP之rsyslog+loganalyzer系统日志集中管理

LAMP之rsyslog+loganalyzer系统日志集中管理

作者: 历久尝新 | 来源:发表于2016-08-05 14:45 被阅读0次

作为运维人员,熟悉系统日志是一项基本功。本文将介绍centos6的系统日志rsyslog及loganalyzer工具。

简介

系统日志:记录历史事件,通常都是按时间顺序将发生的事件予以记录,linux上的日志分为syslogd(系统进程相关日志)和klogd(内核事件日志)

一、rsyslog日志系统配置参数

1、配置文件,以及配置文件的定义格式
/etc/rsyslog.conf  \\配置文件

日志定义格式: facility.priority    Target
    facility: 设施,从功能或程序上对日志进行分类,并由专门的工具负责记录日志;
      常用的facility:
              lpr: 打印相关的日志
              auth:认证相关的日志
              user:用户相关的日志
              cron:计划任务相关的日志
              kern:内核相关的日志
              mail:邮件相关的日志
              mark:标记相关的日志
              news:新闻相关的日志
              uucp:文件copy相关的日志
           daemon:系统服务相关的日志
           authpri: 授权相关的日志
           security:安全相关的日志
           local0-local7:自定义相关的日志信息(自定义时可以使用通配符)
                通配符:
                   *:所有
                   f1,f2,f3......:列表
                   !:取反
                
      priority:日志级别
        常用的日志级别:
          debug:   调试
          info:   消息
          notice: 注意
        warn,warning: 警告
          err,error: 错误
          crit: 严重级别
          alert: 需要立即修改该的信息
          emerg,panic: 内核崩溃,内核恐慌等严重的信息
           
          通配符:
             *:所有日志级别
             none:没有任何级别,也就是不记录日志信息
             
      
       Target:文件路径
            可以使用的有:
                ①/var/log/messages
                ②用户:*当前登录系统的所有用户
                ③日志服务器:@SERAVER_IP
                ④管道:| COMMAND
       事件格式:
             时间  主机  进程  事件本身
         
举例:
mail.info  /var/log/maillog:  比指定级别更高的日志级别,包括指定级别自身,保存到/var/log/maillog中
mail.=info  /var/log/maillog: 明确指定日志级别为info,保存至/var/log/maillog
mail.!info  /var/log/maillog: 除了指定的日志级别(info)所有日志级别信息,保存至/var/log/maillog
*.info      /var/log/maillog: 所有facility的info级别,保存至/var/log/maillog
mail.*     /var/log/maillog:  mail的所有日志级别信息,都保存至/var/log/maillog
mail.notice;news.info  /var/log/maillog: mail的notice以上记得日志级别和news的info以上的级别保存至/var/log/maillog
mail,news.crit  -/var/log/maillog:  mail和news的crit以上的日志级别保存/var/log/maillog中;“-”代表异步模式

二、实验环境

主机名 IP地址 负责
www.jcwtime.hk 192.168.10.100 收集日志,MySQL
c1.jcwtime.hk 192.168.10.101 web

注意:所有服务器或客户端关闭selinux、iptables

2.1启用日志服务器接受其他服务器(Web)日志

---日志服务器(服务器)---

编辑配置文件,去掉注释并重启服务
[root@www ~]# vim /etc/rsyslog.conf
# Provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514
[root@www ~]# service rsyslog restart

---Web(客户端)---

编辑配置文件,注释新添规则并重启服务
[root@C1 ~]# vim /etc/rsyslog.conf
#*.info;mail.none;authpriv.none;cron.none                /var/log/messages
*.info;mail.none;authpriv.none;cron.none                @192.168.10.100
[root@C1 ~]# service rsyslog restart

在Web(客户端)测试安装zsh,日志服务器可查看到日志
[root@www ~]# tail /var/log/messages 
Aug  5 11:21:37 C2 yum[29781]: Installed: zsh-4.3.11-4.el6.centos.2.x86_64

2.2配置将日志信息存储到数据库

---日志服务器(服务器)---
安装mysql及驱动
[root@www ~]# yum install -y mysql-server rsyslog-mysql
[root@www ~]# rpm -ql rsyslog-mysql
/lib64/rsyslog/ommysql.so \\rsyslog连接mysql的驱动模块
/usr/share/doc/rsyslog-mysql-5.8.10 \\ rsyslog的文档
/usr/share/doc/rsyslog-mysql-5.8.10/createDB.sql  \\rsyslog的数据库以及表的各项定义,直接导入数据即可使用
[root@www ~]# service mysqld start

将生成的createDB.sql导入mysql数据库
[root@www ~]# mysql -uroot -p </usr/share/doc/rsyslog-mysql-5.8.10/createDB.sql
mysql -uroot -p
查看数据库:
mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| Syslog             |
| mysql              |
| test               |
+--------------------+
4 rows in set (0.05 sec)
使用Syslog:
mysql> USE Syslog;
查看表:
mysql> SHOW TABLES;
+------------------------+
| Tables_in_Syslog       |
+------------------------+
| SystemEvents           |
| SystemEventsProperties |
+------------------------+
2 rows in set (0.01 sec)
创建用户、密码并授权本地 访问Syslog数据库
mysql> GRANT ALL ON Syslog.* TO 'rsysloguser'@'127.0.0.1' IDENTIFIED BY 'rsyslogpass';
Query OK, 0 rows affected (0.01 sec)
刷新权限:
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

配置ryslog.conf文件添加模块ommysql,添加规则输出到本地数据库Syslog,重启服务
[root@www ~]# vim /etc/rsyslog.conf

#### MODULES ####
$ModLoad ommysql
$ModLoad imuxsock
$ModLoad imklog

#### RULES ####
#*.info;mail.none;authpriv.none;cron.none                /var/log/messages
*.info;mail.none;authpriv.none;cron.none                :ommysql:127.0.0.1,Syslog,rsysloguser,rsyslogpass
[root@www ~]# service rsyslog restart

Web(客户端)测试安装zsh,日志服务器tail /var/log/messages不会有zsh安装日志,而是输出到mysql
mysql> select * from SystemEvents\G;
*************************** 4. row ***************************
                ID: 4
        CustomerID: NULL
        ReceivedAt: 2016-08-05 14:04:52
DeviceReportedTime: 2016-08-05 14:04:52
          Facility: 1
          Priority: 6
          FromHost: C2
           Message:  Installed: zsh-4.3.11-4.el6.centos.2.x86_64
        NTSeverity: NULL
        Importance: NULL
       EventSource: NULL
         EventUser: NULL
     EventCategory: NULL
           EventID: NULL
   EventBinaryData: NULL
      MaxAvailable: NULL
         CurrUsage: NULL
          MinUsage: NULL
          MaxUsage: NULL
        InfoUnitID: 1
         SysLogTag: yum[32658]:
      EventLogType: NULL
   GenericFileName: NULL
          SystemID: NULL
4 rows in set (0.00 sec)

2.3由于loganalzyer提供的动态网页,所以我们要安装httpd和php

[root@www ~]# yum -y install httpd php php-mysql
[root@www ~]# service httpd start

2.3.1访问web

1434074590797982.png
编辑测试页并访问php
[root@www ~]# vim /var/www/html/index.php
<?php
    phpinfo();
?>

2.3.2访问web

QQ截图20160805141757.png

2.4配置loganalyzer日志分析工具,便于日常维护

[root@www ~]# mkdir /var/www/html/loganalyzer
[root@www ~]# cd /var/www/html/loganalyzer
[root@www loganalyzer]# cp -a /root/loganalyzer-3.6.5/src/* .
[root@www loganalyzer]# cp -a /root/loganalyzer-3.6.5/contrib/* .
[root@www loganalyzer]# chmod +x ./configure.sh 
[root@www loganalyzer]# chmod +x ./secure.sh 
[root@www loganalyzer]# ./configure.sh 
[root@www loganalyzer]# ./secure.sh 
[root@www loganalyzer]# chmod 666 config.php 
[root@www loganalyzer]# chown -R apache.apache ./*

2.4.1访问网页安装loganalyzer

1.png 2.png 3.png 4.png 5.png 6.png 7.png 8.png

相关文章

  • LAMP之rsyslog+loganalyzer系统日志集中管理

    作为运维人员,熟悉系统日志是一项基本功。本文将介绍centos6的系统日志rsyslog及loganalyzer工...

  • 26-LAMP架构

    本章内容 ◆ LAMP介绍◆ PHP配置◆ 实现LAMP应用数据库管理系统phpMyadmin◆ 实现LAMP应用...

  • ELK7 配置案例

    背景说明: 因应管理和日志集中查询需要,利用新版的ELK组件进行了日志系统的搭建。针对特定的两个场景,Linux系...

  • 日志审计系统的基本原理

    日志审计系统简介 什么是日志审计? 综合日志审计平台,通过集中采集信息系统中的系统安全事件、用户访问记录、系统运行...

  • ELK环境部署

    一、ELK原理介绍 ELK可以将我们的系统日志、网站日志、应用系统日志等各种日志进行收集、过滤、清洗、然后进行集中...

  • Linux日志管理:

    rsyslog 系统日志管理 logrotate日志轮转 rsyslog部分: rsyslog是系统专职日志程序,...

  • python脚本解析nginx的json日志

    前一段时间因为公司有日志集中管理平台系统搭建,为了入库统计方便,就把nginx的日志全部格式化成json了。结果近...

  • 集中采购管理系统开发,集中采购管理系统开发解决方案

    集中采购管理系统开发,集中采购管理系统开发解决方案 【本文由汇新云李先生编辑,集中采购管理系统搜索微信:huixi...

  • k8s日志收集实战

    简介 本文主要介绍在k8s中收集应用的日志方案,应用运行中日志,一般情况下都需要收集存储到一个集中的日志管理系统中...

  • Git简易指南

    Git Git 属于分散型版本管理系统,是为版本管理而设计的软件 Subversion 集中型版本管理系统 集中型...

网友评论

      本文标题:LAMP之rsyslog+loganalyzer系统日志集中管理

      本文链接:https://www.haomeiwen.com/subject/cjaqsttx.html