Linux 之rsyslog+LogAnalyzer 日志收集系统
一、LogAnalyzer介绍
LogAnalyzer工具提供了一个易于使用,功能强大的前端,用于搜索,查看和分析网络活动数据,包括系统日志,事件日志和其他许多日志源。由于它只是将数据展示到我们用户的面前,所以数据本身需要由另一个程序收集,比如syslogd,rsyslog(现在是发行版的默认的syslogd),WinSyslog或MonitorWare代理。LogAnalyzer同样适用于Linux和Windows。它主要是用PHP编写的自由软件,基于GPL的开源应用程序。数据可以从数据库,也可以从纯文本文件而获得。
本案例规划图:

二、在rsyslog服务器上部署 LAMP环境。
1.安装httpd
[root@rsyslog ~]# yum install httpd -y
[root@rsyslog ~]# systemctl start httpd
[root@rsyslog ~]# systemctl enable httpd
2.安装mysql
[root@rsyslog ~]# yum install mysql mysql-server -y
[root@rsyslog ~]# systemctl start mariadb
[root@rsyslog ~]# systemctl enable mariadb
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
[root@rsyslog ~]# mysqladmin -u root password 'rsyslog.ppp'
测试下登陆,无问题后,安装php
3.安装php
[root@rsyslog ~]# yum install php php-mysql php-gd -y
[root@rsyslog ~]# cat /var/www/html/test.php
<?php
phpinfo();
?>
打开客户端浏览器,进行访问测试http://192.168.30.67/test.php
4.安装rsyslog,并加入开机启动
[root@rsyslog ~]# wget -O /etc/yum.repos.d/rsyslog.repo http://rpms.adiscon.com/v8-stable/rsyslog.repoc
[root@rsyslog ~]# yum install rsyslog-* --skip-broken -y
[root@rsyslog ~]# systemctl enable rsyslog
5.rsyslog建库脚本,路径在/usr/share/doc/rsyslog-mysql-8.18.0/createDB.sql,现在我们登陆数据库创建个rsyslogdb库,并导入建库脚本
[root@rsyslog ~]# more /usr/share/doc/rsyslog-mysql-8.18./createDB.sql
CREATE DATABASE rsyslogdb;
USE rsyslogdb; [root@rsyslog ~]# mysql -uroot -p < /usr/share/doc/rsyslog-mysql-8.18./createDB.sql
Enter password:
登陆测试一下库建好了没
[root@rsyslog ~]# mysql -uroot -p rsyslogdb
Enter password:
....
MariaDB [rsyslogdb]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| rsyslogdb |
+--------------------+
rows in set (0.00 sec) 创建用户并授权
MariaDB [rsyslogdb]> GRANT ALL ON rsyslogdb.* TO rsyslogdbadmin@localhost IDENTIFIED BY 'rsyslog.ppp';
Query OK, rows affected (0.00 sec) MariaDB [rsyslogdb]> flush privileges;
Query OK, rows affected (0.00 sec) MariaDB [rsyslogdb]> exit 最后测试下该用户的登陆
[root@rsyslog ~]# mysql -ursyslogdbadmin -p rsyslogdb
6.修改rsyslog.conf文件,修改后如下:
[root@rsyslog ~]# egrep -v '^$|^#' /etc/rsyslog.conf
$ModLoad ommysql
$ModLoad imuxsock # provides support for local system logging (e.g. via logger command)
$ModLoad imjournal # provides access to the systemd journal
$ModLoad immark # provides --MARK-- message capability
$ModLoad imudp
$UDPServerRun
$ModLoad imtcp
$InputTCPServerRun
$WorkDirectory /var/lib/rsyslog
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
$template Remote,"/data/log/%fromhost-ip%/%fromhost-ip%_%$YEAR%-%$MONTH%-%$DAY%.log"
:fromhost-ip, !isequal, "127.0.0.1" ?Remote
$IncludeConfig /etc/rsyslog.d/*.conf
$OmitLocalLogging on
$IMJournalStateFile imjournal.state
*.info;mail.none;authpriv.none;cron.none /data/log/messages
authpriv.* /var/log/secure
mail.* -/var/log/maillog
cron.* /var/log/cron
*.emerg :omusrmsg:*
uucp,news.crit /var/log/spooler
local7.* /var/log/boot.log
*.* :ommysql:127.0.0.1,rsyslogdb,rsyslogdbadmin,rsyslog.ppp
重启rsyslog 服务,现在登陆mysql 进行验证。
MariaDB [rsyslogdb]> use rsyslogdb
Database changed
MariaDB [rsyslogdb]> select count(*) from SystemEvents;
+----------+
| count(*) |
+----------+
| |
+----------+
row in set (0.00 sec) MariaDB [rsyslogdb]> select * from SystemEvents where ID=\G;
*************************** . row ***************************
ID:
CustomerID: NULL
ReceivedAt: -- ::
DeviceReportedTime: -- ::
Facility:
Priority:
FromHost: rsyslog
Message: [origin software="rsyslogd" swVersion="8.18.0" x-pid="" x-info="http://www.rsyslog.com"] start
NTSeverity: NULL
Importance: NULL
EventSource: NULL
EventUser: NULL
EventCategory: NULL
EventID: NULL
EventBinaryData: NULL
MaxAvailable: NULL
CurrUsage: NULL
MinUsage: NULL
MaxUsage: NULL
InfoUnitID:
SysLogTag: rsyslogd:
EventLogType: NULL
GenericFileName: NULL
SystemID: NULL
row in set (0.00 sec) ERROR: No query specified
三、部署LogAnalyzer
1.下载
[root@rsyslog ~]# wget -c http://download.adiscon.com/loganalyzer/loganalyzer-3.6.6.tar.gz
解压
[root@rsyslog ~]# tar zxvf loganalyzer-3.6..tar.gz
复制文件到
[root@rsyslog ~]# cp -r loganalyzer-3.6./src/ /var/www/html/loganalyzer
[root@rsyslog ~]# cp -r loganalyzer-3.6./contrib/* /var/www/html/loganalyzer/
进入到loganalyzer 程序中,将以下脚本赋予执行权限
[root@rsyslog ~]# cd /var/www/html/loganalyzer/
[root@rsyslog loganalyzer]# chmod +x configure.sh secure.sh
运行configure.sh,将创建一个空白的config.php配置文件
[root@rsyslog loganalyzer]# ./configure.sh
2.打开浏览器访问 http://192.168.30.67/loganalyzer 安装界面,如下,会有一个error,选择here
选择here进行安装

选择next
验证config文件,就是我们上一不运行configure.sh 生成的文件

基本配置里,填写数据库连接信息

创建表,直接选择next

检查没有失败的状态。继续下一步

创建一个rsyslog的web管理用户,名字叫rsyslog

检查详细信息

此处,source type 需要修改成mysql native 源,随后填写mysql相关信息,注意(Database Tablename 处我写填写错误,正确应该是SystemEvents)

完成后,下一步就是登陆loganalyzer了。

输入rsyslog,及设定的密码。

在这里,可以看到最后rsyslog server 收集到的日志,已经展示在首页了。

Linux 之rsyslog+LogAnalyzer 日志收集系统的更多相关文章
- rsyslog+LogAnalyzer 日志收集
Linux 之rsyslog+LogAnalyzer 日志收集系统 一.LogAnalyzer介绍 LogAnalyzer工具提供了一个易于使用,功能强大的前端,用于搜索,查看和分析网络活动数据,包括 ...
- Linux 之 rsyslog+mysql+LogAnalyzer 日志收集系统
作者:邓聪聪 LogAnalyzer 是一个 syslog 和其他网络事件数据的 Web 前端工具,提供简单易用的日志浏览.搜索和基本分析以及图表显示 由于公司部分项目需求使用日志记录系统,随笔记录 ...
- 004-linux下配置rsyslog日志收集服务器案例 rsyslog+loganalyzer日志服务器,无法添加报表模板解决
centos6系统 client1:192.168.1.33 centos7系统 client2:192.168.1.44 centos7系统 master:192.168.1.55 配置服务端mas ...
- ELK+kafka构建日志收集系统
ELK+kafka构建日志收集系统 原文 http://lx.wxqrcode.com/index.php/post/101.html 背景: 最近线上上了ELK,但是只用了一台Redis在 ...
- Rsyslog+ELK日志分析系统
转自:https://www.cnblogs.com/itworks/p/7272740.html Rsyslog+ELK日志分析系统搭建总结1.0(测试环境) 因为工作需求,最近在搭建日志分析系统, ...
- Rsyslog+ELK日志分析系统搭建总结1.0(测试环境)
因为工作需求,最近在搭建日志分析系统,这里主要搭建的是系统日志分析系统,即rsyslog+elk. 因为目前仍为测试环境,这里说一下搭建的基础架构,后期上生产线再来更新最后的架构图,大佬们如果有什么见 ...
- Flume -- 开源分布式日志收集系统
Flume是Cloudera提供的一个高可用的.高可靠的开源分布式海量日志收集系统,日志数据可以经过Flume流向需要存储终端目的地.这里的日志是一个统称,泛指文件.操作记录等许多数据. 一.Flum ...
- [转载] 一共81个,开源大数据处理工具汇总(下),包括日志收集系统/集群管理/RPC等
原文: http://www.36dsj.com/archives/25042 接上一部分:一共81个,开源大数据处理工具汇总(上),第二部分主要收集整理的内容主要有日志收集系统.消息系统.分布式服务 ...
- 分布式日志收集系统Apache Flume的设计详细介绍
问题导读: 1.Flume传输的数据的基本单位是是什么? 2.Event是什么,流向是怎么样的? 3.Source:完成对日志数据的收集,分成什么打入Channel中? 4.Channel的作用是什么 ...
随机推荐
- Mac怎么快速创建便签和发送附件的邮件
1.如何快速创建便签 在Mac的任意界面选中文字:shift+command+y 就能创建便签2.如何快速发送附件的邮件(网页界面) 在Safari网页界面 command ...
- PHP进程之信号捕捉中的declare(ticks=1)
转自:http://blog.csdn.net/gavin_new/article/details/65629223 一. 语句在php中的意义 php中,declare(ticks=n)和regis ...
- centos7 安装php 5.x.x 报错
错误1: /usr/src/php-5.2.9/ext/dom/node.c:In function 'dom_canonicalization': /usr/src/php-5.2.9/ext/do ...
- 如何让Beamer的logo放在右上角
# 位置需要导入包```\usepackage{beamerfoils}\usepackage{tikz}\usepackage{pgf}\MyLogo{%%\includegraphics[heig ...
- Jmeter-ForEach控制器
ForEach Controller需要配合‘用户定义的变量’来使用,作用是参数化 名称:字面意思,ForEach Controller的名称 注释:字面意思 输入变量前缀:变量的前缀:如要使用的变量 ...
- 每天一个linux命令(目录文件操作):【转载】linux文件属性详解
Linux 文件或目录的属性主要包括:文件或目录的节点.种类.权限模式.链接数量.所归属的用户和用户组.最近访问或修改的时间等内容.具体情况如下: 命令: ls -lih 输出: [root@loc ...
- (转)spring AOP探索
原文地址:http://www.cnblogs.com/zuoxiaolong/p/spring6.html 自己整理后,供自己学习方便: 目前由AOP联盟给出了AOP的标准,AOP联盟的规范只是提供 ...
- BZOJ4709 Jsoi2011 柠檬【决策单调性+单调栈】
Description Flute 很喜欢柠檬.它准备了一串用树枝串起来的贝壳,打算用一种魔法把贝壳变成柠檬.贝壳一共有 N (1 ≤ N ≤ 100,000) 只,按顺序串在树枝上.为了方便,我们从 ...
- ajax 上传读取excel
$("#btnImport").click(function () { $("#File").click() })///委托 $("#File&quo ...
- Python学习-str与byte类型以及编码
Python 3最重要的新特性之一是对字符串和二进制数据流做了明确的区分.文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示.Python 3不会以任意隐式的方式混用str和b ...