Syslog简介
Syslog是一个通过IP网络允许一台机器发送事件通知信息给事件收集者(Syslog服务
器或者SyslogDaemon)的协议。换言之,就是一台机器或者设备能够被配置,使之产生Syslog
信息并且发送到一台特定的Syslog服务器/Daemon。
Syslog信息建立在UDP之上,一般Syslog信息在UDP514端口上被收集,Syslog信息
的长度不大于1024字节。由于基于UDP协议,所以当如果因为网络拥塞等情况导致信息包
丢失,那么信息将不再重发,而是简单的丢失掉。
Syslog协议是在Unix系统上被创建出来的。使用Syslog,一个远程Unix主机能够很好
的跟踪另一台Unix主机。任何应用程序都能够产生Syslog信息。
格式
Syslog包的格式:
一个Syslog信息主要有三部分组成。分别是PRI,HEADER,MSG。
日志信息格式如下:
<优先级>时间戳主机名模块名/级别/信息摘要:内容
以上格式中的尖括号(<>)、空格、斜杠(/)、冒号(:)是有效的、必须的。
输出到日志主机的日志格式的例子如下:
<189>Jun705:22:032003QuidwayIFNET/6/UPDOWN:Lineprotocoloninterface
Ethernet0/0/0,changedstatetoUP
以下对每一个字段做详细说明。
1.优先级
是优先级的意思,它由两部分组成,共一个字节,前3位是严重度(Severity),后5位是表
示Facility。优先级的计算按如下公式:facility*8+verity-1。
a)严重度
值严重度含义
0Emergency:systemisunusable
1Alert:actionmustbetakenimmediately
2Critical:criticalconditions
3Error:errorconditions
4Warning:warningconditions
5Notice:normalbutsignificantcondition
6Informational:informationalmessages
7Debug:debug-levelmessages
b)Facility
值Facility含义
0kernelmessages
1ur-levelmessages
2mailsystem
3systemdaemons
4curity/authorizationmessages
5messagesgeneratedinternallybysyslogd
6lineprintersubsystem
7networknewssubsystem
8UUCPsubsystem
9clockdaemon
10curity/authorizationmessages
11FTPdaemon
12NTPsubsystem
13logaudit
14logalert
15clockdaemon
16localu0
17localu1
18localu2
19localu3
20localu4
21localu5
22localu6
23localu7
2。Header
包括两部分:
1>时间戳,它是指信息生成的日期和时间。
时间戳的格式为“Mmmddhh:mm:ssyyyy”。
“Mmm”为英语月份的缩写,即为如下的值:Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,
Sep,Oct,Nov,Dec。“dd”为日期,如果日期的值小于10,则必须写为“空格+日期”,
如“7”。“hh:mm:ss”为本地时间,hh采用24小时制,从00到23;分钟和秒的值均从00
到59。“yyyy”为年份。
2>主机名或者IP地址
时间戳与主机名之间以一个空格隔开。
具体可以参考RFC-3164(TheBSDsyslogProtocol)
Syslog的配置
主机类
主机类的配置成Syslog的客户端(这里所说的客户端,就是发送自己的日志到远程日志服
务器上的主机),主要关注以下三种:
配置:
Linux主机的配置成Syslog的client应该是最方便的一种了。
只要修改/etc/文件,比如要把debug以上信息都发送给服务器,则只需要增加
一行:
*.debug@Serverhost
(注:语句由两部分完全,前面*.debug为选择子,’.’前面的为facility,后面的为priority。
第二部分为action,记录需要记录的地方。一般远程的就使用@hostName这种形式)。
其中Serverhost为rver的ip地址。然后重新启动以下syslogd就可以了。
它可以根据我们的需要配置,我们可以选择发送全部的log信息,也可以选择只发送特定方
面的信息。
消息格式:
Linux的syslog的格式比较标准,下面是一个从linux摘下的syslog信息。
根据软件截下:
192.168.0.22:
<13>root:thisisfromlinux
Syslog信息中的PRI没有问题,如何具体配置?
HEADER部分没有出现,包括时间戳和主机名两样。
Message部分为:【ModuleName:MSG】这样的格式
s
配置:
由于Windows只支持EventLog,所以要想使用标准的syslog来使用的话需要有个message
converter。它的功能为监听eventLog,如果有新的eventLog,则将它转化成标准的形式,
并把它发送到配置好的rver。我现在找到的免费的工具包括:
1)EvtSys(已尝试使用):这款是网上说的比较多的,这是一个非常小巧而且免费的
第三方日志记录软件,文件才几十K大小,非常小巧,解压后是两个文件
和,把这两个文件拷贝到c:windowssystem32目录下。打开Windows
命令提示符(开始->运行输入CMD)
C:>evtsys–i–h192.168.10.100
-i表示安装成系统服务
-h指定log服务器的IP地址
如果要卸载evtsys,则:netstopevtsys
evtsys–u
启动该服务:C:>netstartevtsys
它把系统中的事件以Facility为DAEMON,Severity为ERR,WARNING,or
NOTICE。其中facility可以设置。据现在的了解EventLog的严重度就这么几种。
具体可参考文章用syslog记录UNIX和windows日志和EventlogtoSyslogUtility。
信息格式:
EvtSys发送的facility标签可以由自己选择,但是目前还不知道如何选择配置其他
几项,也不确定是否真的把所有的EventLog事件都发送过来了?默认情况为把
EventLog对应的错误,警告,信息三种翻译为对应的Syslog的ERROR,
WARNING,NOTICE。如下例:
YUJIE-TEKVIEW:
<29>Security:538:NTAUTHORITYANONYMOUSLOGON:用户注销:用户名:
ANONYMOUSLOGON域:NTAUTHORITY登录ID:(0x0,0x9AC46)登录类型:3
一些信息的格式含义参考如下:
/encyclopedia_
(没有可以测试的平台)
Syslog的格式:
设备类
1.SonicWallRouter:
配置:
它的配置比较简单,只要登陆到它的web服务器页面,然后进入Log-〉Automation里
面就可以配置了。
前面的部分跟其他的一样,但同样没有时间和IP地址。后面部分如下例(MSG部分):
192.168.0.1:
<133>id=firewallsn=0006B1247460time="2007-04-0601:52:19"fw=222.66.87.118
pri=5c=128m=37msg="UDPpacketdropped"n=9720464
src=70.160.194.153:41142:WANdst=222.66.87.118:41261:WANproto=udp/41261
可以看到它的消息的信息比较全,包含了应该在前面包括的信息(比如时间)。后面部
分明显是自己的定义的Tag。具体有多少种Tag,目前不知道。
2.Cisco交换机:
配置:
192.168.0.8和192.168.0.9都是cisco的交换机,配置方式类似,都是用telnet登陆进行
配置,下面以192.168.0.8为例来进行说明。
1.在命令行方式下,用命令telnet192.168.0.8进行登陆,密码:ciscocisco;
2.登陆后,可以看到命令行提示符。敲入命令enable,这表示要进入特权模式。系统
会再次提示输入密码,此时的密码是cisco;
3.在enable状态下,敲入命令configterminal进入全局配置状态。
4.在全局配置状态下,敲入命令
Logginghost(ip地址)
就可以了,具体的配置有很多选项,可以参考《Catalyst2950andCatalyst2955Switch
SoftwareConfigurationGuide》的27章。
格式
192.168.0.8:
<189>15567:48w0d:%LINEPROTO-5-UPDOWN:LineprotocolonInterface
FastEthernet0/5,changedstatetodown
具体MSG里面的含义不知道,但是可以看到也没有时间和ip地址(其实这两项不需要)。后
面的tag本身肯定有意义。
以下是关于思科syslog信息格式的一个介绍。
/
Syslog的测试
1.通过WinSyslog
当需要测试服务器时,可以通过直接使用WinSyslog,这是一个商业软件,但是有试用
版,它是一个Syslog接收器,但是也附带了发送Syslog的功能:如下图的tools-〉SendSyslog
TestMessage.
它的窗口如下:
只要设定一下相应的参数(最终要为要测试的服务器的Ip地址和端口)。
2.通过Linux机器
Linux机器配置好之后,可以通过发送到自己机器的daemon来验证它已经配置好,随后
配置好接收服务器之后,只要在termial中输入:
logmsg
就可以将它记录到log中。
3.其他网上免费工具
网上的免费工具很多,例如
/get/UNIX/Networking/Server-Applications/TheOne-SysLog-Sender-Fr
的SyslogSender。
非常好用。
我们的系统相关
Syslog查看
Trap被保存在数据库的TrapObject表中,可以直接查看数据库。也可以在ocean的client界
面上,选择主菜单“性能管理”“查看Syslog”进行查询。具体不再赘述。
Syslog配置
1.通过客户端可以配置Server接收后处理的Syslog严重度门限。选择主菜单“性能管理”
“Syslog配置”进行查询。具体不再赘述。
2.在Probe端的里面可以配置syslog的接收门限。
class="Config">
本文发布于:2022-12-08 09:09:22,感谢您对本站的认可!
本文链接:http://www.wtabcd.cn/fanwen/fan/88/65101.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |