- 浏览: 285710 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
liang100100:
啊,我也遇到了这个问题,楼主后面怎么解决了的啊
问个extjs的问题(重新设置高度的问题) -
靳赞赞:
怎么引用呢,能更具体的写出来吗?
带小时分钟的时间控件 -
明天的昨天:
你好,这个问题我也出现了。 你是怎么解决的啊???????
ext中- grid嵌套在window中的问题 -
YangJianDong:
用不了
带小时分钟的时间控件 -
javabay:
楼主不能写一个简单的html吗,自己去实验怎么用!!!!!
带小时分钟的时间控件
syslog格式记录
- 博客分类:
- linux命令使用
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
在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
发表评论
-
linux版本查看
2013-11-11 12:01 886cat /etc/issue uname -a -
vi统计某个匹配出现的次数
2013-03-06 15:45 2856vi统计某个匹配出现的次数 :%s/hello world ... -
linux中JDK的配置
2011-06-01 17:16 1049假如已经有JDK在/opt/1.6目录下 然后需vi /etc ... -
ssh终端客户端连接linux,终端出现乱码的解决
2010-03-29 15:06 1389vi /etc/sysconfig/i18n 将内容改为 ... -
网络安装linux
2010-03-06 21:48 974linux网络安装所需:apache服务器,系统引导盘。 现在 ... -
linux下rpm包的制作
2010-03-03 13:38 950今天做了linux下的rpm包,百度后试验了一番,先总结下。 ... -
linux jdk的安装
2010-01-28 08:57 8831. 安装 chmod +x jdk-1_5_0_08-l ... -
linux命令
2010-01-28 08:52 856查看gcc的版本号 查看内核版本号 查看li ... -
/bin/sh^M: bad interpreter: No such file or directory
2010-01-25 13:39 3300/bin/sh^M: bad interpreter: No ... -
服务器上的xen问题
2010-01-11 16:56 1285公司最近新进了一台服务器,是64bit的。 服务器之前已经安装 ... -
linux各种服务介绍
2009-12-15 15:01 1217服务列表(按字母顺序排列)服务名必需(是/否)用途描述acon ... -
Linux必学的60个命令(6)-其他
2009-07-02 16:34 995tar 1.作用 tar命令是Unix/Linux系统中备份 ... -
Linux必学的60个命令(5)-网络安全
2009-07-02 16:32 997虽然Linux和Windows NT/2000 ... -
Linux必学的60个命令(4)-网络操作
2009-07-02 16:31 938因为Linux系统是在Internet上起源和发展的,它与生俱 ... -
Linux必学的60个命令(3)-系统管理
2009-07-02 16:30 987对于Linux系统来说,无 ... -
Linux必学的60个命令(2)-文件处理
2009-07-02 16:28 1030Linux必学的60个命令(2)-文件处理 Linux必学 ... -
Linux必学的60个命令(1)-安装与登陆
2009-07-02 16:26 984Linux必学的60个命令(1)-安装与登陆 Linux必 ... -
Redhat Linux网卡配置与绑定
2008-11-19 11:04 1352Redhat Linux的网络配置,基本上是通过修改几个配置 ... -
linux下修改ip地址
2008-11-19 10:54 4801Linux修改IP和DNS 以Red Hat Enterpr ... -
linux中IP,网关的设置
2008-11-19 10:44 1925在Linux操作系统下修改IP、DNS和路由配置的命令如下: ...
相关推荐
MT_Syslog MT_Syslog.exe MT_Syslog中文版 ros日志远程记录 ros日志 网上找了好久也没有找到个中文版的,很是郁闷,最后干脆我自己做个汉化要点分不好意思啊,花了我半天的时间翻译,编译的,一点辛苦,有的地方,不...
syslog日志消息既可以记录在本地文件中,也可以通过网络发送到接收syslog的服务器。接收syslog的服务器可以对多个设备的syslog消息进行统一的存储,或者解析其中的内容做相应的处理。常见的应用场景是网络管理工具、...
Kiwi Syslog Server安装教程: ...这些产品的安装与配置非常简单,提供功能丰富的解决方案来接收、记录、显示并转发各种网络设备(例如路由器、交换机、Unix 主机以及其它启用 syslog 的设备)的 syslog 消息。
使用syslog收集记录设备运行状态信息收集.pdf
路由器交换机防火墙等网络设备的系统日志对于排错是非常重要的。虽然这些网络设备本身可以存储日志,但是系统自身存储的日志一般保存时间不超过24小时,并且仅仅以缓存的形式保存在内存里,如果设备关机又重启,之前...
Linux的Syslog服务来记录Cisco路由器的日志(基本配置)
syslog协议是各种网络设备、服务器支持的网络日志记录标准。Syslog消息提供有关网络事件和错误的信息。系统管理员使用Syslog进行网络管理和安全审核。 通过专用的syslog服务器和syslog协议将来自整个网络的事件记录...
软件介绍: Kiwi Syslog ...Kiwi-Syslog-Server是一款应用于WINDOWS系统的系统日志守护进程,能够接收并记录系统日志,各种设备的SYSLOG消息,内置丰富的日志记录选项,能详细记录各种防火墙日志,并进行筛选分析。
pino-syslog是所谓的记录器“传输”。 pino-syslog从stdin接收pino日志,并将其转换为或 (syslog)格式的消息,并将其写入stdout 。 默认输出格式为RFC5424。 此传输不会将消息发送到远程甚至本地syslog兼容...
Arduino-Syslog.zip,用于以ietf格式(rfc 5424)和bsd格式(rfc 3164)syslog记录到syslog服务器的arduino库,Arduino是一家开源软硬件公司和制造商社区。Arduino始于21世纪初,深受电子制造商的欢迎,Arduino通过...
前者可以在关闭软件主界面后仍然能记录日志,后者只能瞬 时记录日志 7、若第四步中没有勾选安装Kiwi Syslog Web Access,则会提示安装成功,若勾选了,则会提示安装Kiwi Syslog Web Access必备组件的向导,安装过程...
9.2.1.Eval.setup.exe,弹出安装界面,点击"I agree" 2、选择安装模式为"Install Kiwi Syslog Server as a service",两者的区别是,前者可以在关闭软件主界面后仍然能记录日志,后者只能瞬时记录日志 syslog-搭建...
它接收,记录,显示和转发系统日志,如路由器,防火墙,交换机,Unix主机和其他功能的设备主机的syslog消息。有许多可供自定义的选项。其特点包括PIX防火墙日志记录,Linksys的家庭防火墙日志,SNMP陷阱和TCP的支持...
ros MT_Syslog 日志记载 RouterOS 使用Log Downloader下载并记录访问日志
CentOS配置rsyslog客户端远程记录日志: 1. 安装Rsyslog守护进程: # rpm -qa " grep rsyslog # rsyslogd –v 若rsyslog守护进程没有出现在系统中,使用以下命令来安装: # yum install rsyslog 2. 配置Rsyslog守护...
软件介绍: ...Kiwi-Syslog-Server是一款应用于WINDOWS系统的系统日志守护进程,能够接收并记录系统日志,各种设备的SYSLOG消息,内置丰富的日志记录选项,能详细记录各种防火墙日志,并进行筛选分析。
Syslog4j 是一个 Syslog 协议(RFC 3164)的 Java 语言实现,用来通过 UDP/IP, TCP/IP, TCP/IP over SSL/TLS, Unix Syslog, 和 Unix Socket 等协议进行日志记录。
可以很好地处理大多数日志记录框架 具有 fatJar 模式(将单个 jar 作为“升级”放入现有项目中) 拥有友好的许可证(JUSyslog 和所有依赖项均为 LGPL/ASL) 如何 JNA用于加载系统的c库。 然后它包装了 openlog、...
关闭snmp和nrpe的syslog正常输出 (2010-05-11 22:34:12) 转载 标签: 杂谈 分类: MSN搬家 默认安装启动的snmp,会把日志记录在系统日志/var/log/messages里。
简而言之, syslog可以看作是lager日志记录框架的轻量级版本,仅支持完全兼容的,仅Erlang的Syslog后端,允许远程日志记录。 sasl_syslog和syslog之间的主要区别是sasl_syslog仅提供error_logger报告的日志记录。 ...