CN109510732A - 一种实现网络设备自动化日志过滤方法及其系统 - Google Patents

一种实现网络设备自动化日志过滤方法及其系统 Download PDF

Info

Publication number
CN109510732A
CN109510732A CN201810683635.4A CN201810683635A CN109510732A CN 109510732 A CN109510732 A CN 109510732A CN 201810683635 A CN201810683635 A CN 201810683635A CN 109510732 A CN109510732 A CN 109510732A
Authority
CN
China
Prior art keywords
journal file
filtered
filename
ansi
network equipment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201810683635.4A
Other languages
English (en)
Inventor
周国强
张松涛
袁聚懋
秦水
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Post and Telecommunication University
Nanjing University of Posts and Telecommunications
Original Assignee
Nanjing Post and Telecommunication University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing Post and Telecommunication University filed Critical Nanjing Post and Telecommunication University
Priority to CN201810683635.4A priority Critical patent/CN109510732A/zh
Publication of CN109510732A publication Critical patent/CN109510732A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/028Capturing of monitoring data by filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/069Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0245Filtering by information in the payload

Abstract

本发明公开了一种实现网络设备自动化日志过滤方法及其系统,方法包括如下步骤:1)获取日志文件的文件名;2)通过正则匹配,获取日志文件名与其后缀,在文件名后添加”_”形成新的文件名,与后缀拼接,形成新的文件名;3)对ANSI ESC序列进行过滤;4)对无效十六进制字符进行过滤;5)将过滤后的日志文件写入新创建的日志文件中。本发明无须对开发的项目进行修改,即可对出现乱码的日志文件进行过滤,在不覆盖原有日志文件的前提下生成新的不含乱码的日志文件副本,提高了开发效率。

Description

