朱晓亮 陈云芳 陆有为
南京邮电大学物联网学院 江苏 210003
本文研究一种基于rsyslog系统日志处理系统,通过收集*nix系统里产生的各种log,分析并确定系统中的问题所在,最终以Web方式展示出来,方便的进行检索和分析,具有较高的理论和实用价值。
对于*nix平台来说,log主要包括应用层的log、系统层的log以及虚拟机的log。
应用层的log:大部分应用层的log默认会存储在/var/log/下面,如果通过ls列出/var/log/下面的目录文件,我们会看到很多熟悉的名字,比如/var/log/apache2,则代表是由apache2服务产生的log文件;再比如/var/log/samba则代表是由Samba服务产生的log文件。
系统层的log:系统的log信息主要是跟Ubuntu的系统信息相关,跟应用层的log关系不是很紧密,常见的包括用户的认证机制的日志信息,系统的daemon,系统的messages,以及系统所有的压缩文件也就是其本身syslog。
虚拟机的log:对于虚拟机来说,目前主流的包括xen以及KVM,其中前者使用范围更为广泛,同样,在/var/log/下有xen/目录,该目录下会包含console/目录,记录通过console登录的信息,domain-builder-ng.log文件记录domU的信息,xen-debug文件以记录xen虚拟机的debug信息等。而对于KVM来说,则包含/var/log/libvirt/目录,该目录下面的文件记录的是KVM相关的log信息。
Syslog是一个很著名的网络协议,是一种在Unix和类Unix的计算机系统上使用的协议,它用于转发以太网络中的日志消息。它实施了基本的syslog协议,并且为syslog协议扩增了基于内容的过渡、丰富的过滤功能和灵活的配置选项,还增添了一些重要功能,比如使用TCP进行传输。
(1) rsyslog的功能
Rsyslog通过队列来耦合两个动作,在队列中,一方作为生产者,一方作为消费者,生产者会生产一些东西,一般,“一些东西”通常是syslog信息,当然,队列也可以用于其他的目的。……