一种系统日志存储方法及路由器 【技术领域】
本发明涉及网络工程技术领域, 尤其涉及一种系统日志存储方法及路由器。背景技术 路由器的系统日志是记录路由器系统中硬件、 软件和系统问题等系统事件的信 息, 用户可以通过查看所述系统日志监视该路由器系统中发生的系统事件。
目前, 在网络工程技术领域中, 支持记录系统日志的即具有系统记录 (System Log, SysLog) 管理功能的路由器已经出现。SysLog 路由器可以路将路由器的系统日志存储 在内置于 SysLog 路由器中的内部存储器中进行保存, 即本地存储模式 ; 某些 SysLog 路由 器还支持将系统日志通过用户数据包协议 (User Datagram Protocol, UDP) 数据包传送到 远程系统日志服务器中进行保存, 即远程存储模式。另外, SysLog 路由器可以选择记录模 式为本地存储、 远程存储或两者皆有。SysLog 路由器中的内部存储器中用于记录系统日志 的容量大约为几 KB, 当系统日志的体积大于所述容量时, SysLog 路由器会按预先设定的规 则将部分或全部已存储的系统日志清除, 以释放所述内部存储器中用于记录系统日志的容 量。远程系统日志服务器接收 SysLog 路由器发送的系统日志时, 需要指定特定的 IP 地址 和 UDP 端口, 然后接收系统日志再进行存储。
但是, SysLog 路由器使用本地存储模式记录系统日志时, 内部存储器中用于记录 系统日志的容量大约为几 KB, 存储容量不足, 为了记录最新的系统日志, 需要把部分老旧的 系统日志清除, 使系统日志所记录的系统事件内容受到局限, 而且所述内部存储器一般为 随机存取存储器 RAM, SysLog 路由器一旦重启, 之前所记录的系统日志也随之丢失。SysLog 路由器使用远程存储模式记录系统日志时, 一旦 SysLog 路由器与远程系统日志服务器之 间的连接断开, SysLog 功能也随之失效。
发明内容 为了解决上述问题, 本发明提供了一种系统日志存储方法及路由器, 用于记录海 量系统日志并对其进行长期存储, 本发明方案还能够在不依靠网络连接的前提下高效地记 录系统日志, 避免系统日志记录失效的可能, 提高了记录系统日志的可靠性。
一种系统日志存储方法, 包括 :
若当前的存储模式为外设存储模式, 则判断是否成功挂载外部存储设备 ;
若未成功挂载外部存储设备, 则将路由器的系统日志存储于所述路由器的内部存 储器中, 若成功挂载外部存储设备, 则按照所述外设存储模式所设定的规则将所述路由器 的系统日志存储于所述外部存储设备中。
一种路由器, 包括 :
判断模块, 用于若当前的存储模式为外设存储模式, 则判断是否成功挂载外部存 储设备 ;
存储控制模块, 用于若未成功挂载外部存储设备, 则将路由器的系统日志存储于
路由器的内部存储器中, 若成功挂载外部存储设备, 则按照所述外设存储模式所设定的规 则将所述路由器的系统日志存储于所述外部存储设备中。
从以上技术方案可以看出, 本发明实施例具有以下优点 :
当路由器的存储模式设定为外设存储模式时, 如果路由器上成功挂载外部存储设 备, 则按照所述外设存储模式所设定的规则将所述路由器的系统日志存储于所述外部存储 设备中, 由于外部存储设备的存储容量可以无限扩容, 因此通过本发明方法, 可以记录海量 系统日志并对其进行长期存储, 使用本发明方案还能够在不依靠网络连接的前提下高效地 记录系统日志, 避免系统日志记录失效的可能, 提高了记录系统日志的可靠性。 附图说明
图 1 为本发明第一实施例的系统日志存储方法流程图 ; 图 2 为本发明第二实施例的系统日志存储方法流程图 ; 图 3 为本发明第三实施例的系统日志存储方法流程图 ; 图 4 为本发明第四实施例的路由器结构图 ; 图 5 为本发明第五实施例的路由器结构图。具体实施方式 本发明实施例提供了一种系统日志存储方法, 用于记录海量系统日志并对其进行 长期存储, 使用本发明方案, 能够在不依靠网络连接的前提下高效地记录系统日志, 避免系 统日志记录失效的可能, 提高了记录系统日志的可靠性。本发明实施例还提供实现所述方 法的路由器, 以下将分别进行详细说明。
本发明第一实施例将对一种系统日志存储方法进行详细说明, 所述方法具体流程 请参见图 1, 包括步骤 :
101、 判断是否成功挂载外部存储设备。
本说明书背景技术部分中已经提到, 目前 SysLog 路由器的存储模式包括本地存 储模式和远程存储模式, 本发明实施例所提供的新型系统日志存储方法, 在路由器系统中 的对应存储模式命名为外设存储模式。
若当前的存储模式已经被设定为外设存储模式, 则判断路由器上是否成功挂载外 部存储设备。
其中, 所述外部存储设备为可移动式存储设备, 而且并不限定于某种特定的类型 或型号, 所述外部存储设备的存储容量亦可根据用户的实际需要进行调整, 此处不作具体 限定。
102、 若未成功挂载外部存储设备, 则将系统日志存储于路由器的内部存储器中, 若成功挂载外部存储设备, 则按照外设存储模式所设定的规则将系统日志存储于外部存储 设备中。
根据步骤 101 中的判断结果进行后续处理, 若判断结果为未成功挂载外部存储设 备, 则将路由器的系统日志存储于所述路由器的内部存储器中, 若判断结果为成功挂载外 部存储设备, 则按照所述外设存储模式所设定的规则将所述路由器的系统日志存储于所述 外部存储设备中。
尤其重要的是, 将所述系统日志存储于外部存储设备中时, 需要生成系统日志文 件, 系统日志文件可以是文本格式, 或者其它可记录系统日志的文件格式, 此处不作具体限 定。 这种存储格式和本地存储模式、 远程存储模式下的存储格式有所不同, 因为在本地存储 模式下, 系统日志是以直接记录的方式存储在内部存储器中的, 这是由 RAM 的存储方式所 决定的, 而在远程存储模式下, 由于系统日志要经由 UDP 数据包所发送, 所以其存储格式是 根据服务器而定的。
其中, 所述外设存储模式所设定的规则将在本说明书的后续实施例中进行详细说 明。
在本实施例中, 当路由器的存储模式设定为外设存储模式时, 如果路由器上成功 挂载外部存储设备, 则按照所述外设存储模式所设定的规则将所述路由器的系统日志存储 于所述外部存储设备中, 由于外部存储设备的存储容量可以无限扩容, 因此通过本发明方 法, 可以记录海量系统日志并对其进行长期存储, 使用本发明方案还能够在不依靠网络连 接的前提下高效地记录系统日志, 避免系统日志记录失效的可能, 提高了记录系统日志的 可靠性。
本发明第二实施例将对第一实施例所述的系统日志存储方法进行更详尽的补充 说明, 本实施例所述的方法具体流程请参见图 2, 包括步骤 :
201、 将存储模式设定为第一外设存储模式。
本说明书背景技术部分中已经提到, 目前 SysLog 路由器的存储模式包括本地存 储模式和远程存储模式, 本发明实施例所提供的新型系统日志存储方法, 在路由器系统中 的对应存储模式命名为外设存储模式。对于外设存储模式的实现方式, 本发明方案可以细 分为两种, 包括第一外设存储模式和第二外设存储模式, 本实施例的说明对象为第一外设 存储模式, 第二外设存储模式将在第三实施例里进行说明。
第一外设存储模式设定的存储规则说明如下 :
在第一外设存储模式下, 支持将路由器的系统日志存储在外部存储设备中, 不支 持将路由器的系统日志存储在路由器的内部存储器或远程服务器中。
若未成功挂载外部存储设备, 则将所述路由器的系统日志存储于临时内存中, 所 述临时内存为向所述路由器的内部存储器申请的临时存储空间 ;
若成功挂载外部存储设备, 则将所述路由器的系统日志存储于所述外部存储设备 中。
因此, 实现本发明方法的时, 需要将路由器的存储模式设定为第一外设存储模式。
202、 判断是否成功挂载外部存储设备。
在步骤 201 之后, 当前路由器的存储模式已经被设定为第一外设存储模式, 若路 由器启动工作, 则判断路由器上是否成功挂载外部存储设备。
其中, 所述外部存储设备为可移动式存储设备, 包括可读写存储器或者其它能够 作为本发明中路由器的外部存储设备, 此处不作具体限定。另外, 可读写存储器可以为 USB 存储器、 可移动硬盘或者可移动存储卡, 此处只是举例, 并不作具体限定。因此所述外部存 储设备并不限定于某种特定的类型或型号, 所述外部存储设备的存储容量亦可根据用户的 实际需要进行调整, 因为所述外设存储设备的存储容量一般可达几百 MB 甚至几百 GB, 因此 能够对系统日志进行海量存储, 对于外部存储设备的具体容量, 此处也不作具体限定。203、 若未成功挂载外部存储设备, 则将系统日志存储于临时内存中, 若成功挂载 外部存储设备, 则将系统日志存储于外部存储设备中。
按照第一外设存储模式所设定的规则, 若路由器未成功挂载外部存储设备, 则将 所述路由器的系统日志存储于临时内存中, 若成功挂载外部存储设备, 则将所述路由器的 系统日志存储于所述外部存储设备中。
尤其重要的是, 将所述系统日志存储于外部存储设备中时, 需要生成系统日志文 件, 系统日志文件可以是文本格式, 或者其它可记录系统日志的文件格式, 此处不作具体限 定。 这种存储格式和本地存储模式、 远程存储模式下的存储格式有所不同, 因为在本地存储 模式下, 系统日志是以直接记录的方式存储在内部存储器中的, 这是由 RAM 的存储方式所 决定的, 而在远程存储模式下, 由于系统日志要经由 UDP 数据包所发送, 所以其存储格式是 根据服务器而定的。
优选地, 若成功挂载外部存储设备, 则以后将所述路由器的系统日志存储于所述 外部存储设备中, 并把未成功挂载外部存储设备期间的存储于临时内存中的系统日志复制 到所述外部存储设备中, 复制后一般清除所述临时内存的空间, 并释放所述临时内存。 这当 中涉及的存储格式转换由路由器内部完成。 其中, 所述临时内存为向所述路由器的内部存储器申请的临时存储空间, 当存储 模式被设定为第一外设存储模式时, 系统就会向路由器的内部存储器申请临时空间, 用于 存储该存储模式下未挂载外部存储设备时系统中所生成的系统日志, 而一旦发现成功挂载 外部存储设备, 以后所发生的系统日志就被存储在所述外部存储设备中。
204、 对系统日志进行显示处理。
存储路由器的系统日志, 是为了供用户监控路由器系统的系统事件。因此在经过 步骤 201、 202 和 203 后, 系统成功存储系统日志后, 本步骤将对系统日志进行显示处理。
在第一外设存储模式下 :
可选的, 从所述外部存储设备中直接读取所述系统日志, 并显示所述系统日志。
步骤 203 中提到实际存储在外部存储设备中的系统日志为系统日志文件, 而这种 显示方式是把所述外部存储设备当作内部存储器一样对待, 因此这种显示方式实际上需要 读取对应的系统日志文件并进行解析, 才能按照现有技术的显示方式进行显示。这种情况 下外部存储设备依然挂载于路由器上, 相当于扩展了存储空间的内部存储器。
可选的, 根据所述外部存储设备中系统日志生成系统日志文件, 所述系统日志文 件供终端设备进行读取。
步骤 203 中提到实际存储在外部存储设备中的系统日志为系统日志文件, 当所述 外部存储设备依然挂载在路由器上时, 与所述路由器连接的终端设备能够直接读取存储于 所述外部存储设备中的系统日志文件, 当所述外部存储设备从路由器上移除, 可以挂载到 终端设备上供所述终端设备读取。
在本实施例中, 当路由器的存储模式设定为第一外设存储模式时, 如果路由器上 成功挂载外部存储设备, 则按照所述第一外设存储模式所设定的规则将所述路由器的系统 日志存储于所述外部存储设备中, 由于外部存储设备的存储容量可以无限扩容, 因此通过 本发明方法, 可以记录海量系统日志并对其进行长期存储, 使用本发明方案还能够在不依 靠网络连接的前提下高效地记录系统日志, 避免系统日志记录失效的可能, 提高了记录系
统日志的可靠性。
本发明第三实施例将对第一实施例所述的系统日志存储方法进行更详尽的补充 说明, 本实施例所述的方法具体流程请参见图 3, 包括步骤 :
301、 将存储模式设定为第二外设存储模式。
本说明书背景技术部分中已经提到, 目前 SysLog 路由器的存储模式包括本地存 储模式和远程存储模式, 本发明实施例所提供的新型系统日志存储方法, 在路由器系统中 的对应存储模式命名为外设存储模式。对于外设存储模式的实现方式, 本发明方案可以细 分为两种, 包括第一外设存储模式和第二外设存储模式, 本实施例的说明对象为第二外设 存储模式, 第二外设存储模式已在第二实施例里进行说明。
第二外设存储模式设定的存储规则说明如下 :
在第二外设存储模式下, 支持将路由器的系统日志存储在外部存储设备中, 同时 支持将路由器的系统日志存储在路由器的内部存储器或远程服务器中。
若未成功挂载外部存储设备, 则将所述路由器的系统日志存储于所述路由器的内 部存储器或远程服务器中 ;
若成功挂载外部存储设备, 则将所述路由器的系统日志存储于所述外部存储设备 中。 因此, 实现本发明方法的时, 需要将路由器的存储模式设定为第二外设存储模式。
302、 判断是否成功挂载外部存储设备。
在步骤 301 之后, 当前路由器的存储模式已经被设定为第二外设存储模式, 若路 由器启动工作, 则判断路由器上是否成功挂载外部存储设备。
其中, 所述外部存储设备为可移动式存储设备, 包括可读写存储器或者其它能够 作为本发明中路由器的外部存储设备, 此处不作具体限定。另外, 可读写存储器可以为 USB 存储器、 可移动硬盘或者可移动存储卡, 此处只是举例, 并不作具体限定。因此所述外部存 储设备并不限定于某种特定的类型或型号, 所述外部存储设备的存储容量亦可根据用户的 实际需要进行调整, 因为所述外设存储设备的存储容量一般可达几百 MB 甚至几百 GB, 因此 能够对系统日志进行海量存储, 对于外部存储设备的具体容量, 此处也不作具体限定。
303、 若未成功挂载外部存储设备, 则将系统日志存储于路由器的内部存储器或远 程服务器中, 若成功挂载外部存储设备, 则将系统日志存储于外部存储设备中。
按照第二外设存储模式所设定的规则, 若未成功挂载外部存储设备, 则将所述路 由器的系统日志存储于所述路由器的内部存储器或远程服务器中, 若成功挂载外部存储设 备, 则将所述路由器的系统日志存储于所述外部存储设备中。
尤其重要的是, 将所述系统日志存储于外部存储设备中时, 需要生成系统日志文 件, 系统日志文件可以是文本格式, 或者其它可记录系统日志的文件格式, 此处不作具体限 定。 这种存储格式和本地存储模式、 远程存储模式下的存储格式有所不同, 因为在本地存储 模式下, 系统日志是以直接记录的方式存储在内部存储器中的, 这是由 RAM 的存储方式所 决定的, 而在远程存储模式下, 由于系统日志要经由 UDP 数据包所发送, 所以其存储格式是 根据服务器而定的。
优选地, 若成功挂载外部存储设备, 则以后将所述路由器的系统日志存储于所述 外部存储设备中, 并把未成功挂载外部存储设备期间的存储于所述路由器的内部存储器或
远程服务器中的系统日志复制到所述外部存储设备中, 这样就可以同步地在外部存储设备 和路由器的内部存储器或远程服务器中存储系统日志。 这当中涉及的存储格式转换由路由 器内部完成。
304、 对系统日志进行显示处理。
存储路由器的系统日志, 是为了供用户监控路由器系统的系统事件。因此在经过 步骤 301、 302 和 303 后, 系统成功存储系统日志后, 本步骤将对系统日志进行显示处理。
在第二外设存储模式下 :
可选的, 从所述外部存储设备中直接读取所述系统日志, 并显示所述系统日志。
步骤 303 中提到实际存储在外部存储设备中的系统日志为系统日志文件, 而这种 显示方式是把所述外部存储设备当作内部存储器一样对待, 因此这种显示方式实际上需要 读取对应的系统日志文件并进行解析, 才能按照现有技术的显示方式进行显示。这种情况 下外部存储设备依然挂载于路由器上, 相当于扩展了存储空间的内部存储器。
可选的, 根据所述外部存储设备中系统日志生成系统日志文件, 所述系统日志文 件供终端设备进行读取。
步骤 303 中提到实际存储在外部存储设备中的系统日志为系统日志文件, 当所述 外部存储设备依然挂载在路由器上时, 与所述路由器连接的终端设备能够直接读取存储于 所述外部存储设备中的系统日志文件, 当所述外部存储设备从路由器上移除, 可以挂载到 终端设备上供所述终端设备读取。 在第二外设存储模式下存储在路由器的内部存储器或远程服务器上的系统日志, 按照现在技术进行显示处理, 此处不作详细说明。
在本实施例中, 当路由器的存储模式设定为第二外设存储模式时, 如果路由器上 成功挂载外部存储设备, 则按照所述第二外设存储模式所设定的规则将所述路由器的系统 日志存储于所述外部存储设备中, 由于外部存储设备的存储容量可以无限扩容, 因此通过 本发明方法, 可以记录海量系统日志并对其进行长期存储, 使用本发明方案还能够在不同 存储体中记录系统日志, 避免系统日志记录失效的可能, 提高了记录系统日志的可靠性。
本发明第四实施例将对一种实现第一实施例所述的方法的路由器进行详细说明, 所述路由器结构图请参见图 4, 包括 :
判断模块 401, 用于若当前的存储模式为外设存储模式, 则判断是否成功挂载外部 存储设备。
本说明书背景技术部分中已经提到, 目前 SysLog 路由器的存储模式包括本地存 储模式和远程存储模式, 本发明实施例所提供的新型路由器中新增一种存储模式, 命名为 外设存储模式。
若当前的存储模式已经被设定为外设存储模式, 则判断路由器上是否成功挂载外 部存储设备。
其中, 所述外部存储设备为可移动式存储设备, 而且并不限定于某种特定的类型 或型号, 所述外部存储设备的存储容量亦可根据用户的实际需要进行调整, 此处不作具体 限定。
存储控制模块 402, 用于根据判断模块 401 的判断结果, 若未成功挂载外部存储设 备, 则将路由器的系统日志存储于路由器的内部存储器中, 若成功挂载外部存储设备, 则按
照所述外设存储模式所设定的规则将所述路由器的系统日志存储于所述外部存储设备中。
具体地, 存储控制模块 402 可以为 USB 控制模块, 用于连接外部存储设备, 并将所 述系统日志存储于所述外部存储设备中。此处, 存储控制模块 402 可以为 USB 控制模块而 不限定于 USB 控制模块。
尤其重要的是, 将所述系统日志存储于外部存储设备中时, 需要生成系统日志文 件, 系统日志文件可以是文本格式, 或者其它可记录系统日志的文件格式, 此处不作具体限 定。 这种存储格式和本地存储模式、 远程存储模式下的存储格式有所不同, 因为在本地存储 模式下, 系统日志是以直接记录的方式存储在内部存储器中的, 这是由 RAM 的存储方式所 决定的, 而在远程存储模式下, 由于系统日志要经由 UDP 数据包所发送, 所以其存储格式是 根据服务器而定的。
除此之外, 所述路由器还包括连接在系统总线上的 CPU、 ADSL 线路接口模块、 以太 网接口模块等, 这些都属于现有技术, 此处不再作详细说明。
在本实施例中, 当路由器的存储模式设定为外设存储模式时, 如果判断模块 401 的判断结果为路由器上成功挂载外部存储设备, 则存储控制模块 402 按照所述外设存储模 式所设定的规则将所述路由器的系统日志存储于所述外部存储设备中, 由于外部存储设备 的存储容量可以无限扩容, 因此使用本发明的路由器, 可以记录海量系统日志并对其进行 长期存储, 使用本发明的路由器还能够在不依靠网络连接的前提下高效地记录系统日志, 避免系统日志记录失效的可能, 提高了记录系统日志的可靠性。
本发明第五实施例将对第四实施例所述的路由器进行详细说明, 所述路由器结构 图请参见图 5, 包括 :
判断模块 501, 用于若当前的存储模式为外设存储模式, 则判断是否成功挂载外部 存储设备。
本说明书背景技术部分中已经提到, 目前 SysLog 路由器的存储模式包括本地存 储模式和远程存储模式, 本发明实施例所提供的新型路由器中新增一种存储模式, 命名为 外设存储模式。
若当前的存储模式已经被设定为外设存储模式, 则判断路由器上是否成功挂载外 部存储设备。
其中, 所述外部存储设备为可移动式存储设备, 而且并不限定于某种特定的类型 或型号, 所述外部存储设备的存储容量亦可根据用户的实际需要进行调整, 此处不作具体 限定。
存储控制模块 502, 用于根据判断模块 501 的判断结果, 若未成功挂载外部存储设 备, 则将路由器的系统日志存储于路由器的内部存储器中, 若成功挂载外部存储设备, 则按 照所述外设存储模式所设定的规则将所述路由器的系统日志存储于所述外部存储设备中。
具体地, 存储控制模块 502 可以为 USB 控制模块, 用于连接外部存储设备, 并将所 述系统日志存储于所述外部存储设备中。此处, 存储控制模块 402 可以为 USB 控制模块而 不限定于 USB 控制模块。
尤其重要的是, 将所述系统日志存储于外部存储设备中时, 需要生成系统日志文 件, 系统日志文件可以是文本格式, 或者其它可记录系统日志的文件格式, 此处不作具体限 定。 这种存储格式和本地存储模式、 远程存储模式下的存储格式有所不同, 因为在本地存储模式下, 系统日志是以直接记录的方式存储在内部存储器中的, 这是由 RAM 的存储方式所 决定的, 而在远程存储模式下, 由于系统日志要经由 UDP 数据包所发送, 所以其存储格式是 根据服务器而定的。
设定模块 503, 用于将存储模式设定为所述外设存储模式。
处理模块 504, 用于对所述系统日志进行显示处理。
处理模块 504 的所述显示两种处理有两种 :
可选的, 从所述外部存储设备中直接读取所述系统日志, 并显示所述系统日志。
前述提到实际存储在外部存储设备中的系统日志为系统日志文件, 而这种显示方 式是把所述外部存储设备当作内部存储器一样对待, 因此这种显示方式实际上需要读取对 应的系统日志文件并进行解析, 才能按照现有技术的显示方式进行显示。这种情况下外部 存储设备依然挂载于路由器上, 相当于扩展了存储空间的内部存储器。
可选的, 根据所述外部存储设备中系统日志生成系统日志文件, 所述系统日志文 件供终端设备进行读取。
前述中提到实际存储在外部存储设备中的系统日志为系统日志文件, 当所述外部 存储设备依然挂载在路由器上时, 与所述路由器连接的终端设备能够直接读取存储于所述 外部存储设备中的系统日志文件, 当所述外部存储设备从路由器上移除, 可以挂载到终端 设备上供所述终端设备读取。 除此之外, 所述路由器还包括连接在系统总线上的 CPU、 ADSL 线路接口模块、 以太 网接口模块等, 这些都属于现有技术, 此处不再作详细说明。
在本实施例中, 设定模块 503 路由器的存储模式设定为外设存储模式时, 如果判 断模块 501 的判断结果为路由器上成功挂载外部存储设备, 则存储控制模块 502 按照所述 外设存储模式所设定的规则将所述路由器的系统日志存储于所述外部存储设备中, 后续处 理模块 504 还能够对系统日志进行显示处理。由于外部存储设备的存储容量可以无限扩 容, 因此使用本发明的路由器, 可以记录海量系统日志并对其进行长期存储, 使用本发明的 路由器还能够在不依靠网络连接的前提下高效地记录系统日志, 避免系统日志记录失效的 可能, 提高了记录系统日志的可靠性。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以 通过程序来指令相关的硬件完成, 所述的程序可以存储于一种计算机可读存储介质中, 上 述提到的存储介质可以是只读存储器, 磁盘或光盘等。
以上对本发明所提供的一种系统日志存储方法及路由器进行了详细介绍, 对于本 领域的一般技术人员, 依据本发明实施例的思想, 在具体实施方式及应用范围上均会有改 变之处, 综上所述, 本说明书内容不应理解为对本发明的限制。