一种实现网络设备自动化日志过滤方法及其系统
技术领域
本发明属于网络通信技术领域,具体涉及一种实现网络设备自动化日志过滤方法及其系统。
背景技术
在网络设备中,最常用的日志记录方法就是网络设备读取交互操作中的交互信息,通过文件写入重定向操作,将日志信息写入到日志文本中。在一般情况下,这种方法无疑是高效的,所看即所得,但是在网络设备中,这种日志记录方法将导致日志内容出现乱码。在网络设备中查看日志文本无任何异常,但在文本查看器中查看日志,便会发现大量乱码,这给开发人员进行开发带来了很多不便。
在网络设备的开发过程中,日志是必不可少的一部分,因为网络设备无法在本地调试,一旦出现问题,极大程度上需要依赖于日志文件,而日志文件的可读性也尤为重要,日志文件中出现的乱码会给开发人员带来极大的阻碍。
Python是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。Python的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。
正则表达式是对字符串和特殊字符操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式是一种文本模式,模式描述在搜索文本时要匹配的一个或多个字符串。
发明内容
针对现有技术存在的不足,本发明目的是提供一种实现网络设备自动化日志过滤方法及其系统,该过滤方法会对日志文件进行二次过滤,不仅可以过滤掉无效的十六进制ASCII字符,还能过滤掉控制屏幕输出格式的ANSI ESC序列,在人力和效率准确率上有着显著效果。
为了实现上述目的,本发明是通过如下的技术方案来实现:
本发明的一种实现网络设备自动化日志过滤方法,包括以下步骤:
1)获取日志文件的文件名;
2)通过正则匹配,获取日志文件名与其后缀,在文件名后添加”_”形成新的文件名,与后缀拼接,形成新的文件名;
3)对ANSI ESC序列进行过滤;
4)对无效十六进制字符进行过滤;
5)将过滤后的日志文件写入新创建的日志文件中。
步骤1)中,自动化日志过滤方法提供了调用接口,开发人员将需要过滤的日志文件的文件名作为参数传入,便可对日志文件进行过滤操作。
步骤2)中,新的文件名形成方法如下:
调用接口传入的是带后缀名的完整文件名,为了在不覆盖原日志文件的基础上将过滤信息写入新的日志文件中,需要对文件名进行解析,得到去除后缀名之后的文件名,基于该文件名去创建日志文件副本。
步骤3)中,对ANSI ESC序列进行过滤的方法如下:
ANSI ESC序列是用于控制输出格式的序列,ANSI ESC序列在日志文件中会变成乱码,通过正则表达式,匹配全部ANSI ESC序列,对日志文件中的ANSI ESC序列进行过滤。
步骤4)中,对无效十六进制字符进行过滤的方法如下:
首先需要找出哪些十六进制字符为无效的,然后对它们进行过滤。
步骤5)中,将过滤后的日志文件写入新创建的日志文件中具体方法如下:
为了节省内存,日志文件的读写同时进行,每读一行,先进行过滤,再将其写入日志文件副本中。
本发明的一种实现网络设备自动化日志过滤系统,包括
输入模块,提供调用接口,用于获取日志文件的文件名,并将其转换为新日志文件的文件名,供输出模块使用;
过滤模块,用于对出现乱码的日志文件进行过滤,即首先对控制屏幕格式的ANSIESC序列进行过滤,通过正则表达式,匹配全部ANSI ESC序列,实现对日志文件中的ANSIESC序列的过滤,其次,对无效的十六进制字符进行过滤,通过遍历所有的十六进制字符,找出其中哪些是无效的,然后对它们进行过滤;;
和输出模块,用于将过滤后的日志文件内容写入新的日志文件中。
本发明在需要进行日志文件过滤时,网络设备可以使用日志过滤系统进行日志过滤,首先获取日志文件的文件名,生成日志文件副本,对日志文件进行两次过滤,先过滤掉用于控制屏幕输出格式的ANSI ESC序列,再过滤掉无效的十六进制字符,最后将过滤后的日志写入日志副本文件中。基于上述描述可知,通过日志过滤系统,无须对开发的项目进行修改,即可对出现乱码的日志文件进行过滤,在不覆盖原有日志文件的前提下生成新的不含乱码的日志文件副本,提高了开发效率。
附图说明
图1为本发明的一种实现网络设备自动化日志过滤方法工作流程图;
图2为本发明的一种实现网络设备自动化日志过滤系统框图。
具体实施方式
为使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体实施方式,进一步阐述本发明。
针对日志文件中出现的乱码,可以实现自动化地过滤,并在不覆盖原有日志文件的基础上,将过滤后的日志文件写入新的日志文件中。对于日志文件中的多余空格,可以实现智能过滤。通过正则表达式对乱码进行匹配,使用python实现的软件系统为开发人员提供调用接口,在不改变开发项目结构的基础上实现乱码的过滤。
参见图1,该实施例可以应用于一切具有日志过滤需求的网络设备(例如,防火墙、路由器、交换机等设备)上,该日志过滤方法包括如下步骤:
步骤1:获取日志文件的文件名。
在一实施例中,由于多个日志文件存在乱码,因此基于日志文件文件名对日志文件进行过滤,增加过滤方法的普适性,日志过滤方法在接收到传入的日志文件名后,便会自动进行过滤。
步骤2:通过正则匹配,获取日志文件名与其后缀,在文件名后添加”_”形成新的文件名,与后缀拼接,形成新的文件名。
在一实施例中,为了考虑日志文件的安全性,过滤方法不会覆盖原日志文件,而是创建一个新的日志文件。例如,需要进行过滤的日志为“test.log”,那么,对于过滤后的日志内容则会存储到“test_.log”日志文件中。
步骤3:对ANSI ESC序列进行过滤。
主要对两种类型的乱码进行过滤,一种是ANSI ESC序列,一种是无效的十六进制字符。ANSI ESC序列以两个特定的字符作为开头(ESC转义字符和左方括号),ESC转义字符属于无效的十六进制字符,因此不能先对无效的十六进制字符进行过滤,不然会破坏ANSIESC序列结构,导致过滤不完全。
在一实施例中,通过正则匹配对日志文件进行过滤。首先分析潜在的ANSI ESC序列,然后分析ANSI ESC序列的特定语法,使用正则匹配对其进行过滤。例如对于ESC[PnD这样的ANSI ESC序列,ESC、[与D为固定字符,Pn为特定的列,为可变字符,因此使用’\x1b\[\d+D’正则匹配对其过滤。
步骤4:对无效十六进制字符进行过滤。
在一实施例中,日志过滤方法可以对无效的十六进制字符进行过滤。首先筛选出对于日志文件无效的十六进制字符,然后对于无效的十六进制字符,在日志文件中进行过滤。
在一实施例中,针对与乱码伴生出现的无效空格,日志过滤方法可以对其进行有效地过滤,而不影响日志文件的阅读,这一点在英文日志中尤为重要。对于日志文件中出现的乱码,在过滤的同时过滤掉其前面的若干空格,实现对无效空格的过滤。
步骤5:将过滤后的日志文件写入新创建的日志文件中。
在一示例性场景中,开发人员查看日志文件时,发现日志文件中存在乱码,两种方案可供开发人员选择。一种是,手动执行日志过滤方法,指定日志文件文件名,对日志文件进行过滤;第二种方案是,对项目进行修改,在日志文件输出完毕后调用日志过滤方法,实现日志文件的过滤。推荐使用第二种方法,因为第二种方法会在每次日志输出完毕后自动对日志文件进行过滤。
由上述实施例可知,在需要进行日志文件过滤时,网络设备可以使用日志过滤系统进行日志过滤,首先获取日志文件的文件名,生成日志文件副本,对日志文件进行两次过滤,先过滤掉用于控制屏幕输出格式的ANSI ESC序列,再过滤掉无效的十六进制字符,最后将过滤后的日志写入日志副本文件中。基于上述描述可知,通过日志过滤系统,无须对开发的项目进行修改,即可对出现乱码的日志文件进行过滤,在不覆盖原有日志文件的前提下生成新的不含乱码的日志文件副本,提高了开发效率。
与前述日志过滤方法的实施例相对应,本发明还提供了日志过滤系统的实施例。
本发明日志过滤系统的实施例可以应用于一切具有日志过滤需求的网络设备(例如,防火墙、路由器、交换机等设备)上。网络设备通过本日志过滤系统可以方便地对日志文件进行过滤。
参见图2,该日志过滤系统包括:输入模块、过滤模块、输出模块。
其中,输入模块,提供调用接口处,用于获取日志文件的文件名,并将其转换为新日志文件的文件名,供输出模块使用。
过滤模块,用于对出现乱码的日志文件进行过滤,即首先对控制屏幕格式的ANSIESC序列进行过滤,通过正则表达式,匹配全部ANSI ESC序列,实现对日志文件中的ANSIESC序列的过滤,其次,对无效的十六进制字符进行过滤,通过遍历所有的十六进制字符,找出其中哪些是无效的,然后对它们进行过滤;
输出模块,用于将过滤后的日志文件内容写入新的日志文件中。
上述模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

Claims (7)

1.一种实现网络设备自动化日志过滤方法,其特征在于,包括以下步骤:
1)获取日志文件的文件名;
2)通过正则匹配,获取日志文件名与其后缀,在文件名后添加”_”形成新的文件名,与后缀拼接,形成新的文件名;
3)对ANSI ESC序列进行过滤;
4)对无效十六进制字符进行过滤;
5)将过滤后的日志文件写入新创建的日志文件中。
2.根据权利要求1所述的实现网络设备自动化日志过滤方法,其特征在于,步骤1)中,自动化日志过滤方法提供了调用接口,开发人员将需要过滤的日志文件的文件名作为参数传入,便可对日志文件进行过滤操作。
3.根据权利要求1所述的实现网络设备自动化日志过滤方法,其特征在于,步骤2)中,新的文件名形成方法如下:
调用接口传入的是带后缀名的完整文件名,为了在不覆盖原日志文件的基础上将过滤信息写入新的日志文件中,需要对文件名进行解析,得到去除后缀名之后的文件名,基于该文件名去创建日志文件副本。
4.根据权利要求1所述的实现网络设备自动化日志过滤方法,其特征在于,步骤3)中,对ANSI ESC序列进行过滤的方法如下:
ANSI ESC序列是用于控制输出格式的序列,ANSI ESC序列在日志文件中会变成乱码,通过正则表达式,匹配全部ANSI ESC序列,对日志文件中的ANSI ESC序列进行过滤。
5.根据权利要求1所述的实现网络设备自动化日志过滤方法,其特征在于,步骤4)中,对无效十六进制字符进行过滤的方法如下:
首先需要找出哪些十六进制字符为无效的,然后对它们进行过滤。
6.根据权利要求1所述的实现网络设备自动化日志过滤方法,其特征在于,步骤5)中,将过滤后的日志文件写入新创建的日志文件中具体方法如下:
为了节省内存,日志文件的读写同时进行,每读一行,先进行过滤,再将其写入日志文件副本中。
7.一种实现网络设备自动化日志过滤系统,其特征在于,包括
输入模块,提供调用接口,用于获取日志文件的文件名,并将其转换为新日志文件的文件名,供输出模块使用;
过滤模块,用于对出现乱码的日志文件进行过滤,即首先对控制屏幕格式的ANSI ESC序列进行过滤,通过正则表达式,匹配全部ANSI ESC序列,实现对日志文件中的ANSI ESC序列的过滤,其次,对无效的十六进制字符进行过滤,通过遍历所有的十六进制字符,找出其中哪些是无效的,然后对它们进行过滤;
和输出模块,用于将过滤后的日志文件内容写入新的日志文件中。
CN201810683635.4A 2018-06-28 2018-06-28 一种实现网络设备自动化日志过滤方法及其系统 Pending CN109510732A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810683635.4A CN109510732A (zh) 2018-06-28 2018-06-28 一种实现网络设备自动化日志过滤方法及其系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810683635.4A CN109510732A (zh) 2018-06-28 2018-06-28 一种实现网络设备自动化日志过滤方法及其系统

