18-信息中心配置
本章节下载: 18-信息中心配置 (527.62 KB)
设备运行于FIPS模式时,本特性部分配置相对于非FIPS模式有所变化,具体差异请见本文相关描述。有关FIPS模式的详细介绍请参见“安全配置指导”中的“FIPS”。
信息中心是设备的信息枢纽,它能够对系统内所有模块的日志信息进行分类、管理,为网络管理员监控网络运行情况和诊断网络故障提供了有力的支持。系统由众多模块构成,日志信息可按来源模块进行划分并过滤输出。系统支持的来源模块可以通过在系统视图下输入info-center source ?进行查看。
信息中心的工作过程如下:
(1) 接收各模块生成的日志信息。
(2) 根据用户配置的输出规则,将收到的日志信息输出到不同方向。
图1-1 信息中心功能示意图
缺省情况下,信息中心处于开启状态,当需要处理的信息较多时,会对系统性能有一定的影响。在系统资源不足时可以关闭信息中心来节约系统资源。
系统产生的日志信息共分为:
· 普通日志:用于记录日常信息。除特殊说明外,下文中的日志均指普通日志。
· 诊断日志:用于记录调试信息。
· 安全日志:用于记录与认证、授权等安全相关的信息。
· 隐藏日志:用于记录需要以日志的方式记录下来但不需要在终端上显示的信息(如用户通过命令行输入命令的记录信息等)。
· 调试跟踪日志:用于记录系统跟踪调试信息,调试跟踪日志信息,必须加载devkit包后才可以查看,普通用户无需关注,主要提供给服务工程师定位问题。
日志信息按严重性可划分为如表1-1所示的八个等级,各等级的严重性依照数值从0~7依次降低。在系统输出信息时,所有信息等级高于或等于配置等级的信息都会被输出。例如,输出规则中指定允许等级为6(informational)的信息输出,则等级0~6的信息均会被输出。
数值 |
信息等级 |
描述 |
0 |
emergency |
表示设备不可用的信息,如系统授权已到期 |
1 |
alert |
表示设备出现重大故障,需要立刻做出反应的信息,如流量超出接口上限 |
2 |
critical |
表示严重信息,如设备温度已经超过预警值,设备电源、风扇出现故障等 |
3 |
error |
表示错误信息,如接口链路状态变化等 |
4 |
warning |
表示警告信息,如接口连接断开,内存耗尽告警等 |
5 |
notification |
表示正常出现但是重要的信息,如通过终端登录设备,设备重启等 |
6 |
informational |
表示需要记录的通知信息,如通过命令行输入命令的记录信息,执行ping命令的日志信息等 |
7 |
debugging |
表示调试过程产生的信息 |
系统可以向以下方向发送日志信息:控制台(console)、监视终端(monitor)、日志缓冲区(logbuffer)、日志主机(loghost)和日志文件(logfile)。日志信息的各个输出方向相互独立,可在开启信息中心后分别进行配置。
日志信息的输出规则规定了各个输出方向可以输出的日志信息模块和输出的日志信息等级,日志信息的输出方向包括控制台、监视终端、日志主机、日志缓冲区和日志文件。各个输出方向的缺省情况如表1-2所示:
输出方向 |
日志信息来源 |
开关 |
等级 |
控制台 |
所有支持的模块 |
开 |
debugging |
监视终端 |
所有支持的模块 |
关 |
debugging |
日志主机 |
所有支持的模块 |
开 |
informational |
日志缓冲区 |
所有支持的模块 |
开 |
informational |
日志文件 |
所有支持的模块 |
开 |
informational |
诊断日志信息的输出方向只有诊断日志文件。诊断日志文件不能进行输出模块和输出级别的过滤配置,输出方向的缺省情况如表1-3所示:
输出方向 |
日志信息来源 |
开关 |
等级 |
诊断日志文件 |
所有支持的模块 |
开 |
debugging |
安全日志信息的输出方向只有安全日志文件。安全日志文件不能进行输出模块和输出级别的过滤配置,输出方向的缺省情况如表1-4所示:
输出方向 |
日志信息来源 |
开关 |
等级 |
安全日志文件 |
所有支持的模块 |
关 |
debugging |
隐藏日志信息的输出方向包括日志主机、日志缓冲区和日志文件。各个输出方向的缺省情况如表1-5所示:
输出方向 |
日志信息来源 |
开关 |
等级 |
日志主机 |
所有支持的模块 |
开 |
informational |
日志缓冲区 |
所有支持的模块 |
开 |
informational |
日志文件 |
所有支持的模块 |
开 |
informational |
调试跟踪日志信息的输出方向只有调试跟踪日志文件。调试跟踪日志文件不能进行输出模块和输出级别的过滤配置,输出方向的缺省情况如表1-6所示:
输出方向 |
日志信息来源 |
开关 |
等级 |
调试跟踪日志文件 |
所有支持的模块 |
开 |
debugging |
根据输出方向不同,日志信息的输出格式如下:
表1-7 日志信息格式表
输出方向 |
格式 |
举例 |
|
控制台、监视终端、日志缓冲区或日志文件 |
Prefix Timestamp Sysname Module/Level/Mnemonic: Content |
%Nov 24 14:21:43:502 2019 Sysname SHELL/5/SHELL_LOGIN: VTY logged in from 192.168.1.26 |
|
日志主机 |
非定制格式 |
<PRI>Timestamp Sysname %%vvModule/Level/Mnemonic: Location; Content |
<190>Nov 24 16:22:21 2019 Sysname %%10 SHELL/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 2019 10.1.1.1 10IFNET/2/210231a64jx073000020: VTY logged in from 192.168.1.21 |
|
RFC 5424格式 |
<PRI>Version Timestamp Sysname Module - Mnemonic [SysLoc][AppLoc] Content |
<190>1 2020-09-25T10:42:22.257Z Sysname SHELL – SHELL_LOGIN [SysLoc@25506 VendorID=%%10 Level=6][AppLoc@25506 Line=vty0 IPAddr=192.168.1.21 User=**] VTY logged in from 192.168.1.21 |
|
sgcc格式 |
<PRI> Timestamp Sysname Devtype Content |
<189> 2019-03-18 15:39:45 Sysname FW 0 2 admin 10.1.1.1 |
|
cmcc格式 |
<PRI>Timestamp Sysname %vvModule/Level/Mnemonic: Location; Content |
<189>Oct 9 14:59:04 2019 Sysname %10SHELL/5/SHELL_LOGIN: -DevIP=1.1.1.1; VTY logged in from 192.168.1.21 |
(1) Prefix(信息类型)
对于输出方向为控制台、监视终端、日志缓冲区或日志文件的日志信息,时间戳前面会有一个信息类型标识符:
· 百分号(%):表示该日志信息为informational级别及以上级别的log日志。
· 星号(*):表示该日志信息为debugging级别的log日志。
· 指数符号(^):表示该日志信息为诊断日志(不区分级别)。
(2) PRI(优先级)
对于输出方向为日志主机的日志信息,时间戳前面会有一个优先级标识符。优先级的计算公式为:facility*8+level。
· facility表示工具名称,由info-center loghost命令配置,主要用于在日志主机端标志不同的日志来源,查找、过滤对应日志源的日志。其中,local0~local7分别对应取值16~23。
· level表示日志信息的等级,具体含义请参见表1-1。
(3) 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 2019 Sysname FTPD/5/FTPD_LOGIN: User ftp (192.168.1.23) has logged in successfully. 其中May 30 05:36:29:579 2019为发往控制台方向的date格式的时间戳 |
iso |
ISO 8601中规定的时间戳格式,可通过配置选择是否精确到毫秒 只有发往日志主机方向的日志信息支持该参数 |
<189>2019-05-30T06:42:44 Sysname %%10FTPD/5/FTPD_LOGIN: User ftp (192.168.1.23) has logged in successfully. 其中2019-05-30T06:42:44为iso格式的时间戳 对于iso格式的时间戳,加毫秒后,形如:2019-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格式的时间戳 |
(4) Hostip(出接口IP地址)
本字段表示发送的日志信息的源IP地址。只有配置info-center loghost source后,此字段才显示为出接口的IP地址,未配置时,使用Sysname显示。只有使用unicom格式发往日志主机时,日志信息中才包含该字段。
(5) Serial_number(设备序列号)
本字段为当前系统的设备实体序列号。只有使用unicom格式发往日志主机时,日志信息才包含该字段。
(6) Sysname(主机名或主机IP地址)
本字段为生成该日志信息的设备的名称或IP地址。用户可使用sysname命令修改设备的名称。
(7) %%(厂家标志)
本字段表示本日志信息由H3C设备生成。
只有发往日志主机时,日志信息中才包含该字段。
(8) vv(版本信息)
本字段为日志信息的版本标识,取值为10。
只有发往日志主机时,日志信息中才包含该字段。
(9) Module(模块名)
本字段为生成该日志信息的功能模块的名称。模块列表可以通过在系统视图下输入命令info-center source ?进行查看。
(10) Level(信息等级)
本字段为日志信息的等级,具体说明请参见表1-1。
(11) Mnemonic(助记符)
本字段为该日志信息的概述,是一个不超过32个字符的字符串。
(12) Location(定位信息)
本字段为该日志信息的产生者,是可选字段。本字段的取值为:单板槽位号和日志发送者的源IP。(独立运行模式)
本字段为该日志信息的产生者,是可选字段。本字段的取值为:IRF的成员设备编号和单板槽位号和日志发送者的源IP。(IRF模式)
· SysLoc(系统定位信息)
本字段为可选字段,用来标识产生该日志的系统信息。只有使用RFC 5424格式发往日志主机的日志支持该字段。该字段可能包含以下参数:
¡ SysLoc@XXX,表示指定厂商的设备生成的日志。XXX表示设备厂商的编号。
¡ VendorID=%%10,表示供应商ID,目前固定取值为10。
¡ Level=X,表示日志信息的等级
¡ -Slot=XX,表示生成该日志的单板所在的槽位号。(独立运行模式)
¡ -Chassis=XX-Slot=XX,表示生成该日志的单板所在的槽位号。(IRF模式)
· AppLoc(模块定位信息)
本字段为可选字段,用来标识产生该日志的模块信息。只有使用RFC 5424格式发往日志主机的日志支持该字段。该字段可能以下参数:
¡ AppLoc@XXX,表示指定厂商的设备生成的日志。XXX表示设备厂商的编号。
¡ Line=XXX,表示当前用户登录所用的用户线。
¡ IPAddr=XXX.XXX.XXX.XXX,表示用户登录的源IP地址。
¡ User=**,表示用户登录的用户名。
· Devtype
¡ 设备类型。只有在使用sgcc格式发往日志主机时,日志信息中才包含该字段。
(13) Content(信息文本)
本字段为该日志信息的具体内容。
表1-9 信息中心配置任务简介
配置任务 |
说明 |
详细配置 |
配置日志信息发送到控制台 |
至少选其一 |
|
配置日志信息发送到监视终端 |
||
配置日志信息发送到日志主机 |
||
配置日志信息发送到日志缓冲区 |
||
配置日志信息保存到日志文件 |
||
配置安全日志同步保存和管理功能 |
可选 |
|
配置诊断日志信息保存到诊断日志文件 |
可选 |
|
配置调试跟踪日志文件 |
可选 |
|
配置日志信息和日志文件的最短保存时间 |
可选 |
|
配置命令行输入回显功能 |
可选 |
|
配置重复日志抑制功能 |
可选 |
|
禁止指定模块日志的输出 |
可选 |
|
禁止接口生成Link up/Link down日志信息 |
可选 |
|
将系统日志封装成告警信息发送 |
可选 |
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
开启信息中心 |
info-center enable |
缺省情况下,信息中心处于开启状态 |
(可选)配置日志信息的输出规则 |
info-center source { module-name | default } { console | monitor | logbuffer | logfile | loghost } { deny | level severity } |
缺省情况下,日志信息的输出规则请参见1.1.5 |
(可选)配置时间戳输出格式 |
info-center timestamp { boot | date | none } |
缺省情况下,信息的时间戳输出格式为date格式 |
退回到用户视图 |
quit |
- |
(可选)允许日志信息输出到当前终端 |
terminal monitor |
缺省情况下,允许日志信息输出到控制台 |
允许调试信息输出到当前终端 |
terminal debugging |
缺省情况下,不允许调试信息输出到当前终端 调试信息指的是打开业务模块的调试信息开关后,业务模块生成的debugging级别的日志信息 |
(可选)配置当前终端允许输出的日志信息的最低级别 |
terminal logging level severity |
缺省情况下,控制台显示的日志信息最低等级为6(informational) |
监视终端是指以VTY类型用户线登录的用户终端。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
开启信息中心 |
info-center enable |
缺省情况下,信息中心处于开启状态 |
(可选)配置日志信息的输出规则 |
info-center source { module-name | default } { console | monitor | logbuffer | logfile | loghost } { deny | level severity } |
缺省情况下,日志信息的输出规则请参见1.1.5 |
(可选)配置时间戳输出格式 |
info-center timestamp { boot | date | none } |
缺省情况下,信息的时间戳输出格式为date格式 |
退回到用户视图 |
quit |
- |
允许日志信息输出到当前终端 |
terminal monitor |
缺省情况下,不允许日志信息输出到监视终端 |
允许调试信息输出到当前终端 |
terminal debugging |
缺省情况下,不允许调试信息输出到当前终端 调试信息指的是打开业务模块的调试信息开关后,业务模块生成的debugging级别的日志信息 |
(可选)配置当前终端允许输出的日志信息的最低级别 |
terminal logging level severity |
缺省情况下,监视终端显示的日志信息最低等级为6(informational) |
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
开启信息中心 |
info-center enable |
缺省情况下,信息中心处于开启状态 |
(可选)配置日志信息的输出规则 |
info-center source { module-name | default } { console | monitor | logbuffer | logfile | loghost } { deny | level severity } |
请选择其中一项进行配置 缺省情况下,日志信息的输出规则请参见1.1.5 |
info-center filter filter-name { module-name | default } { deny | level severity } |
||
(可选)配置发送日志信息时使用的源IP地址 |
info-center loghost source interface-type interface-number |
缺省情况下,使用出接口的主IP地址作为发送的日志信息的源IP地址 |
(可选)配置发往日志主机的日志信息的输出格式 |
info-center format { unicom | rfc5424 | sgcc | cmcc } |
缺省情况下,发往日志主机的日志信息的格式为非定制格式 |
(可选)配置发往日志主机的定位信息中携带设备序列号 |
info-center loghost locate-info with-sn |
缺省情况下,发往日志主机的日志定位信息中不携带设备序列号 |
(可选)配置发送的日志信息的时间戳格式 |
info-center timestamp loghost { date [ with-milliseconds ] | iso [ with-milliseconds | with-timezone ] * | no-year-date | none } |
缺省情况下,发往日志主机的日志信息的时间戳输出格式为date格式 |
配置日志主机及相关参数 |
info-center loghost [ vpn-instance vpn-instance-name ] { hostname | ipv4-address | ipv6 ipv6-address } [ port port-number ] [ dscp dscp-value ] [ facility local-number ] [ filter filter-name ] |
缺省情况下,未配置日志主机及相关参数 port-number参数的值需要和日志主机侧的配置一致,否则,日志主机接收不到日志信息 多次执行本命令,最多可以指定20台不同主机同时接收设备产生的日志信息 |
操作 |
命令 |
说明 |
进入系统视图 |
- |
|
开启信息中心 |
info-center enable |
缺省情况下,信息中心处于开启状态 |
允许日志信息输出到日志缓冲区 |
info-center logbuffer |
缺省情况下,允许日志输出到日志缓冲区 |
(可选)配置系统向日志缓冲区输出信息以及日志缓冲区的容量 |
info-center logbuffer size buffersize |
缺省情况下,日志缓冲区可存储512条信息 |
(可选)配置日志信息的输出规则 |
info-center source { module-name | default } { console | monitor | logbuffer | logfile | loghost } { deny | level severity } |
缺省情况下,日志信息的输出规则请参见1.1.5 |
(可选)配置时间戳输出格式 |
info-center timestamp { boot | date | none } |
缺省情况下,日志信息的时间戳输出格式为date格式 |
通过使用本特性,用户可以将系统产生的日志信息保存到设备的日志文件中以便随时查看。
日志在保存到日志文件前,先保存在日志文件缓冲区。系统会按照指定的频率将日志文件缓冲区的内容写入日志文件,用户也可以手工触发立即保存。成功保存后,保存前的日志文件缓冲区里的内容会被清空。
日志文件有容量限制,当日志文件的大小达到最大值,且日志文件写满保护功能处于关闭状态,系统会自动创建logfile1.log来存储日志。logfile1.log写满后,会被压缩成logfile1.log.gz,再自动创建logfile2.log来存储日志。logfile2.log写满后,会被压缩成logfile2.log.gz,再自动创建logfile3.log来存储日志,以此类推。当日志文件的个数达到设备支持的最大值时,系统会找出生成时间最早的压缩文件(例如为logfileX.log.gz),并创建一个同名日志文件(logfileX.log)来存储日志,logfileX.log写满后,会被压缩成logfileX.log.gz来替换现有的logfileX.log.gz,以此类推。建议及时备份日志文件和日志压缩文件,以免重要日志被覆盖。
日志文件有容量限制,当日志文件的大小达到最大值,且日志文件写满保护功能处于开启状态,不再覆盖旧日志或旧日志文件,而是停止记录日志。
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
开启信息中心 |
info-center enable |
缺省情况下,信息中心处于开启状态 |
|
开启保存日志文件功能 |
info-center logfile enable |
缺省情况下,允许日志信息输出到日志文件 |
|
(可选)开启日志文件写满保护功能 |
info-center logfile overwrite-protection [ all-port-powerdown ] |
缺省情况下,日志文件写满保护功能处于关闭状态 本命令仅FIPS模式下支持 |
|
(可选)配置单个日志文件最大能占用的存储空间的大小 |
info-center logfile size-quota size |
缺省情况下,单个日志文件最大能占用的存储空间为5MB 为了保证设备的正常运行,info-center logfile size-quota配置的日志文件的大小最小不能低于1MB,最大不能超过5MB |
|
(可选)配置单个日志文件使用率的告警门限 |
info-center logfile alarm-threshold usage |
缺省情况下,单个日志文件使用率的告警门限是80。即当单个日志文件使用率达到80%时,系统会提醒用户 将usage配置为0时,表示关闭日志文件使用率告警功能 |
|
(可选)配置存储日志文件的目录 |
info-center logfile directory dir-name |
缺省情况下,存储日志文件的目录为flash:/logfile 该命令会在设备重启或主用主控板和备用主控板倒换后失效(独立运行模式) 该命令会在IRF重启或全局主用主控板和全局备用主控板主备倒换后失效(IRF模式) |
|
将日志文件缓冲区中的内容保存到日志文件 |
配置自动保存的频率 |
info-center logfile frequency freq-sec |
二者选其一 logfile save命令在任意视图均可执行 |
手动保存 |
logfile save |
查看系统日志是了解设备状态、定位和排除网络问题的一个重要方法,而在系统日志中与设备安全相关的安全日志显得尤为重要。但通常情况下,安全日志与其它日志一同输出,经常被淹没在大量的系统日志中,很难识别、不便于查看。针对这个问题,系统提供了安全日志同步保存功能。安全日志同步保存功能的配置和安全日志文件的管理相互分离,安全日志文件实行专人专管。
开启安全日志同步保存功能后,系统将安全日志进行集中处理:当生成的日志信息中有安全日志,在不影响日志信息现有输出规则的前提下,系统会将安全日志信息同步保存到专用的安全日志文件。这样既实现了安全日志的集中管理,又有利于用户随时快捷地查看安全日志,了解设备状态。
安全日志会先被输出到安全日志文件缓冲区(security-logfile buffer),系统会按照配置中指定的频率将安全日志文件缓冲区的内容写入安全日志文件(安全日志管理员也可以手工触发保存)。当安全日志文件缓冲区里的内容成功保存到安全日志文件后,安全日志文件缓冲区会被立即清空。系统只支持单个安全日志文件。
为了防止安全日志的丢失,用户可以配置安全日志文件使用率告警上限。当达到上限时,系统会输出日志信息提醒管理员,此时,管理员可以使用安全日志管理员身份登录设备,将安全日志文件进行备份,以防止重要历史数据丢失。
表1-15 配置安全日志同步保存功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
开启信息中心 |
info-center enable |
缺省情况下,信息中心处于开启状态 |
开启安全日志同步保存功能 |
info-center security-logfile enable |
缺省情况下,安全日志同步保存功能处于关闭状态 |
配置设备自动保存安全日志文件的频率 |
info-center security-logfile frequency freq-sec |
|
(可选)配置单个安全日志文件最大能占用的存储空间的大小 |
info-center security-logfile size-quota size |
缺省情况下,安全日志文件最大能占用的存储空间的大小为10MB |
(可选)配置安全日志文件使用率的告警上限 |
info-center security-logfile alarm-threshold usage |
缺省情况下,安全日志文件使用率的告警门限是80(即当安全日志文件使用率达到80%时,系统会发出日志提醒用户) |
安全日志管理员通过AAA本地认证登录设备后能对安全日志文件进行维护。安全日志管理员的相关配置请参见“安全配置指导”中的“AAA”。
操作 |
命令 |
说明 |
(可选)显示安全日志文件的概要信息(只有安全日志管理员才能执行该命令) |
display security-logfile summary |
本命令在用户视图下执行 |
修改存储安全日志文件的路径 |
info-center security-logfile directory dir-name |
缺省情况下,存储安全日志文件路径为存储设备根目录下的seclog文件夹 该命令会在设备重启或主用主控板和备用主控板倒换后失效(独立运行模式) 该命令会在IRF重启或全局主用主控板和全局备用主控板主备倒换后失效(IRF模式) |
手动将安全日志文件缓冲区中的内容全部保存到安全日志文件 |
security-logfile save |
任意视图均可执行 |
通过使用本特性,用户可以将系统产生的诊断日志信息保存到设备的诊断日志文件中以便随时查看。
诊断日志在保存到诊断日志文件前,先保存在诊断日志文件缓冲区。系统会按照指定的频率将诊断日志文件缓冲区的内容写入诊断日志文件,用户也可以手工触发立即保存。成功保存后,保存前的诊断日志文件缓冲区里的内容会被清空。
诊断日志文件有容量限制,当诊断日志文件的大小达到最大值时,系统会自动创建diagfile1.log来存储诊断日志。diagfile1.log写满后,会被压缩成diagfile1.log.gz,再自动创建diagfile2.log来存储诊断日志。diagfile2.log写满后,会被压缩成diagfile2.log.gz,再自动创建diagfile3.log来存储诊断日志,以此类推。当诊断日志文件的个数达到设备支持的最大值时,系统会找出生成时间最早的压缩文件(例如为diagfileX.log.gz),并创建一个同名诊断日志文件(diagfileX.log)来存储诊断日志,diagfileX.log写满后,会被压缩成diagfileX.log.gz来替换现有的diagfileX.log.gz,以此类推。建议及时备份诊断日志文件和诊断日志压缩文件,以免重要日志被覆盖。
表1-17 配置诊断日志信息保存到诊断日志文件
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
开启信息中心 |
info-center enable |
缺省情况下,信息中心处于开启状态 |
|
开启诊断日志同步保存功能 |
info-center diagnostic-logfile enable |
缺省情况下,诊断日志同步保存功能处于开启状态 |
|
(可选)配置单个诊断日志文件最大可占用的存储空间的大小 |
info-center diagnostic-logfile quota size |
缺省情况下,单个诊断日志文件最大能占用的存储空间为5MB 为了保证设备的正常运行,info-center diagnostic-logfile quota配置的日志文件的大小最小不能低于1MB,最大不能超过10MB |
|
(可选)配置存储诊断日志文件的目录 |
info-center diagnostic-logfile directory dir-name |
缺省情况下,存储诊断日志文件路径为存储设备根目录下的diagfile文件夹 该命令会在设备重启或主用主控板和备用主控板倒换后失效(独立运行模式) 该命令会在IRF重启或全局主用主控板和全局备用主控板主备倒换后失效(IRF模式) |
|
将诊断日志文件缓冲区中的内容保存到诊断日志文件 |
配置自动保存的频率 |
info-center diagnostic-logfile frequency freq-sec |
二者选其一 缺省情况下,设备自动保存诊断日志文件的频率缺省值为86400 diagnostic-logfile save命令在任意视图均可执行 |
手动保存 |
diagnostic-logfile save |
设备在调试过程中,会产生大量的调试跟踪日志。如果调试跟踪日志文件存储空间太小,可能会导致日志被很快覆盖,不利于定位问题。使用本特性,可以用来配置调试跟踪日志文件最大能占用的存储空间的大小。系统只支持单个跟踪调试日志文件。
表1-18 配置调试跟踪日志文件
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置调试跟踪日志文件最大可占用的存储空间的大小 |
info-center trace-logfile quota |
缺省情况下,调试跟踪日志文件最大可占用的存储空间的大小为10MB |
日志缓冲区有容量限制,当存储的日志达到容量限制时,系统会直接使用最新日志覆盖最早生成的日志。配置日志信息的最短保存时间后,系统在覆盖一条日志前,会检查该日志在系统中存在的时间(根据日志生成时间和当前系统时间计算):
· 如果日志存在时间小于最短保存时间,则不删除该条日志,新日志保存失败;
· 如果日志存在时间大于最短保存时间,则使用最新的日志覆盖本条日志。
对于日志文件,配置该特性后,当设备中的日志文件数量达到最大限制,且当前使用的日志文件已无空间再记录新日志时,设备会查找出修改时间最早的日志压缩文件,并检查该日志压缩文件的存在时间(根据日志文件的修改时间和当前系统时间计算):
· 如果日志压缩文件的存在时间小于等于最短保存时间,则不处理该日志压缩文件,新日志保存失败;
· 如果日志压缩文件的存在时间大于最短保存时间,设备将创建一个与该压缩文件同名的日志文件来保存最新日志。处理细节可参见“配置日志信息保存到日志文件”。
使用本特性可以确保重要日志和日志文件在指定时间内不被新的日志覆盖。
表1-19 配置日志信息的保存时间
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置日志信息和日志文件的最短保存时间 |
info-center syslog min-age min-age |
缺省情况下,未配置日志信息和日志文件的最短保存时间 |
当用户进行命令行、参数或者Y/N确认信息输入时,如果被大量的日志信息打断,用户可能记不清已经输入了哪些字符串,还需要输入哪些字符串。使用命令行输入回显功能,能够协助用户配置。系统会在日志信息输出完毕后回显用户已有的输入或者Y/N确认信息,以便用户继续执行配置。
表1-20 配置命令行输入回显功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
开启命令行输入回显功能 |
info-center synchronous |
缺省情况下,命令行输入回显功能处于关闭状态 |
缺省情况下,业务模块每生成一条日志,信息中心会对应输出一条日志。如果业务模块连续生成的两条日志中模块名、信息等级、日志助记符、定位信息和信息文本字段的取值完全相同,则信息中心认为第二条日志为第一条日志的重复日志。
有些场景下,例如设备受到了ARP攻击、路由链路故障等,业务模块在短时间内会产生大量重复日志,记录和传输这些重复日志会浪费设备资源和网络资源,并可能导致有用的日志被淹没、被覆盖,不利于设备的维护。为了避免此问题,可开启重复日志抑制功能。
开启重复日志抑制功能后,业务模块每产生一条新日志,信息中心会输出该日志,并启动重复日志抑制定时器。抑制分阶段,不同阶段对应的抑制定时器时长不同,第一阶段的抑制时长为30秒、第二阶段的抑制时长为2分钟、第三及后续阶段的抑制时长均为10分钟,直到这次抑制流程结束。
· 在任一抑制阶段内,如果信息中心连续收到某条日志的重复日志,则信息中心不再逐条输出重复日志,而是等抑制时间到达时,生成一条汇总日志来供用户查阅,并进入下一个抑制阶段。汇总日志包含本阶段抑制的日志的内容和条数。
· 在任一抑制阶段内,如果信息中心收到其它新日志,则信息中心会进行以下处理:
¡ 结束对当前日志的抑制,并立即生成一条汇总日志来供用户查阅,汇总日志包含本阶段抑制的日志的内容和条数。
¡ 输出新日志,并针对新日志进入重复日志抑制第一阶段。
在任一抑制阶段,如果整个阶段内信息中心均未收到任何业务模块的日志,则删除重复日志抑制定时器,结束对当前日志的抑制,且不输出任何日志。
表1-21 配置重复日志抑制功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
开启重复日志抑制功能 |
info-center logging suppress duplicates |
缺省情况下,重复日志抑制功能处于关闭状态 |
下面以SHELL_CMD日志为例,来描述重复日志抑制效果。已知用户在设备上成功执行一条命令行时,SHELL模块会生成SHELL_CMD日志来记录用户执行的命令行,信息中心将SHELL_CMD日志封装后,输出到日志缓冲区。
(1) 为验证第一、二、三、四阶段(对应的时长分别为30秒、2分钟、10分钟、10分钟)的抑制效果,在25分钟内,重复执行命令行display logbuffer,(实验室环境,期间无其它日志生成),在日志缓冲区可看到如下日志。
<Sysname> display logbuffer
Log buffer: Enabled
Max buffer size: 1024
Actual buffer size: 512
Dropped messages: 0
Overwritten messages: 0
Current messages: 5
%Jul 20 13:01:20:615 2022 Sysname SHELL/6/SHELL_CMD: -Line=con0-IPAddr=**-User=**; Command is display logbuffer
%Jul 20 13:01:50:718 2022 Sysname SHELL/6/SHELL_CMD: -Line=con0-IPAddr=**-User=**; Command is display logbuffer This message repeated 2 times in last 30 seconds.
%Jul 20 13:03:50:732 2022 Sysname SHELL/6/SHELL_CMD: -Line=con0-IPAddr=**-User=**; Command is display logbuffer This message repeated 5 times in last 2 minutes.
%Jul 20 13:13:50:830 2022 Sysname SHELL/6/SHELL_CMD: -Line=con0-IPAddr=**-User=**; Command is display logbuffer This message repeated 10 times in last 10 minutes.
%Jul 20 13:23:50:211 2022 Sysname SHELL/6/SHELL_CMD: -Line=con0-IPAddr=**-User=**; Command is display logbuffer This message repeated 6 times in last 10 minutes.
以上日志表明:
¡ 新日志为SHELL/6/SHELL_CMD: -Line=con0-IPAddr=**-User=**; Command is display logbuffer。
¡ (第一阶段)在最近30秒内,信息中心抑制了2次重复日志。
¡ (第二阶段)在最近2分钟内,信息中心抑制了5次重复日志。
¡ (第三阶段)在最近10分钟内,信息中心抑制了10次重复日志。
¡ (第四阶段)在最近10分钟内,信息中心抑制了6次重复日志。
(2) 为验证在抑制时长内,抑制动作被新日志打断的效果,在25分钟后,连续执行3次命令行display logbuffer后,再执行命令行display interface brief。信息中心会退出对日志“SHELL/6/SHELL_CMD: -Line=con0-IPAddr=**-User=**; Command is display logbuffer”的抑制,输出新日志,并开始对新日志的抑制。在日志缓冲区可看到如下日志。
<Sysname> display logbuffer
Log buffer: Enabled
Max buffer size: 1024
Actual buffer size: 512
Dropped messages: 0
Overwritten messages: 0
Current messages: 5
%Jul 20 13:01:20:615 2022 Sysname SHELL/6/SHELL_CMD: -Line=con0-IPAddr=**-User=**; Command is display logbuffer
%Jul 20 13:01:50:718 2022 Sysname SHELL/6/SHELL_CMD: -Line=con0-IPAddr=**-User=**; Command is display logbuffer This message repeated 2 times in last 30 seconds.
%Jul 20 13:03:50:732 2022 Sysname SHELL/6/SHELL_CMD: -Line=con0-IPAddr=**-User=**; Command is display logbuffer This message repeated 5 times in last 2 minutes.
%Jul 20 13:13:50:830 2022 Sysname SHELL/6/SHELL_CMD: -Line=con0-IPAddr=**-User=**; Command is display logbuffer This message repeated 10 times in last 10 minutes.
%Jul 20 13:23:50:211 2022 Sysname SHELL/6/SHELL_CMD: -Line=con0-IPAddr=**-User=**; Command is display logbuffer This message repeated 6 times in last 10 minutes.
%Jul 20 13:24:56:205 2022 Sysname SHELL/6/SHELL_CMD: -Line=con0-IPAddr=**-User=**; Command is display logbuffer This message repeated 3 times in last 1 minute 6 seconds.
%Jul 20 13:25:41:205 2022 Sysname SHELL/6/SHELL_CMD: -Line=con0-IPAddr=**-User=**; Command is display interface brief.
<Sysname>
当系统日志较多时,对于用户不关心的日志,可以使用该命令,禁止指定模块日志的输出,或者禁止指定模块特定助记符的日志输出。
表1-22 禁止指定模块日志的输出
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
禁止指定模块日志的输出 |
info-center logging suppress module module-name mnemonic { all | mnemonic-value } |
缺省情况下,未禁止指定模块日志的输出 |
缺省情况下,设备的所有接口在接口状态改变时都会生成Link up/Link down的日志信息。为了方便管理,用户可以根据实际情况禁止某些接口生成接口Link up/Link down的日志信息:
· 用户只关心某个或某些接口的状态时,可以使用该功能禁止其它接口生成Link up/Link down日志信息。
· 某个接口的状态因不稳定而频繁地改变,生成大量的Link up/Link down日志信息时,可以使用该功能禁止该接口生成Link up/Link down日志信息。
使用本特性后,如果接口状态改变,将不再生成接口Link up/Link down的日志信息。这样可能会影响用户监控接口状态,所以在一般情况下建议采用缺省配置。
表1-23 禁止接口生成Link up/Link down日志信息
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入接口视图 |
interface interface-type interface-number |
- |
禁止接口生成Link up/Link down日志信息 |
undo enable log updown |
缺省情况下,允许所有接口在状态发生改变时生成接口Link up和Link down的日志信息 |
使用本特性后,设备除了根据输出规则将日志输出到各方向外,还会将日志信息封装成告警信息,发送到SNMP模块和日志告警缓冲区。
· 发送到SNMP模块后,是否输出到目的主机,以Trap还是Inform形式发送,由SNMP模块的配置决定,关于告警信息以及SNMP配置的详细介绍请参见“网络管理和监控配置指导”中的“SNMP”。
· 发送到日志告警缓冲区后,用户可通过“日志告警缓冲区对应的MIB节点”来直接读取日志信息封装成的告警信息。用户还可通过info-center syslog trap buffersize命令来配置日志告警缓冲区的大小。
表1-24 将系统日志封装成告警信息发送
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
将系统日志封装成告警信息发送 |
snmp-agent trap enable syslog |
缺省情况下,系统日志不会封装成告警信息发送 |
配置日志告警缓冲区的大小 |
info-center syslog trap buffersize buffersize |
缺省情况下,日志告警缓冲区的大小为1024条 |
在完成上述配置后,在任意视图下执行display命令可以显示配置后信息中心的运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset logbuffer命令可以将日志缓冲区的统计信息清除。
操作 |
命令 |
显示诊断日志文件的配置 |
display diagnostic-logfile summary |
显示各个输出方向的信息 |
display info-center |
显示用户创建的日志输出规则 |
display info-center filter [ filtername ] |
显示日志文件缓冲区的内容 |
display logfile buffer |
显示日志缓冲区的状态和日志缓冲区记录的日志信息(独立运行模式) |
display logbuffer [ reverse ] [ level severity | size buffersize | slot slot-number ] * [ last-mins mins ] |
显示日志缓冲区的状态和日志缓冲区记录的日志信息(IRF模式) |
display logbuffer [ reverse ] [ level severity | size buffersize | chassis chassis-number slot slot-number ] * [ last-mins mins ] |
显示日志缓冲区的概要信息(独立运行模式) |
display logbuffer summary [ level severity | slot slot-number ] * |
显示日志缓冲区的概要信息(IRF模式) |
display logbuffer summary [ level severity | chassis chassis-number slot slot-number ] * |
显示日志文件的配置 |
display logfile summary |
显示安全日志文件缓冲区的内容(只有安全日志管理员才能执行该命令) |
display security-logfile buffer |
清除日志缓冲区内的信息 |
reset logbuffer |
将信息等级高于等于warning的日志信息发送到控制台上;
允许输出日志信息的模块为FTP。
图1-2 日志信息发送到控制台配置组网图
# 开启信息中心。
<Device> system-view
[Device] info-center enable
# 关闭控制台方向所有模块日志信息的输出开关。
[Device] info-center source default console deny
由于系统对各方向允许输出的日志信息的缺省情况不一样,所以配置前必须将所有模块指定方向(本例为console)上日志信息的输出开关关闭,再根据当前的需求配置输出规则,以免输出太多不需要的信息。
# 配置输出规则:允许FTP模块的、等级高于等于warning的日志信息输出。
[Device] info-center source ftp console level warning
[Device] quit
# 允许日志信息输出到控制台。
<Device> terminal logging level 6
<Device> terminal monitor
The current terminal is enabled to display logs.
以上命令配置成功后,如果指定的模块产生了日志信息,信息中心会自动把这些日志发送到控制台,在控制台的屏幕上显示。
将系统的日志信息发送到Unix日志主机;
将信息等级高于等于informational的日志信息将会发送到日志主机上;
仅允许输出日志信息的模块为FTP。
图1-3 日志信息发送到Unix日志主机配置组网图
配置前请确保Device和PC之间路由可达。(具体配置步骤略)
(1) Device上的配置
# 开启信息中心。
<Device> system-view
[Device] info-center enable
# 配置发送日志信息到IP地址为1.2.0.1/16的日志主机,日志主机记录工具为local4。
[Device] info-center loghost 1.2.0.1 facility local4
# 关闭loghost方向所有模块日志信息的输出开关。
[Device] info-center source default loghost deny
由于系统对各方向允许输出的日志信息的缺省情况不一样,所以配置前必须将所有模块指定方向(本例为loghost)上日志信息的输出开关关闭,再根据当前的需求配置输出规则,以免输出太多不需要的信息。
# 配置输出规则:允许FTP模块的、等级高于等于informational的日志信息输出到日志主机(注意:允许输出信息的模块由产品决定)。
[Device] info-center source ftp loghost level informational
(2) 日志主机上的配置
不同厂商Unix操作系统上的配置可能不同,以下步骤仅作为参考。
a. 以超级用户的身份登录日志主机。
b. 在/var/log/路径下为Device创建同名日志文件夹Device,在该文件夹创建文件info.log,用来存储来自Device的日志。
# mkdir /var/log/Device
# touch /var/log/Device/info.log
c. 编辑/etc/路径下的文件syslog.conf,添加以下内容。
# Device configuration messages
local4.info /var/log/Device/info.log
以上配置中,local4表示日志主机接收日志的工具名称,info表示信息等级。Unix系统会把等级高于等于informational的日志记录到/var/log/Device/info.log文件中。
在编辑/etc/syslog.conf时应注意以下问题:
· 注释必须独立成行,并以字符#开头。
· 在文件名之后不得有多余的空格。
· /etc/syslog.conf中指定的工具名称及信息等级与Device上info-center loghost和info-center source命令的相应参数的指定值要保持一致,否则日志信息可能无法正确输出到日志主机上。
d. 查看系统守护进程syslogd的进程号,中止syslogd进程,并重新用-r选项在后台启动syslogd,使修改后配置生效。
# ps -ae | grep syslogd
147
# kill -HUP 147
# syslogd -r &
进行以上操作之后,Device的日志信息会输出到PC,PC会将这些日志信息存储到相应的文件中了。
系统的日志信息发送到Linux日志主机上;
将信息等级高于等于informational的日志信息发送到日志主机上;
仅允许输出日志信息的模块为FTP。
图1-4 日志信息发送到Linux日志主机配置组网图
配置前请确保Device和PC之间路由可达,具体配置步骤略。
(1) Device上的配置
# 开启信息中心。
<Device> system-view
[Device] info-center enable
#配置发送日志信息到IP地址为1.2.0.1/16的日志主机,日志主机记录工具为local5。
[Device] info-center loghost 1.2.0.1 facility local5
# 关闭loghost方向所有模块日志信息的输出开关。
[Device] info-center source default loghost deny
由于系统对各方向允许输出的日志信息的缺省情况不一样,所以配置前必须将所有模块的需求方向(本例为loghost)上日志信息的输出开关关闭,再根据当前的需求配置输出规则,以免输出太多不需要的信息。
# 配置输出规则:允许FTP模块、等级高于等于informational的日志信息输出到日志主机。
[Device] info-center source ftp loghost level informational
(2) 日志主机上的配置
不同厂商Linux操作系统上的配置可能不同,以下步骤仅作为参考。
a. 以超级用户的身份登录日志主机。
b. 在/var/log/路径下为Device创建同名日志文件夹Device,在该文件夹创建文件info.log,用来存储来自Device的日志。
# mkdir /var/log/Device
# touch /var/log/Device/info.log
c. 编辑/etc/路径下的文件syslog.conf,添加以下内容。
# Device configuration messages
local5.info /var/log/Device/info.log
以上配置中,local5表示日志主机接收日志的工具名称,info表示信息等级。Linux系统会把等级高于等于informational的日志记录到/var/log/Device/info.log文件中。
在编辑/etc/syslog.conf时应注意以下问题:
· 注释必须独立成行,并以字符#开头。
· 在文件名之后不得有多余的空格。
· /etc/syslog.conf中指定的工具名称及信息等级与Device上info-center loghost和info-center source命令的相应参数的指定值要保持一致,否则日志信息可能无法正确输出到日志主机上。
d. 查看系统守护进程syslogd的进程号,中止syslogd进程,并重新用-r选项在后台启动syslogd,使修改后配置生效。对Linux日志主机,必须保证syslogd进程是以-r选项启动。
# ps -ae | grep syslogd
147
# kill -9 147
# syslogd -r &
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!