syslog格式

转自:http://wly719.iteye.com/blog/1827394

1、syslog格式介绍 

在Unix类操作系统上,syslog广泛 应用于系统日志。syslog日志消息既可以记录在本地文件中,也可以通过网络发送到接收syslog的服务器。接收syslog的服务器可以对多个设备 的syslog消息进行统一的存储,或者解析其中的内容做相应的处理。常见的应用场景是网络管理工具、安全管理系统、日志审计系统。 
完整 的syslog日志中包含产生日志的程序模块(Facility)、严重性(Severity或 Level)、时间、主机名或IP、进程名、进程ID和正文。在Unix类操作系统上,能够按Facility和Severity的组合来决定什么样的日 志消息是否需要记录,记录到什么地方,是否需要发送到一个接收syslog的服务器等。由于syslog简单而灵活的特性,syslog不再仅限于 Unix类主机的日志记录,任何需要记录和发送日志的场景,都可能会使用syslog。 

长期以来,没有一个标准来规范syslog的格式,导致syslog的格式是非常随意的。最坏的情况下,根本就没有任何格式,导致程序不能对syslog 消息进行解析,只能将它看作是一个字符串。 

在2001年定义的RFC3164中,描述了BSD syslog协议: 

http://www.ietf.org/rfc/rfc3164.txt 

不过这个规范的很多内容都不是强制性的,常常是“建议”或者“约定”,也由于这个规范出的比较晚,很多设备并不遵守或不完全遵守这个规范。接下来就介绍一 下这个规范。 

约 定发送syslog的设备为Device,转发syslog的设备为Relay,接收syslog的设备为Collector。Relay本身也可以发送 自身的syslog给Collector,这个时候它表现为一个Device。Relay也可以只转发部分接收到的syslog消息,这个时候它同时表现 为Relay和Collector。 

syslog消息发送到Collector的UDP 514端口,不需要接收方应答,RFC3164建议 Device 也使用514作为源端口。规定syslog消息的UDP报文不能超过1024字节,并且全部由可打印的字符组成。完整的syslog消息由3部分组成,分 别是PRI、HEADER和MSG。大部分syslog都包含PRI和MSG部分,而HEADER可能没有。 

2、syslog的格式 
下面是一个syslog消息: 
<30>Oct 9 22:33:20 hlfedora auditd[1787]: The audit daemon is exiting. 
其中“<30>”是PRI部分,“Oct 9 22:33:20 hlfedora”是HEADER部分,“auditd[1787]: The audit daemon is exiting.”是MSG部分。 

2.1、PRI部分 
PRI部分由尖括号包含的一个数字构成,这个数字包含了程序模块(Facility)、严重性(Severity),这个数字是由Facility乘以 8,然后加上Severity得来。不知道他们为什么发明了这么一种不直观的表示方式。 
也就是说这个数字如果换成2进制的话,低位的3个bit表示Severity,剩下的高位的部分右移3位,就是表示Facility的值。 
十进制30 = 二进制0001 1110 
0001 1… = Facility: DAEMON – system daemons (3) 
…. .110 = Severity: INFO – informational (6) 

Facility的定义如下,可以看出来syslog的Facility是早期为Unix操作系统定义的,不过它预留了User(1),Local0~7 (16~23)给其他程序使用: 

Numerical             Facility 
Code 

0             kernel messages 
1             user-level messages 
2             mail system 
3             system daemons 
4             security/authorization messages (note 1) 
5             messages generated internally by syslogd 
6             line printer subsystem 
7             network news subsystem 
8             UUCP subsystem 
9             clock daemon (note 2) 
10             security/authorization messages (note 1) 
11             FTP daemon 
12             NTP subsystem 
13             log audit (note 1) 
14             log alert (note 1) 
15             clock daemon (note 2) 
16             local use 0  (local0) 
17             local use 1  (local1) 
18             local use 2  (local2) 
19             local use 3  (local3) 
20             local use 4  (local4) 
21             local use 5  (local5) 
22             local use 6  (local6) 
23             local use 7  (local7) 

Note 1 - Various operating systems have been found to utilize 
Facilities 4, 10, 13 and 14 for security/authorization, 
audit, and alert messages which seem to be similar. 
Note 2 - Various operating systems have been found to utilize 
both Facilities 9 and 15 for clock (cron/at) messages. 

Severity的定义如下: 

Numerical         Severity 
Code 

0       Emergency: system is unusable 
1       Alert: action must be taken immediately 
2       Critical: critical conditions 
3       Error: error conditions 
4       Warning: warning conditions 
5       Notice: normal but significant condition 
6       Informational: informational messages 
7       Debug: debug-level messages 
也就是说,尖括号中有1~3个数字字符,只有当数字是0的时候,数字才以0开头,也就是说00和01这样在前面补0是不允许的。 

2.2、HEADER部分 
HEADER部分包括两个字段,时间和主机名(或IP)。 
时间紧跟在PRI后面,中间没有空格,格式必须是“Mmm dd hh:mm:ss”,不包括年份。“日”的数字如果是1~9,前面会补一个空格(也就是月份后面有两个空格),而“小时”、“分”、“秒”则在前面补 “0”。月份取值包括: 
Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec 

时间后边跟一个空格,然后是主机名或者IP地址,主机名不得包括域名部分。 

