dis cu | include info-center
info-center format unicom
info-center timestamp loghost iso with-milliseconds
info-center loghost source Vlan-interface1000
info-center loghost 192.168.51.201 facility local6 filter hxgc
info-center filter hxgc default level notification
以上为当前info-center的配置。
当前遇到的问题是:为了长期保留交换机的日志信息,所以配置了一台日志服务器,使用的日志软件为Kiwi Syslog Server 9.5。该软件默认的保存日志信息方式为文本文件,为了以后日志信息方便查询,故配置了日志软件将交换机日志信息转存至SQL Server 2012,但是配置完成后发现使用软件生成的测试日志信息可以被正常查询到,但是交换机发送的日志信息却查询不到。
后使用SQL Server Profiler分析得知,是因为日志软件发送过来的信息格式不正确导致。最后又通过Wireshark抓包交换机发送的日志信息得知,是因为交换机的发送的日志信息尾部均带有“\000”这样的标记。(随后也测试了华为的路由器,发现一切正常,日志信息可以正常被SQL Server 2012记录)。
想问问各位,有没有碰到过类似的问题,有没有什么解决的方法?
(0)
1.1.9 日志信息的格式
根据输出方向不同,日志信息的输出格式如下:
表1-7 日志信息格式表
输出方向 | 格式 | 举例 | |
控制台、监视终端、日志缓冲区或日志文件 | Prefix Timestamp Sysname Module/Level/Mnemonic: Content | %Nov 24 14:21:43:502 2016 Sysname SHELL/5/SHELL_LOGIN: VTY logged in from 192.168.1.26 | |
日志主机 | 标准格式 | <PRI>Timestamp Sysname %%vvModule/Level/Mnemonic: Source; Content | <190>Nov 24 16:22:21 2016 Sysname %%10SHELL/5/SHELL_LOGIN: -DevIP=1.1.1.1; VTY logged in from 192.168.1.26 |
unicom格式 | <PRI>Timestamp Hostip vvModule/Level/Serial_number: Content | <189>Oct 13 16:48:08 2016 10.1.1.1 10SHELL/5/210231a64jx073000020: VTY logged in from 192.168.1.21 | |
cmcc格式 | <PRI>Timestamp Sysname %vvModule/Level/Mnemonic: Source; Content | <189>Oct 9 14:59:04 2016 Sysname %10SHELL/5/SHELL_LOGIN: -DevIP=1.1.1.1; VTY logged in from 192.168.1.21 | |
上表中介绍的格式是设备向各个输出方向发送的原始信息的格式,可能与用户最终看到的信息格式有差异,最终显示格式与用户使用的日志解析工具有关,请以实际情况为准。
· Prefix(信息类型)
对于输出方向为控制台、监视终端、日志缓冲区或日志文件的日志信息,时间戳前面会有一个信息类型标识符:
¡ 百分号(%):表示该日志信息为informational级别及以上级别的log日志。
¡ 星号(*):表示该日志信息为debugging级别的log日志。
¡ 指数符号(^):表示该日志信息为诊断日志(不区分级别)。
· PRI(优先级)
对于输出方向为日志主机的日志信息,时间戳前面会有一个优先级标识符。优先级的计算公式为:facility*8+level。
¡ facility表示工具名称,由info-center loghost命令配置,主要用于在日志主机端标志不同的日志来源,查找、过滤对应日志源的日志。其中,local0~local7分别对应取值16~23。
¡ level表示日志信息的等级,具体含义请参见表1-1。
· Timestamp(时间戳)
时间戳记录了日志信息产生的时间,方便用户查看和定位系统事件。发送到日志主机和发送到其它方向的日志信息的时间戳精度不同:
¡ 发送到日志主机的日志信息的时间戳缺省精确到秒,可配置成精确到毫秒。
¡ 发送到其它方向的日志信息的时间戳精确到毫秒。
发送到日志主机和发送到其它方向的日志信息的时间戳的配置命令也不同:
¡ 发送到日志主机的日志信息的时间戳格式由info-center timestamp loghost命令配置。
¡ 发送到其它方向的日志信息的时间戳格式由info-center timestamp命令配置。
各时间戳格式的详细描述如表1-8所示:
时间戳参数 | 说明 | 举例 |
boot | 系统启动后经历的时间(即设备本次运行的持续时间),格式为:xxx.yyy,其中xxx是系统启动后经历时间的毫秒数高32位,yyy是低32位 除日志主机方向外,发往其它方向的日志信息均支持该参数 | %0.109391473 Sysname FTPD/5/FTPD_LOGIN: User ftp (192.168.1.23) has logged in successfully. 其中0.109391473即为boot格式的时间戳 |
date | 系统当前的日期和时间,格式为: · 日志主机(不带毫秒):“MMM DD hh:mm:ss YYYY” · 日志主机(带毫秒):“MMM DD hh:mm:ss.ms YYYY” · 其他方向:“MMM DD hh:mm:ss:ms YYYY” 发往所有方向的日志信息均支持该参数 | %May 30 05:36:29:579 2018 Sysname FTPD/5/FTPD_LOGIN: User ftp (192.168.1.23) has logged in successfully. 其中May 30 05:36:29:579 2018为发往控制台方向的date格式的时间戳 |
iso | ISO 8601中规定的时间戳格式,可通过配置选择是否精确到毫秒 只有发往日志主机方向的日志信息支持该参数 | <189>2018-05-30T06:42:44 Sysname %%10FTPD/5/FTPD_LOGIN: User ftp (192.168.1.23) has logged in successfully. 其中2018-05-30T06:42:44为iso格式的时间戳 对于iso格式的时间戳,加毫秒后,形如:2018-05-30T06:42:44.708 |
none | 不带时间信息 发往所有方向的日志信息均支持该参数 | % Sysname FTPD/5/FTPD_LOGIN: User ftp (192.168.1.23) has logged in successfully. 其中没有包含时间戳 |
no-year-date | 系统当前日期和时间,但不包含年份和毫秒信息,格式为“MMM DD hh:mm:ss” 只有发往日志主机方向的日志信息支持该参数 | <189>May 30 06:44:22 Sysname %%10FTPD/5/FTPD_LOGIN: User ftp (192.168.1.23) has logged in successfully. 其中May 30 06:44:22为no-year-date格式的时间戳 |
· Hostip(出接口IP地址)
本字段表示发送的日志信息的源IP地址。只有配置info-center loghost source后,此字段才显示为出接口的IP地址,未配置时,使用Sysname显示。只有使用unicom格式发往日志主机的日志中携带该字段。
· Serial_number(设备序列号)
本字段为当前系统的设备实体序列号,只有使用unicom格式发往日志主机的日志中携带该字段。
· Sysname(主机名或主机IP地址)
本字段为生成该日志信息的设备的名称或IP地址。用户可使用sysname命令修改设备的名称。
· %%(厂家标志)
本字段表示本日志信息由H3C设备生成。
只有发往日志主机的日志中携带该字段。
· vv(版本信息)
本字段为日志信息的版本标识,取值为10。
只有发往日志主机的日志中携带该字段。
· Module(模块名)
本字段为生成该日志信息的功能模块的名称。模块列表可以通过在系统视图下输入命令info-center source ?进行查看。
· Level(信息等级)
本字段为日志信息的等级,具体说明请参见表1-1。
· Mnemonic(助记符)
本字段为该日志信息的概述,是一个不超过32个字符的字符串。
· Source(定位信息)
本字段为可选字段,用来标识该日志的产生者。只有使用标准格式或者unicom格式发往日志主机的日志中包含该字段。可能包含以下参数:
¡ -DevIp=XXX.XXX.XXX.XXX,表示日志发送者的源IP。
¡ -Slot=XX,表示生成该日志的IRF的成员设备编号。
· Content(信息文本)
本字段为该日志信息的具体内容。
4) (可选)配置发往日志主机的日志信息的输出格式。
info-center format { unicom | cmcc }
缺省情况下,发往日志主机的日志信息的格式为非定制格式。
(0)
感谢大佬的回答,但是这些信息我都查询过,且试验过,没有解决问题。
补充:
SQL Server Profiler中接收到的语句为下图,可以看出是缺少了最后的引号和括号。

Wireshark中捕获到的数据包具体信息为:

从这些信息看就是因为华三交换机发过来的SYSLOG信息尾部携带了“\000”这个标记,造成了日志服务器软件处理后缺少了SQL语句中最后的引号和括号。
哪位大佬帮忙看看,我分析的对不对?
(0)
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明
日志服务器那面开发一下吧