syslog的远程日志功能试用

简介: 类别:linux 作者:臭豆腐[trydofor] 来源:www.trydofor.com 日期:2006-08-22 授权:署名-非商业-保持一致 1.0 协议 声明:拷贝、分发、呈现和表演本作品,请保留以上全部信息。

类别: linux 作者: 臭豆腐[trydofor] 来源: www.trydofor.com 日期: 2006-08-22 授权: 署名-非商业-保持一致 1.0 协议 声明: 拷贝、分发、呈现和表演本作品,请保留以上全部信息。

内容摘要:
syslog自身实现了远程log功能,本次试验的目的是实现多台主机的远程日志管理. 能对log进行简单的分离,以便进一步分析和审计.

测试环境

log服务器:192.168.0.1 (logserver) :接收日志
log客户机:192.168.0.2 (logclient) :产生日志

# uname -a
Linux logserver 2.4.21-4.EL #1 Fri Oct 3 18:13:58 EDT 
2003 i686 i686 i386 GNU/Linux

简单配置

syslog自身提供了远程日志功能,这里主要需要完成的功能是:

1.配置syslog使其支持远程日志功能

[服务端]

1) SYSLOGD_OPTIONS增加 -r 标志
#cat /etc/rc.d/init.d/syslog
... ...
if [ -f /etc/sysconfig/syslog ] ; then
        . /etc/sysconfig/syslog
else
        SYSLOGD_OPTIONS="-m 0"
        KLOGD_OPTIONS="-2"
fi
... ...
#cat /etc/sysconfig/syslog
... ...
SYSLOGD_OPTIONS="-r -m 0"
... ...

2) 确认 syslog 开起 514/udp,如果没有,需要添加如下内容
# cat /etc/services |grep syslog
syslog          514/udp


3)重新启动syslog
#service syslog restart

注: kill -HUP `cat /var/run/syslogd.pid`
只是重新载入配置文件(/etc/syslog.conf)

[客户端]

1) 增加host名
# cat /etc/hosts
192.168.0.1       logserver

# ping logserver
PING logserver (192.168.0.1) 56(84) bytes of data.
64 bytes from logserver (192.168.0.1): icmp_seq=0 ttl=64 time=0.234 ms

2) 是syslog远程输出,即把所有指向文件的输出都改成 @logserver
# cat /etc/syslog.conf
*.*                                      @logserver

3) 重载入 syslog 配置
kill -HUP `cat /var/run/syslogd.pid`

[验证连接]

在client上,重启一个服务
#service vsftpd restart
然后在server上看 /var/log/message
能看到从192.168.0.2发送的log

[简单结论]

以上步骤,已经实现了syslog的远程日志功能,但是各个log是混在一起的
包括本机(server)和远程(client,可能会多太客户机),这样不利于log的
的分离和统计.

日志分离

首先要进行客户端的输出粒度,然后在服务端在进行二次分析和分离.

syslog.conf个格式如下.(man 和 google能找到,不再累诉)
设备.行为级别 [;设备.行为级别] 记录行为
(注意各栏之间用[Tab]来分隔,用空格是无效的。)

===============================================================
太有难度了,等我闲下来再继续,参考下别的log项目

[added 2006-08-24]
需求变化了,俺也不用费脑筋了,最简单的方法,就是crontab + grep了
每天23:59分,对log文件grep一下,就可以按ip分离和保存了,爱怎么整都行

参考资料:
 
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
3月前
|
存储 Go
Go 浅析主流日志库:从设计层学习如何集成日志轮转与切割功能
本文将探讨几个热门的 go 日志库如 logrus、zap 和官网的 slog,我将分析这些库的的关键设计元素,探讨它们是如何支持日志轮转与切割功能的配置。
93 0
Go 浅析主流日志库:从设计层学习如何集成日志轮转与切割功能
|
6月前
|
C++
C++-实现日志log功能
C++-实现日志log功能
|
6月前
|
存储 运维 监控
如何在 Spring Boot 中设计和实现业务操作日志功能?
如何在 Spring Boot 中设计和实现业务操作日志功能?
954 4
|
3月前
|
数据可视化 API 开发工具
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用相机日志跟踪功能(C++)
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用相机日志跟踪功能(C++)
33 0
|
9月前
|
SQL XML 前端开发
Spring Boot + vue-element 开发个人博客项目实战教程(十八、操作日志功能实现)2
Spring Boot + vue-element 开发个人博客项目实战教程(十八、操作日志功能实现)2
91 0
Spring Boot + vue-element 开发个人博客项目实战教程(十八、操作日志功能实现)2
|
4月前
|
设计模式 Java 数据库连接
设计模式与面向对象编程:举例说明在Java中应用工厂模式的场景,并编写一个简单的工厂模式实现。编写一个Java装饰器,用于添加日志记录功能到现有方法上。
设计模式与面向对象编程:举例说明在Java中应用工厂模式的场景,并编写一个简单的工厂模式实现。编写一个Java装饰器,用于添加日志记录功能到现有方法上。
23 0
|
5月前
|
JSON 监控 数据可视化
实时日志分析:通过Golang编写实时日志分析模块,加强公司监控管理软件的日志监控功能
在当今数字化时代,企业面临着庞大而复杂的网络环境,对实时监控和日志分析的需求变得日益迫切。本文将介绍如何使用Golang编写实时日志分析模块,以增强公司监控管理软件的日志监控功能。通过本文的指导,你将能够建立一个定制的实时日志分析系统,更好地监测和管理公司的网络活动。
219 0
|
5月前
|
消息中间件 监控 关系型数据库
134 日志监控告警系统案例(功能架构分析)
134 日志监控告警系统案例(功能架构分析)
70 0
|
8月前
|
Java API 数据安全/隐私保护
一张思维导图带你学会SpringBoot使用AOP实现日志管理功能
一张思维导图带你学会SpringBoot使用AOP实现日志管理功能
118 0
|
8月前
|
监控 数据可视化 安全
Baumer工业相机堡盟相机如何使用Trace功能(相机日志追踪的使用和优点以及行业应用)(C++)
Baumer工业相机堡盟相机如何使用Trace功能(相机日志追踪的使用和优点以及行业应用)(C++)
70 0