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

mysql搭建日志服务器_Rsyslog+loganalyzer搭建日志服务器教程

Rsyslogloganalyzer搭建日志服务器教程发布时间:2018年08月03日评论数:抢沙发阅读数:2715安装LAMP环境yum-yinsta

Rsyslog+loganalyzer搭建日志服务器教程

发布时间:2018年08月03日 评论数:抢沙发

阅读数:2715

安装LAMP环境yum -y install httpd php php-mysql php-gd mysql mysql-server

httpd用来提供web服务

php使apache支持php,因为loganalyzer是用php编写

php-mysql用于loganalyzer连接数据库

php-gd用于绘图

mysql 是loganalyzer存储数据的地方

安装rsyslog以及rsyslog-mysql接口支持

yum install rsyslog rsyslog-mysql

导入rsyslog-mysql组件的sql创建数据库

cd /usr/share/doc/rsyslog-mysql-5.8.10/

[[email protected] rsyslog-mysql-5.8.10]# ls

createDB.sql

[[email protected] rsyslog-mysql-5.8.10]# mysql -u root -p

这个sql会自动帮你创建rsyslog存储在mysql中的数据的表,等下可以直接被loganalyzer读取数据,然后使用。

91d27706107c2d8595c308afbd3c5268.png

0e841edc32ad894e09e96131ee1aee36.png

配置rsyslog连接mysql账号和密码和授权

grant all on Syslog.* to 'rsyslog'@'localhost' identified by '[email protected]';

flush privileges;

44a3d5b2558076c8301b712423ee0131.png

配置服务端的rsyslog.conf

Rsyslog系统都默认安装好了,直接配置即可。

# vi /etc/rsyslog.conf

$ModLoad immark #immark是模块名,支持日志标记

$ModLoad imudp #imupd是模块名,支持udp协议

$UDPServerRun 514 #允许514端口日志

新增下面两行到 GLOBAL DIRECTIVES

$ModLoad ommysql

*.* :ommysql:localhost,Syslog,rsyslog,[email protected]

1.增加了$ModLoad ommysql这个模块,这个就是rsyslog连接mysql使用的模块

2.*.* :ommysql:localhost,Syslog,rsyslog,[email protected]这里意思是说使用某个可以连接mysql的账号和密码,连接mysql,将数据传输到mysql数据库里面去。

3.udp传输配置依然要开启,那是因为rsyslog客户端会将日志以udp的方式传输到rsyslog服务端,所以双方都要开启同样的传输方式才可以完成传输。

4.需要注意的是,如果开启了防火墙的话,那么记得514端口是rsyslog的传输端口,也要放开访问。

添加模板

在 GLOBAL DIRECTIVES下边添加

e7ad37a1aa3a27101587594704d9d27e.png

$template IpTemplate,"/var/log/%FROMHOST-IP%.log"

*.* ?IpTemplate

& ~

如果我们想要将所有从远程客户端接受到的消息写入到一个以它们的IP地址命名的单个文件中,可以使用这个模板。

示例如下图

eeda5c919ec5b7a66117ea7fabae5bd0.png

修改允许接收外来日志

修改/etc/sysconfig/rsyslog 修改SYSLOGD_OPTIONS为 "-r -x -m 0"   #-r表示允许接收外来的消息,-x表示不解析DNS,

#-m 0表示时间戳标记间隔,如果指定只接受某个或多个ip过来的日志,例"-s 168.1.1.1:168.1.1.2"

cca352494fb6587dde75e2f380c4ba8f.png

客户端测试

Vim /etc/rsyslog.conf

在底部添加 *.* @IP:端口

ed76adefa1a7a72f2070cf96346a2d5b.png

重启客户端服务后,查看进程

在客户端/etc/bashrc末尾添加一个测试脚本,所有执行的命令保存到日志中

export PROMPT_COMMAND='{ msg=$(history 1 | { read x y; echo $y; });logger "[euid=$(whoami)]":$(who am i):[`pwd`]"$msg"; }'

保存后source一下bashrc

5324c7728b35ddddc9c47f20962984c7.png

客户端敲命令测试服务端接收到日志

0448fae75f582fcc9d3df3fba622fad1.png

服务端也可使用logger -p user.notice 'Hello World!'命令测试

c6e7fcd7e10954bd47e24551f1ec9eed.png

Loganalyzer

将其解压目录里的src放置到配置好的apache的web目录里面/var/www/html

tar -zxvf loganalyzer-4.1.6.tar.gz -C /var/www/html

chown -R apache.apache /var/www/html/loganalyzer

Chmod 644 /var/www/html/config.php(config文件需要加权限)

1. step 2 会检查config.php的写入权限,如果没有请授权一下, chmod +w config.php

380f6a36e1ccb684d323ca573328ecd3.png

2. step 3 选择enable user database,使用自定义数据库,然后填写数据库访问信息,这里的数据库是指loganalyzer的用户数据库,而不是rsyslog日志存储的数据库,这里是需要注意的。并且选取require user to be login

b59632cbd21e13d92b6822eb89062dff.png

3. step 5 会将loganalyzer的相关用户表写入到数据库,可以检查loganalyzer的数据库就可以看到了。

b89f44e1b361716b5e763ee9eeaf4dba.png7f27c2fc317e95bf698929b6982eff6e.png

4. step 6 配置loganalyzer的管理员账号,登录loganalyzer界面使用的。

ced5351d6b7c4c02ff280762e63c824a.png

5. step 7 是配置rsyslog的日志存储数据库的访问方法,在source type选择 mysql native,然后填写mysql的访问信息,记住,这里是rsyslog的日志存储数据库,不是loganalyzer的用户数据库。

9f6eb6b0aee387fed19c03146b8d4267.png

6. 完成后会自动跳转提示登录。

如果配置都正常,默认都是有localhost的数据

5b2099866e914e04c72451b3f43f4ddf.png

Ps1:

7e9f12e5f0758bde206c34019aa4c157.png

提示这个错误请检查config.php

dd84fd7e000a56529998958c80578590.png

Ps2:提示no syslog recodes found

7a576a0f0e217df10a4b1218dd8d43dc.png

提示这个错误是连接上了数据库,但是数据库没有数据,可以检查下rsyslog,loganalyzer与mysql之间的链接有没有问题,详情可查看mysql与rsyslog日志

我遇到这个错误去查看日志看到mysql.sock错误,去检查mysql的配置目录,发现默认配置在/tmp/mysql.sock,但是mysql.sock在/var/lib/mysql下,ln -s创建软连接就解决了。

10e4901de95e1990d5823407da060bbb.gif

c0fed6d0d7ea74d8d5bdfb70244ebf07.gif

2c097dc38cb93500b39664d1bd5df0cd.gif

193f902c84ed056add69fe669fcdda3a.gif

4def580d6fc13522ca0c2007c9902d29.gif

81574ecc4129fbee5f49387d84504f43.gif

18cea55dcb1c824791f88b0c8fec58e4.gif

54bf25e49897fd846d4ea5bea5342d71.gif

1ad6608d940170fac7100339dd51d46f.gif

aecf14127e254540b67066525e8121bc.gif

27b89d6f7baaf8cd594ee1a62a38770d.gif

d9836e52c76855cf2e3f7d4ab4cd1264.gif

b78d447905ae939c47bed9f4a83deea2.gif

31d1dbd65123c47a13f93b0b3486ab9a.gif

77fe5e01fb9aaa124ed8be333a21e669.gif

890bbe22ccc6c3144e58c599135968b2.gif

d30a0ed3d5a77c6b7c31b5422d10d6ea.gif

88003f634c8fd5fb708ed3b5ab1e0eb0.gif

b3aa593fa6d1b10f72a8671340b14b87.gif

5b5528dcd74dcb5a44ac61aa6c4f35df.gif

b09fd5cf302907e6d4cd3ba02c8abdf2.gif

d92c828f155aa370b8c5ae6eb4d4d4bb.gif

6fd95c8a04d9ec055d5a67a6d01ebcb0.gif

0ec8fdf8b40b28c126e200fe1f6cb29e.gif

645186d3d392799a7b3691625b549dff.gif

eb7f553f7b780a622fa82e1b20a94892.gif

52e16d32fa5cb20b34c2427dc4e00504.gif

f8db47e7fac2b4389c8187d40b22e289.gif

2e86279b6bc525d077c84f2df6f77b8d.gif

8917ebfbd456af3504b8d13d0bca169d.gif

提交评论

名  字:

邮  箱:

网  址:

清空信息

关闭评论



