日志系统rsyslog及其Web界面

在系统运维工作中,记录日志是重中之重,它可以帮助我们快速定位问题所在,监控服务器的运行状态等等,而且一般日志都是实时记录的,所以如果有黑客入侵,我们可以迅速中断网络或者电源来查看日志分析黑客的信息。

如果是一个在线的非常繁忙的服务器,那么它的日志记录量是非常大的,所以我们就需要建立专门的日志记录系统,在CentOS6和7上使用的就是rsyslog。其实我们的每个应用程序和内核都可以各自记录日志,而且它们记录日志的格式等各不相同,所以rsyslog可以将这些程序和内核的日志记录功能包揽过来,进行统一的记录,这样既规范又减轻了各程序开发日志功能的工作。

Rsyslog支持的功能:

多线程;
UDP, TCP, SSL, TLS, RELP
MySQL, PGSQL, Oracle等多种关系数据库中
强大的过滤器,可实现过滤系统信息中的任意部分
自定义输出格式
适用于企业级别日志记录需求

核心概念:

facility: 设施,从功能或程序上对日志进行分类,并由专门的工具(facility)负责记录相应的日志信息;

auth:认证相关
authpriv:认证权限相关
cron:计划任务相关
daemon:守护进程相关
kern:内核相关
lpr:打印相关
mail:邮件相关
mark:防火墙标记
news:新闻信息
security:安全相关
syslog:自身日志
user:用户相关
uucp:Unix to Unix copy,早期系统文件共享服务
local0 - local7:用户自定义facility

priority:级别

debug:调试
info:除debug外的所有信息
notice:注意
warn, warning:警告
err, error:错误信息
crit:蓝色警报
alert:橙色警报
emerg, panic:红色警报
指定级别的方式:
*: 所有级别
none: 没有级别
priority: 比此级别高的(包含)所有级别的日志信息都会记录
=priority: 仅记录指定级别

rsyslog的配置文件:/etc/rsyslog.conf

RULLS:

facility.priority [-]target

设施.级别   何处

Target之前的-表示不直接同步到磁盘上而是异步写入,先保存到内存中,默认除了mail其它的都是同步

target:

文件路径:将日志记录于指定的文件中;在文件路径之前使用"-",表示异步写入;
用户:将日志信息通知给文件
*: 所有用户
日志服务器:@SERVER
管道:| COMMAND

文件记录日志文件的格式:

事件产生的时间 主机名 进程(PID): 事件

有些日志记录二进制格式:

成功登录系统的日志:/var/log/wtmp

查看命令:last

失败的登录的尝试:/var/log/btmp

查看命令:lastb

lastlog命令:显示当前系统每个用户各自最近一次的登录信息;

模块:

启用本机成为日志服务器:

$ModLoad imudp #通过UDP的514端口搜集日志信息,即将自己当做日志服务器
$UDPServerRun 514
$ModLoad imtcp #通过TCP的514端口搜集日志信息,即将自己当做日志服务器
$InputTCPServerRun 514

我们看到web2是我们的web服务器和rsyslog客户端,db是我们的数据库和rsyslog服务器,并且日志成功保存到了db之上。接下来我们演示一下日志保存到MariaDB数据库和使用web gui界面管理日志。

最好在客户端和服务端都安装rsyslog-mysql包:

在服务端导入rsyslog所需数据库文件:

创建客户端登陆用户并授权:

在客户端添加所需模块并定义数据库位置:

客户端重启日志服务,可以看到数据库中已经有了web2的日志:

下载并解压缩loganalyzer-3.6.5,将其src子目录移动到/web下命名为log:

#拷贝其配置脚本和安全脚本,并运行之

添加配置界面:

查看web服务的运行用户:

更改/web/log及其子目录的属主为http:

配置web服务器:

访问web服务器根据向导安装loganalyzer:

最重要的就是这一步:

好了已经可以看到web2的日志了:

测试在web2上安装个zsh:

可以直接同步到mysql:

OK,我们的日志功能就介绍到这里了,还有像ELK这样的应用我们有时间再介绍,如有错误敬请指出。

时间: 2024-08-10 21:28:01

日志系统rsyslog及其Web界面的相关文章

Filebeat +Redis+ELK处理Nginx日志系统

(一)简述: filebeat:具有日志收集功能,是下一代的Logstash收集器,但是filebeat更轻量,占用资源更少,适合客户端使用. redis:Redis 服务器通常都是用作 NoSQL 数据库,不过 logstash 只是用来做消息队列. logstash:主要是用来日志的搜集.分析.过滤日志的工具,支持大量的数据获取方式.一般工作方式为c/s架构,client端安装在需要收集日志的主机上,server端负责将收到的各节点日志进行过滤.修改等操作在一并发往elasticsearch

