利用Rsyslog集中收集系统日志和用户操作记录以及相关处理方法

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

   相信从事linux服务器运维的筒子们都和我一样,每天都在和各种系统日志、服务日志打交道。这些日志记录了系统或服务每天发生的各种状态。通过观察日志我们可以及时的解决掉很多系统和服务故障。

   今天主要写的是利用rsyslog集中收集系统日志和用户操作记录,以及对收集到的日志进行相关处理的方法。例如服务器异常监控和用户行为审计。


部署架构:

角色:应用服务器、日志汇总服务器、数据库、日志监控和日志查询

image

这里针对上图做下说明:

1、 把应用服务器上的日志汇总到日志汇总服务器上。

2、 把汇总服务器上的日志写到数据库中。

3、 针对汇总日志进行相关处理,例如日志监控和历史查询。


实验环境:

操作系统:Centos 5.8 x86_64


一、配置日志收集部分

在日志汇总服务器上操作:

因为Centos 5.8 x86_64默认使用syslog服务,所以这里的日志汇总服务器需要手工安装rsyslog。

1
2
3
service syslog stop
chkconfig --del syslog
yum -y  install  rsyslog
1
2
3
vim  /etc/sysconfig/rsyslog
     #SYSLOGD_OPTIONS="-m 0"
     SYSLOGD_OPTIONS= "-c 2 -r 514 -x -m 240"

各参数作用:

-c 指定运行兼容模式。

-r 指定监听端口。

-x 在接收客户端消息时,禁用DNS查找。需和-r参数配合使用。

-m 标记时间戳。单位是分钟,为0时,表示禁用该功能。

image

1
2
3
chkconfig rsyslog on
service rsyslog start
ps  -ef| grep  rsyslog

image


在应用服务器上操作:

1
2
echo  "*.* @192.168.154.128"  >>  /etc/syslog .conf
service syslog restart
1
2
vim  /etc/bashrc
     export  PROMPT_COMMAND= '{ msg=$(history 1 | { read x y; echo $y; });logger "[euid=$(whoami)]":$(who am i):[`pwd`]"$msg"; }'

image

1
source  /etc/bashrc

我们在应用服务器上随便输入几个命令,看看日志汇总服务器上是否都已正常收到。

应用服务器上随便输几个命令。

image

日志汇总服务器:

1
tail  -f  /var/log/messages

image


配置日志入库部分

创建数据库和表结构:

1
cat  /usr/share/doc/rsyslog-mysql-3 .22.1 /createDB .sql

image

1
mysql <  /usr/share/doc/rsyslog-mysql-3 .22.1 /createDB .sql
1
2
grant  all  on  Syslog.*  to  rsyslog_user@ '%'  identified  by  'rsyslog_pass' ;
flush  privileges ;

image

日志汇总服务器上操作:

1
yum –y  install  rsyslog-mysql
1
2
3
vim  /etc/rsyslog .conf
     $ModLoad ommysql
     *.* :ommysql:192.168.154.128,Syslog,rsyslog_user,rsyslog_pass

格式:*.* :ommysql:IP:库名:用户:密码

image

1
service rsyslog restart

在数据库验证是否正常入库

image

完成上述几步,就可以着手进行日志处理相关方面的工作了。


关于日志处理部分

常见的日志处理大致有以下几种方法:

1、使用nagios对日志进行进行状态监控,例如发现error状态就发消息给管理员。让管理员及时的处理服务器相关故障。

2、对日志进行分析,例如loganalyzer日志分析工具。

3、查询数据库中的日志信息,可检索某用户对某台机器都进行了哪些操作。


今天先写到这里,如果大家有不明白的地方,欢迎和我沟通^_^。



本文转自 cyr520 51CTO博客,原文链接:http://blog.51cto.com/cyr520/1214850

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
27天前
|
Shell Linux C语言
【Shell 命令集合 网络通讯 】Linux 查看系统中的UUCP日志文件 uulog命令 使用指南
【Shell 命令集合 网络通讯 】Linux 查看系统中的UUCP日志文件 uulog命令 使用指南
29 0
|
4月前
|
存储 监控 数据可视化
小白带你学习linux的ELK日志收集系统
小白带你学习linux的ELK日志收集系统
157 0
|
5月前
|
Web App开发 监控 NoSQL
ELK日志分析系统部署文档 1
ELK日志分析系统部署文档
110 0
|
4月前
|
存储 监控 安全
带你读《Apache Doris 案例集》——07查询平均提速700% ,奇安信基于 Apache Doris 升级日志安全分析系统(1)
带你读《Apache Doris 案例集》——07查询平均提速700% ,奇安信基于 Apache Doris 升级日志安全分析系统(1)
|
4月前
|
SQL 存储 安全
带你读《Apache Doris 案例集》——07查询平均提速700% ,奇安信基于 Apache Doris 升级日志安全分析系统(2)
带你读《Apache Doris 案例集》——07查询平均提速700% ,奇安信基于 Apache Doris 升级日志安全分析系统(2)
105 0
|
17天前
|
C++
QT实现一个简单的日志打印系统
QT实现一个简单的日志打印系统
|
2月前
|
调度 数据库 数据安全/隐私保护
ABAP 系统里使用事务码 SM21 查看系统日志的技巧介绍
ABAP 系统里使用事务码 SM21 查看系统日志的技巧介绍
44 0
|
3月前
|
存储 JSON 运维
【运维】Powershell 服务器系统管理信息总结(进程、线程、磁盘、内存、网络、CPU、持续运行时间、系统账户、日志事件)
【运维】Powershell 服务器系统管理信息总结(进程、线程、磁盘、内存、网络、CPU、持续运行时间、系统账户、日志事件)
49 0
|
3月前
|
Java 程序员 数据库
业务需求-用AOP记录系统操作日志
全栈老司机 程序员林中酒 更新了本文详细介绍了如何使用AOP(面向切面编程)记录系统操作日志的业务需求,包括需求分析、技术实现分析、数据库设计和代码实现等各个环节。您将了解如何高效、规范地实现这一功能
|
4月前
|
Prometheus Kubernetes Cloud Native
prometheus|云原生|轻型日志收集系统loki+promtail的部署说明
prometheus|云原生|轻型日志收集系统loki+promtail的部署说明
154 0

热门文章

最新文章