Publications (1)

Publication Number Publication Date
CN109510732A true CN109510732A (zh) 2019-03-22

Family

ID=65745513

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810683635.4A Pending CN109510732A (zh) 2018-06-28 2018-06-28 一种实现网络设备自动化日志过滤方法及其系统

Country Status (1)

Country Link
CN (1) CN109510732A (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011126603A1 (en) * 2010-04-08 2011-10-13 Netscout Systems, Inc. Real-time adaptive processing of network data packets for analysis
CN104391881A (zh) * 2014-10-30 2015-03-04 杭州安恒信息技术有限公司 一种基于分词算法的日志解析方法及系统
CN104410532A (zh) * 2014-12-12 2015-03-11 携程计算机技术(上海)有限公司 服务器及其日志过滤方法
CN106570057A (zh) * 2016-09-29 2017-04-19 上海爱数信息技术股份有限公司 一种计算机日志的自动整合过滤方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011126603A1 (en) * 2010-04-08 2011-10-13 Netscout Systems, Inc. Real-time adaptive processing of network data packets for analysis
CN104391881A (zh) * 2014-10-30 2015-03-04 杭州安恒信息技术有限公司 一种基于分词算法的日志解析方法及系统
CN104410532A (zh) * 2014-12-12 2015-03-11 携程计算机技术(上海)有限公司 服务器及其日志过滤方法
CN106570057A (zh) * 2016-09-29 2017-04-19 上海爱数信息技术股份有限公司 一种计算机日志的自动整合过滤方法及系统

Similar Documents

Publication Publication Date Title
US11711368B2 (en) Security systems, methods, and computer program products for information integration platform
Cociorva et al. Validation of tandem mass spectrometry database search results using DTASelect
US20120166480A1 (en) Xpath-based selection assistance of gui elements during manual test script authoring for xml-based applications
CN104462508A (zh) 基于知识图谱的人物关系搜索方法和装置
CN104391881A (zh) 一种基于分词算法的日志解析方法及系统
CN103970533A (zh) 屏幕录制的信息记录方法及装置
CA2359831A1 (en) Method and system for multiple level parsing
CN102521316A (zh) 用于日志分析的模式匹配框架
CN103544298A (zh) 组件的日志分析方法和分析装置
CN108229481A (zh) 屏幕内容分析方法、装置、计算设备及存储介质
US20220335013A1 (en) Generating readable, compressed event trace logs from raw event trace logs
CN103177022A (zh) 一种恶意文件搜索方法及装置
CN114329082A (zh) 一种基于hugegraph的数据血缘关系分析方法和系统
CN111857810A (zh) 一种前端开发文件创建方法、装置及电子设备
CN110263740A (zh) 基于ocr技术的不同类型印刷体文档转录方法
CN111552792A (zh) 一种信息查询方法、装置、电子设备及存储介质
CN109324792A (zh) 一种基于编程语言的路由构建自动化方法及电子设备
CN109510732A (zh) 一种实现网络设备自动化日志过滤方法及其系统
CN115865525B (zh) 日志数据处理方法、装置、电子设备和存储介质
CN109902070B (zh) 一种面向WiFi日志数据的解析存储搜索方法
CN115510361A (zh) 一种基于可视化配置的数据图表页面生成方法及相关设备
CN111985881A (zh) 智能合同审阅系统及方法
US9996799B2 (en) Migrating a legacy system by inferring context-sensitive business rules from legacy source code
CN104320454A (zh) 一种在http协议还原中实现自定义输出的方法及系统
CN109062880A (zh) 电子书文件的制作方法、电子设备、服务器、存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190322