rsyslog日志系统

1 rsyslog日志系统 linux上,应用程序和内核都需要记录日志.负责记录应用程序的是syslogd,记录内核的则是klogd.centos 5上使用的是syslog,但由于其功能过于薄弱和单一,在centos 6和7上被rsyslog所取代.事实上rsyslog是一个服务. 日志:历史事件的相关记录.早期时就有航海日志. 记录的内容:事件发生的时间.事件内容. 日志级别:事件的关键性程序,loglevel. 1.1 rsyslog的优势 1.支持多线程. 2.能够基于UDP, TCP, 

rsyslog日志系统浅析

Rsyslog时CentOS6.X自带的一款系统日志工具,相对与Centos5的syslog,有了很大的提升,拥有如下特性: 1.支持多线程 2.支持TCP,SSL,TLS,RELP等协议 3.支持将日志写入MySQL, PGSQL, Oracle等多种关系型数据中 4.拥有强大的过滤器,可实现过滤系统信息中的任意部分 5.可以自定义日志输出格式 6.适用于企业级的日志记录需求 今天,我们就来了解一下Rsyslog的使用以及利用loganalyzer来通过网页管理日志. 1.rsyslog的配置

集中式日志系统 ELK 协议栈详解

1.ELK介绍 1.1 elasticsearch 1.1.1 elasticsearch介绍 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是第二流行的企业搜索引擎.设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便. 1.1.2 elasticsearch几个重要术语 NRT elasticsea

集中日志服务器Rsyslog

http://www.gaizaoren.org/archives/408 基于主机的管理一般需要收集服务器的日志信息用于及时发现错误,处理故障. 搭建linux下的集中日志服务器的程序一般可以用syslog,rsyslog,syslog-ng,还有scribe和fluentd等. 基本每一种方式都是服务器端和客户端的模式. 一般syslog,syslog-ng,rsyslog用于收集系统日志,scribe和fluentd用于收集业务日志,rsyslog和syslog-ng也可以收集业务日志,并

【Yii系列】错误处理和日志系统

缘起 跟随上一章的脚步,上一章中,我们主要讲解了在用户发起请求,解析请求,服务器反馈请求以及session的一些知识点,这过程中,难免会遇到一些问题,比方说数据库查询失败,用户输入导致脚本出错,网络问题等等突发情况,对于突发情况,做过软件的一般都知道,会有错误处理和日志去记录下这个过程,同样的,Yii也提供了类似的功能帮助我们去抓住错误,记录错误,并且对相应错误做出对应处理. 错误处理 Yii 内置了一个error handler错误处理器. 所有非致命PHP错误(如,警告,提示)会转换成可获取

日志系统之基于Zookeeper的分布式协同设计

最近这段时间在设计和实现日志系统,在整个日志系统系统中Zookeeper的作用非常重要--它用于协调各个分布式组件并提供必要的配置信息和元数据.这篇文章主要分享一下Zookeeper的使用场景.这里主要涉及到Zookeeper在日志系统中的使用,但其实它在我们的消息总线和搜索模块中也同样非常重要. 日志元数据 日志的类型和日志的字段这里我们统称为日志的元数据.我们构建日志系统的目的最终主要是为了:日志搜索,日志分析.这两大块我们很大程度上依赖于--ElasticSearch(关于什么是Elast

RHEL7.0 日志系统

前言: 本文章转自我的个人博客 http://www.anyisalin.com 欢迎大家访问 此文章是我学习RHCE7.0时所记笔记,希望能够对大家有所帮助 系统日志 进程和操作系统内核需要能够未发生的时间记日志.这些日志可用于系统审核和问题的故障排除.依照惯例,这些日志永久存储在 /var/log 目录中 RHEL7中的日志系统 红帽企业Linux 中内建了一个基于系统日志协议的标准日志记录系统.许多程序使用此系统记录事件,并将它们整理到日志文件中.Red Hat Enterprise Li

RDIFramework.NET ━ 9.13 系统日志与系统异常管理 ━ Web部分

RDIFramework.NET ━ .NET快速信息化系统开发框架 9.13  系统日志与系统异常管理 -Web部分  一个软件在投入运行时不可能没有任何异常,在软件发生异常时及时的记录下来,也好我们及时对异常进行跟踪,以解决发生的异常,避免异常的再次发生.异常分为两种情况,一种为客户端发生的异常,另一种为服务端发生的异常.对于客户端发生的异常,通常都会及时的弹出,用户看到后可以反馈给我们.服务器端产生的异常会自动记录到数据库中,管理员可以通过框架异常管理进行查看操作. 框架日志管理对于框架的