Kiwi Syslog是属于SolarWinds的基于Windows的日志服务器,相信部分朋友都用过SolarWinds的管理软件,功能非常强大,有兴趣的朋友可以上其官网了解 http://www.solarwinds.cn

    今天我们主要是讲Syslog服务器,网上也能搜索到相当多的教程,但都只是讲到将日志保存为文件。试想一下,一年下来就有三百多个文件,如果某天真要通过日志排查故障,要从几百个文本文档中找到有用信息,光想想就觉得头痛了。


    本文将介绍将日志信息保存到MSSQL数据库,通过开发Web前台来快速检索日志。也是将我使用该软件七八年的经验分享给大家。

    Kiwi Syslog的优点非常多,安装也很简单,在此就不再详述,本文只介绍思路和设置部分。

    各位朋友如果有更好的意见和建议,欢迎与我联系,谢谢!

        

    我使用的软件版本为8.1.6(已使用多年,设置较简单)和8.3.7(网上有破解版,设置稍复杂,本文以此版本为例)

    1、安装完成后,点击File -> Setup 打开设置界面。右侧的Formatting下有两项,Custom file formats是设置保存为文本文档的格式,Custom DB formats是设置保存至数据库的格式。右击“Add new custom DB format”创建新的格式。

     wKiom1RIXb-BMNqoAAG1k-DQ3Kw513.jpg       spacer.gif 


    2、在右侧的上方 “Type” 下拉框中选择“SQL Database” 项,下面可以根据需要选择字段,默认设置即可。 也可以导入到其它数据库,有条件的朋友可以选择。    wKioL1RIXifBYj1tAAPWaKfXPZM839.jpg    spacer.gif       

    3、左侧的“Rules - Actions”项下默认有两项,Display和Log to file,右击“Actions”,选择“Add action”

    wKioL1RIXk2jiRLVAACLYG98G50221.jpg    spacer.gif    


    4、在右侧上方的"Action"项下选择“Log to Database”

    wKioL1RIXlyB_fSXAAHvZ0ksXaE273.jpg    spacer.gif    

    5、点击下图红色标识所示的图标,设置数据库连接属性。

     wKioL1RIXnCxIvO1AAHNZ9XikBw730.jpg   spacer.gif


    6、在"Provider" 下选择“Microsoft OLE DB Provider for SQL Server” 项。8.1.6版本无此选项,默认是通过ODBC连接。

    wKiom1RIXk3ziGM5AAFP0AEuRCw031.jpg    spacer.gif

    7、"Connection" 栏下的设置如下所示:第一步输入数据库的服务器名称,第二步输入服务库的帐号和密码,第三步选择数据库(需要提前创建好空数据库)。点击“Test Connection”提示数据库连接成功即可,点击“OK”返回。

     wKiom1RIXrDRondEAAGNkgefxMs993.jpg   spacer.gif

    8、在“Data link connection string” 下只看到User ID=sa,在后面加入“PWD=******;”(****即为你的sa的密码,后面需要加分号; )。在Database type/field format下拉菜单中选择“Kiwi SQL format ISO yyyy-dd-dd”项。

    设置已经完成了,点击“Create table”按钮可在数据库中创建表,点击“Test”按钮可看到连接成功的信息。

   wKiom1RIj_nDcb12AALBJWUNIws982.jpg     spacer.gif

9、至此,日志服务器的部分已全部设置完成,日志能够保存到MSSQL数据库中了。


第二部分:服务器和网络设备的设置

   Windows服务器设置

   Windows操作系统本身并不支持把日志发送到SYSLOG服务器去,我们可以借助Evtsys工具。Evtsys只有几十KB,提供发送Windows日志到syslog服务器的一种方式。它支持Windows Server 2008,支持32和64位环境。evtsys被设计用于高负载的服务器,Evtsys快速、轻量、高效率。并可以作为Windows服务存在。


下载Evtsys后,将其复制到系统目录Windows\system32。然后在CMD下执行:

evtsys.exe -i -h 10.100.1.200 -p 514

这个是标准格式,亦可精简为:

evtsys -i -h 10.100.1.200

参数说明:

    i是安装成Window服务;

    h是syslog服务器地址;

    p是syslog服务器的接收端口。

    默认下,端口可以省略,默认是514.

    执行完后,需要启动Evtsys服务,命令是:

    net start evtsys

    查看Windows的“服务”,发现在原本Event Log服务下面增加了一个“Eventlog to Syslog”,并且已经启动。

    停止 Evtsys服务,命令是:    net stop evtsys

    卸载该服务的命令是: evtsys -u


    网络设备的设置

    Switch#configure t

    Switch(config)#logging on     #开启日志服务

    Switch(config)#logging host 10.100.1.200     #定义日志服务器IP地址

    Switch(config)#logging facility local7             #定义facility级别,默认为7

    Switch(config)#logging trap 7                     #定义severity级别(0-7;日志记录级别 7表示全部启用)

    Switch(config)#logging source-interface e0         #日志发出使用的端口

    Switch(config)#exit

    一般只需前面两个命令即可,后面几条命令采用默认设置。



第三部分:开发Web平台,查询日志

        有兴趣的朋友可以开发一个简单的Web查询平台。我自己通过ASP开发了一个查询平台,选择IP地址、时间段、日志等级即可以查询。通过日志分析故障的效率大大提升。


第四部分:Syslog转发

    如果我们的网络非常大,将我们有多个日志服务器,或者说日志分析平台,但是很多路由器、交换机、防火墙等设备仅支持把syslog转发到一个syslog服务器,那么这时候就可以用到Free Syslog Forwarder Tool了,它可以把syslog信息转发到最多10个syslog服务器,应该说足够用了!

Free Syslog Forwarder Tool下载地址:

http://www.manageengine.com/free-syslog-forwarder-tool/download.html

   软件只有3MB,支持安装在Windows平台上,但是可以支持Linux、Unix、防火墙、交换机等的日志转发。

    这部分写出来,只是想分享一下该工具,并不一定实用。


    各位如果在使用过程中,有什么新的发现,欢迎与我联系,谢谢!