建立Windows下面的syslog日志服务器

我们需要测试一种集中日志系统,要在Windows上建立一个类Linux下的集中日志系统。

经过比较Winsyslog和Kiwisyslog等工具,最终选定Kiwisyslog(http://www.kiwisyslog.com/),它不仅功能齐全,而且提供免费的版本。

Kiwisyslog遵循标准的日志协议(RFC 3164),并支持UDP/TCP/SNMP几种方式的日志输入。它默认是个免费的功能受限版(但功能基本够用了,只是没有找到汉化),自带发送模拟器﹑日志浏览器等实用工具。

我还测试了一下把ACE日志写到syslog的功能。过程记录如下:


1)使用klog工具

这个主要用到kiwisyslog的klog实用工具(这个工具同时提供dll库的调用方式,真是好东西,我决定以后在我的应用里都用它!),它支持直接或用重定向的方法输出日志到kiwisyslog。

klog –m "It's almost lunchtime"

DIR *.* | klog -h 192.168.1.2 -i


但我试图使用ACE应用日志输出到kiwisyslog时(ace_app.exe | klog -h 192.168.1.2 -i的形式),发现日志内容里前后有乱码出现,即ACE的日志输出直接重定向到klog再转到kiwisyslog有问题;并且不能按时间一行一行的输 出,而是等应用程序执行结束时一股脑输出到kiwisyslog(按回车换行切开成一条一条日志)。如果程序非正常结束,还不能将输出日志内容传到 kiwisyslog。


还有一个方法是在Windows通过设置可以把ACE日志输出到系统日志里面。

 ACE_LOG_MSG->set_flags (ACE_Log_Msg::SYSLOG);

然后按下面2)的方法转到kiwisyslog。


2)还可以把Windows下的事件日志转到Linux下的syslog

我们需要第三方的软件来将windows的日志转换成syslog类型的日志后,转发给syslog服务器。

介绍第三方软件evtsys (全称是evntlog to syslog)

 

文件才几十K大小,非常小巧,解压后是两个文件evtsys.dll和evtsys.exe

把这两个文件拷贝到 c:/windows/system32目录下。

 

打开Windows命令提示符(开始->运行 输入CMD)

C:/>evtsys –i –h 192.168.10.100

-i 表示安装成系统服务

-h 指定log服务器的IP地址

如果要卸载evtsys,则:

net stop evtsys

evtsys -u

 

启动该服务:

C:/>net start evtsys

 

打开windows组策略编辑器 (开始->运行 输入 gpedit.msc)

 

在windows设置-> 安全设置 -> 本地策略 ->审核策略 中,打开你需要记录的windows日志。evtsys会实时的判断是否有新的windows日志产生,然后把新产生的日志转换成syslogd可识别的 格式,通过UDP 3072端口发送给syslogd服务器。  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值