因为有些系统需要将日志长期归档,而时间字段又不包括年份,所以一些不标准的syslog格式中包含了年份,例如: 
<165>Aug 24 05:34:00 CST 1987 mymachine myproc[10]: %% It’s 
time to make the do-nuts. %% Ingredients: Mix=OK, Jelly=OK # 
Devices: Mixer=OK, Jelly_Injector=OK, Frier=OK # Transport: 
Conveyer1=OK, Conveyer2=OK # %% 
这样会导致解析程序将“CST”当作主机名,而“1987”开始的部分作为MSG部分。解析程序面对这种问题,可能要做很多容错处理,或者定制能解析多种 syslog格式,而不仅仅是只能解析标准格式。 

HEADER部分后面跟一个空格,然后是MSG部分。 
有些syslog中没有HEADER部分。这个时候MSG部分紧跟在PRI后面,中间没有空格。 

2.3、MSG部分 
MSG部分又分为两个部分,TAG和Content。其中TAG部分是可选的。 
在 前面的例子中(“<30>Oct 9 22:33:20 hlfedora auditd[1787]: The audit daemon is exiting.”),“auditd[1787]”是TAG部分,包含了进程名称和进程PID。PID可以没有,这个时候中括号也是没有的。 
进程PID有时甚至不是一个数字,例如“root-1787”,解析程序要做好容错准备。 

TAG后面用一个冒号隔开Content部分,这部分的内容是应用程序自定义的。 

3、RFC3195 
BSD syslog协议使用UDP协议在网络中传递,然而UDP是一个不可靠的协议,并且syslog也没有要求接收方有所反馈。为了解决这个问题,RFC又定 义了一个新的规范来可靠的传递syslog消息,它使用TCP协议: 

http://www.ietf.org/rfc/rfc3195.txt 

不过大多数情况下,使用UDP发送不需要确认的syslog消息,已经能够满足要求了,并且这样做非常简单。因此到目前为止,RFC3195的应用还是很 少见的。 

参考文章 
http://blog.gdsyzx.edu.cn/wordpress/?p=299 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Windows的syslog格式查看工具是一种用于管理和查看Windows系统中syslog日志文件的工具。syslog是一种标准的网络协议,用于收集和保存系统日志信息,以便进行故障排查、性能分析和安全审计等工作。 Windows的syslog格式查看工具提供了一个直观易用的界面,可以将syslog日志文件的内容解析并展示给用户。用户可以通过该工具对日志进行搜索、过滤和排序,从而快速定位和分析日志中的关键信息。 该工具支持用户自定义日志解析规则,可以根据具体需求定义不同的日志格式。用户可以指定各个字段的名称、类型和位置,以确保日志文件可以被正确解析和展示。 此外,该工具还提供了实时监控功能,可以自动扫描指定目录中的日志文件,并实时展示更新后的内容。这使得用户可以及时发现系统中的异常情况并采取相应的措施。 除了基本的查看功能,该工具还提供了一些辅助工具,如日志导出功能,用户可以将关键日志导出为文本文件或其他格式,以便进一步分析和共享。 总之,Windows的syslog格式查看工具是一种方便实用的工具,可以帮助用户更好地管理和分析Windows系统中的syslog日志,提高系统的运行效率和安全性。 ### 回答2: Windows操作系统并没有原生的syslog日志查看工具,但可以通过安装第三方工具来实现。以下是几种常用的Windows syslog格式查看工具: 1. Kiwi Syslog Server:这是一款功能强大的syslog服务器软件,可以实时收集、分析和显示来自各种网络设备的syslog消息。它支持自定义过滤器、报警通知等功能,可方便地进行日志管理和监控。 2. LogMX:这是一个多功能的日志查看器,支持多种格式的日志文件,包括syslog。它提供了日志过滤、搜索、高亮显示等功能,可方便地筛选和展示特定的syslog消息。 3. Graylog:这是一个开源的日志管理和分析平台,可以收集、存储和分析来自各种源的日志数据,包括syslog。它提供了灵活的搜索和过滤功能,可通过图表和仪表盘查看分析结果。 无论选择哪种工具,都需要按照软件的安装指引进行安装和配置。一旦配置完成,你就可以使用该工具来查看和管理syslog格式的日志文件,以便监控系统运行状况、诊断问题等。 ### 回答3: Windows系统的日志格式是通过事件查看器(Event Viewer)进行查看和管理的。事件查看器是Windows操作系统的一个内置工具,用于收集和管理系统中发生的各种事件和错误信息。 要打开事件查看器,可以按下Win + R组合键,在运行对话框中输入"eventvwr.msc"并点击确定。然后,在事件查看器的窗口中,可以浏览不同的日志目录以查看记录的事件。 事件查看器包含了多个日志目录,其中最常用的是“应用程序”、“安全性”、“系统”、“服务器Manager”等。在这些日志目录下,可以找到不同类型的日志条目,如警告、错误、信息等。 通过选择对应的日志目录,可以查看事件的详细信息,包括时间戳、事件ID、源、任务类别、级别、描述等。这些信息能够帮助用户了解事件的发生背景和内容,为诊断和解决问题提供参考。 除了事件查看器,还有一些第三方工具可以帮助查看和分析Windows系统的日志。例如,Syslog服务器和Syslog分析器可以将各种系统事件和错误信息转发到中央日志收集器,并提供更多高级功能,如搜索、过滤、报警等。这些工具能够在大规模网络环境下更方便地管理和分析日志数据。 总之,Windows系统的日志格式查看工具主要是事件查看器,它为用户提供了一个集中管理和查看各种事件和错误信息的界面。并且,还有一些第三方工具可以提供更多高级的日志管理和分析功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值