推荐阅读
  • Linux CentOS 7 安装PostgreSQL 9.5.17 (源码编译)
    近日需要将PostgreSQL数据库从Windows中迁移到Linux中,LinuxCentOS7安装PostgreSQL9.5.17安装过程特此记录。安装环境&#x ... [详细]
  • 本文详细介绍了在 Ubuntu 系统上搭建 Hadoop 集群时遇到的 SSH 密钥认证问题及其解决方案。通过本文,读者可以了解如何在多台虚拟机之间实现无密码 SSH 登录,从而顺利启动 Hadoop 集群。 ... [详细]
  • 基于Net Core 3.0与Web API的前后端分离开发:Vue.js在前端的应用
    本文介绍了如何使用Net Core 3.0和Web API进行前后端分离开发,并重点探讨了Vue.js在前端的应用。后端采用MySQL数据库和EF Core框架进行数据操作,开发环境为Windows 10和Visual Studio 2019,MySQL服务器版本为8.0.16。文章详细描述了API项目的创建过程、启动步骤以及必要的插件安装,为开发者提供了一套完整的开发指南。 ... [详细]
  • Git命令基础应用指南
    本指南详细介绍了Git命令的基础应用,包括如何使用`git clone`从远程服务器克隆仓库(例如:`git clone [url/path/repository]`)以及如何克隆本地仓库(例如:`git clone [local/path/repository]`)。此外,还提供了常见的Git操作技巧,帮助开发者高效管理代码版本。 ... [详细]
  • SecureCRT是一款功能强大的终端仿真软件,支持SSH1和SSH2协议,适用于在Windows环境下高效连接和管理Linux服务器。该工具不仅提供了稳定的连接性能,还具备丰富的配置选项,能够满足不同用户的需求。通过SecureCRT,用户可以轻松实现对远程Linux系统的安全访问和操作。 ... [详细]
  • Amoeba 通过优化 MySQL 的读写分离功能显著提升了数据库性能。作为一款基于 MySQL 协议的代理工具,Amoeba 能够高效地处理应用程序的请求,并根据预设的规则将 SQL 请求智能地分配到不同的数据库实例,从而实现负载均衡和高可用性。该方案不仅提高了系统的并发处理能力,还有效减少了主数据库的负担,确保了数据的一致性和可靠性。 ... [详细]
  • 如何在Java中使用DButils类
    这期内容当中小编将会给大家带来有关如何在Java中使用DButils类,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。D ... [详细]
  • 本文详细介绍了如何在 Django 项目中使用 Admin 管理后台,包括创建超级用户、启动项目、管理数据模型和修改用户密码等步骤。 ... [详细]
  • php更新数据库字段的函数是,php更新数据库字段的函数是 ... [详细]
  • 本文介绍了如何通过Sybase Central连接到示例数据库,并查看其中的表和其他对象。主要内容包括启动Sybase Central、建立连接、查看表列表及表的具体信息。 ... [详细]
  • 解决Parallels Desktop错误15265的方法
    本文详细介绍了在使用Parallels Desktop时遇到错误15265的多种解决方案,包括检查网络连接、关闭代理服务器和修改主机文件等步骤。 ... [详细]
  • 本文详细介绍了 InfluxDB、collectd 和 Grafana 的安装与配置流程。首先,按照启动顺序依次安装并配置 InfluxDB、collectd 和 Grafana。InfluxDB 作为时序数据库,用于存储时间序列数据;collectd 负责数据的采集与传输;Grafana 则用于数据的可视化展示。文中提供了 collectd 的官方文档链接,便于用户参考和进一步了解其配置选项。通过本指南,读者可以轻松搭建一个高效的数据监控系统。 ... [详细]
  • 如何在Linux服务器上配置MySQL和Tomcat的开机自动启动
    在Linux服务器上部署Web项目时,通常需要确保MySQL和Tomcat服务能够随系统启动而自动运行。本文将详细介绍如何在Linux环境中配置MySQL和Tomcat的开机自启动,以确保服务的稳定性和可靠性。通过合理的配置,可以有效避免因服务未启动而导致的项目故障。 ... [详细]
  • 在CentOS 7环境中安装配置Redis及使用Redis Desktop Manager连接时的注意事项与技巧
    在 CentOS 7 环境中安装和配置 Redis 时,需要注意一些关键步骤和最佳实践。本文详细介绍了从安装 Redis 到配置其基本参数的全过程,并提供了使用 Redis Desktop Manager 连接 Redis 服务器的技巧和注意事项。此外,还探讨了如何优化性能和确保数据安全,帮助用户在生产环境中高效地管理和使用 Redis。 ... [详细]
  • 通过利用代码自动生成技术,旨在减轻软件开发的复杂性,缩短项目周期,减少冗余代码的编写,从而显著提升开发效率。该方法不仅能够降低开发人员的工作强度,还能确保代码的一致性和质量。 ... [详细]
author-avatar
bliss
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有