CN113254438A - 一种基于树结构的日志解析方法和*** - Google Patents

一种基于树结构的日志解析方法和*** Download PDF

Info

Publication number
CN113254438A
CN113254438A CN202011310193.2A CN202011310193A CN113254438A CN 113254438 A CN113254438 A CN 113254438A CN 202011310193 A CN202011310193 A CN 202011310193A CN 113254438 A CN113254438 A CN 113254438A
Authority
CN
China
Prior art keywords
log
tree structure
tree
logs
algorithm
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
CN202011310193.2A
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.)
Cloudwise Beijing Technology Co Ltd
Original Assignee
Cloudwise Beijing Technology Co Ltd
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 Cloudwise Beijing Technology Co Ltd filed Critical Cloudwise Beijing Technology Co Ltd
Priority to CN202011310193.2A priority Critical patent/CN113254438A/zh
Publication of CN113254438A publication Critical patent/CN113254438A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/219Managing data history or versioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明涉及一种基于树结构的日志解析方法和***。方法中基于树结构的算法进行日志解析,包括步骤:S1、将日志传入树;S2、树的第一层节点储存日志长度数据;S3、树的中间层节点储存日志的token;S4、树的叶节点储存日志模式信息。***包括:日志解析模块,用于基于树结构的算法解析日志,其树结构包括:用于储存日志长度数据的第一层节点;用于储存日志token的若干中间层节点;用于储存日志模式信息的叶节点。借此,可以实现实时高效的日志解析。

Description

一种基于树结构的日志解析方法和***
技术领域
本发明属于智能运维领域,具体涉及一种基于树结构的日志解析方法和***,主要用于日志分析。
背景技术
日志在许多软件***的开发和维护过程中都是必不可少的,其记录着***运行期间的详细信息,使得开发人员和工程师能够通过检查日志来监控***并分析异常和错误行为。
传统的日志解析方法(日志是一种半结构化的文本数据,遵循一定的模版,日志解析就是从海量日志中提取出若干日志模式。)是一种基于规则的日志提取方法,允许人们通过传统方式手动设置正则表达式来解析日志。然而,现代软件***规模和复杂性的增加使***产生的日志数量巨大,且日志格式多样,从而导致传统的日志解析方式变得不可行。
目前,许多研究采用基于聚类或频繁模式挖掘等算法进行日志解析,但这些算法均存在一些问题,如算法复杂度高、不支持在线实时解析等。
此外,这些算法只支持利用空格作为分隔符对日志进行切分(即根据指定的分隔符将整条日志进行结构化处理),但在实际生产环境中,不同***的日志格式多种多样,日志分隔符不限于空格符号,仅用空格切分日志会导致解析结果准确率降低。
而且,现有技术单纯使用日志解析算法,只能为用户提供日志模式(指日志中的常量部分,即日志的模版),帮助概览日志,但若需得到***中出现的异常日志,仍需要在日志模式中继续查找,不能直接呈现给用户。
综上所述,目前亟需一种实时高效的日志解析技术。
发明内容
为了解决现有技术的上述问题,一方面,本发明提供一种基于树结构的日志解析方法,可以通过基于树结构的算法,实现实时高效的日志解析。
为了达到上述目的,本发明采用的主要技术方案包括:
一种基于树结构的日志解析方法,其基于树结构的算法进行日志解析,其可以包括如下步骤:
S1、将日志传入树;
S2、树的第一层节点储存日志长度数据;
S3、树的中间层节点储存日志的token(token在词法分析中是“标记”的意思。日志分析中,一般来说,token代表词或符号。);
S4、树的叶节点储存日志模式信息。
借助上述方案,本发明的基于树结构的日志解析方法,其可以大大提高算法计算效率,支持在线实时监控***中日志模式的变化,使运维人员能够快速概览海量日志,掌握日志全貌,迅速定位故障相关日志,提高排障效率。
本发明一个实施例的基于树结构的日志解析方法,其中,步骤S3中,根据预先设定的树深参数确定树的中间层节点数。
本发明一个实施例的基于树结构的日志解析方法,其中,随着日志的不断传入,数结构不断更新,最终得到若干日志模式。
本发明一个实施例的基于树结构的日志解析方法,其还包括步骤S0、日志切分预处理,根据日志格式的不同,利用指定分隔符对日志进行切分。由于不同***生成的日志格式不同,日志分隔符会有所区别,本发明采用多种分隔符切分日志的方式,针对不同的日志特点采用相应分隔符进行切分,能够更精准的获取日志各部分内容,从而大大提升算法计算的准确率,更好的对日志进行解析。
较佳的,日志切分预处理之前,先判断日志的格式,以便选用不同的分隔符进行日志切分预处理。
较佳的,日志切分预处理之前,先为各日志格式预设对应的分隔符,以便在判断日志格式之后,调用对应的分隔符进行日志切分预处理。
本发明一个实施例的基于树结构的日志解析方法,其基于树结构的算法是通过分布式计算进行的。通过将基于树结构的算法并行化,可以进一步提高算法计算效率,更好地支持在线实时监控***中日志模式的变化,有助于运维人员更加迅速定位故障相关日志,进一步提高排障效率。
本发明一个实施例的基于树结构的日志解析方法,其是利用Ray将该基于树结构的算法实现分布式计算的,具体实施时:采用Ray的actor(actor模型用于处理并发计算)对算法的类进行声明,实例化若干actor,再为其分配日志数据,各actor分别读取各自的日志数据构建树进行日志解析,最后将各个actor的解析结果进行汇总。
本发明一个较佳实施例的基于树结构的日志解析方法,其还包括历史日志异常模式检测:某个模式的日志数量低于预定阙值时,判定该模式的日志为异常日志。借此,本发明能够检测历史日志中出现的异常模式日志,帮助用户快速查找异常。
本发明一个较佳实施例的基于树结构的日志解析方法,其还包括新日志异常模式检测:采用基于树结构的算法对历史日志数据进行解析,以训练得到训练模型,当新日志传入时,重新加载树模型,在树模型中逐层进行搜索,以判断传入的新日志是否为异常日志。借此,本发明能够流式检测新日志中出现的异常模式日志,帮助用户快速查找异常。
本发明一个较佳实施例的基于树结构的日志解析方法,其中,若搜索到匹配的模式,则该条日志为正常日志,若未搜索到匹配的模式,则该条日志为异常日志。
另一方面,本发明还提供一种基于树结构的日志解析***,可以通过基于树结构的***,实现实时高效的日志解析。
为了达到上述目的,本发明采用的主要技术方案包括:
一种基于树结构的日志解析***,其包括:
日志解析模块,用于基于树结构的算法解析日志。
借助上述方案,本发明的基于树结构的日志解析***,其可以大大提高算法计算效率,支持在线实时监控***中日志模式的变化,使运维人员能够快速概览海量日志,掌握日志全貌,迅速定位故障相关日志,提高排障效率。
本发明一个实施例的基于树结构的日志解析***,其中,其树结构包括:
用于储存日志长度数据的第一层节点;
用于储存日志token的若干中间层节点;
用于储存日志模式信息的叶节点。
本发明一个实施例的基于树结构的日志解析***,其还包括:
树参数设置模块,用于预设树参数,包括树深参数。
本发明一个实施例的基于树结构的日志解析***,其还包括日志切分预处理模块,用于根据日志格式的不同,利用指定分隔符对日志进行切分。由于不同***生成的日志格式不同,日志分隔符会有所区别,本发明采用多种分隔符切分日志的方式,针对不同的日志特点采用相应分隔符进行切分,能够更精准的获取日志各部分内容,从而大大提升算法计算的准确率,更好的对日志进行解析。
本发明一个实施例的基于树结构的日志解析***,其日志切分预处理模块中包括日志格式判断子模块,用于判断日志格式。
本发明一个实施例的基于树结构的日志解析***,其日志切分预处理模块中包括日志分隔符预设子模块,用于预设日志分隔符。
本发明一个实施例的基于树结构的日志解析***,其日志切分预处理模块中包括日志分隔符调用子模块,用于根据判断出的日志格式调用预设的日志分隔符。
本发明一个实施例的基于树结构的日志解析***,其还包括Ray模块,用于将该基于树结构的算法实现分布式计算。通过将基于树结构的算法并行化,可以进一步提高算法计算效率,更好地支持在线实时监控***中日志模式的变化,有助于运维人员更加迅速定位故障相关日志,进一步提高排障效率。
本发明一个实施例的基于树结构的日志解析***,其Ray模块中设置有若干actor子模块,各actor子模块分别读取分配到各自的日志数据构建树结构进行日志解析。
本发明一个实施例的基于树结构的日志解析***,其中,actor子模块中设置有日志切分预处理模块,用于根据日志格式的不同,利用指定分隔符对日志进行切分。通过将日志切分预处理分布到各个actor子模块中,可以进一步提高算法计算效率,更好地支持在线实时监控***中日志模式的变化,有助于运维人员更加迅速定位故障相关日志,进一步提高排障效率。
本发明一个实施例的基于树结构的日志解析***,其还包括模式汇总模块,用于将各actor子模块解析得到的日志模式进行汇总。
本发明一个实施例的基于树结构的日志解析***,其还包括日志异常模式检测模块,用于进行日志检测。
本发明一个较佳实施例的基于树结构的日志解析***,其日志异常模式检测模块包括历史日志异常模式检测子模块,用于检测历史日志中的异常。例如,当某个模式的日志数量低于预定阙值时,判定该模式的日志为异常日志。借此,本发明能够检测历史日志中出现的异常模式日志,帮助用户快速查找异常。
本发明一个较佳实施例的基于树结构的日志解析***,其日志异常模式检测模块包括新日志异常模式检测子模块,用于检测新日志中的异常。
本发明一个较佳实施例的基于树结构的日志解析***,其日志异常模式检测模块包括训练子模块,用于基于树结构的算法对历史日志数据进行解析,以训练得到训练模型。
本发明一个较佳实施例的基于树结构的日志解析***,其日志异常模式检测模块包括搜索比较子模块,用于当新日志传入时,重新加载树模型(树模型即树结构),在树模型中逐层进行搜索,以判断传入的新日志是否为异常日志。借此,本发明能够流式检测新日志中出现的异常模式日志,帮助用户快速查找异常。
本发明一个较佳实施例的基于树结构的日志解析方法,其中,若搜索到匹配的模式,则该条日志为正常日志,若未搜索到匹配的模式,则该条日志为异常日志。
具体实施时,可以将传入的新日志切分预处理之后,基于树结构的算法对其进行解析,并将得到的相应信息在训练模型的各层节点中进行搜索对比,即由第一层的日志长度数据开始比较,经若干中间层节点,直至叶节点,若搜索到匹配的模式,则判定为正常日志,若未搜索到匹配的模式,则判定为异常日志。
本发明的基于树结构的日志解析方法和***,其通过基于树结构的算法,可以大大提高算法计算效率,支持在线实时监控***中日志模式的变化,使运维人员能够快速概览海量日志,掌握日志全貌,迅速定位故障相关日志,提高排障效率。
附图说明
图1为本发明一个实施例的基于树结构的日志解析方法的主要流程示意图;
图2为本发明一个实施例的基于树结构的日志解析方法对历史日志异常模式检测的主要流程示意图;
图3为本发明又一个实施例的基于树结构的日志解析方法的主要流程示意图;
图4为本发明又一个实施例的基于树结构的日志解析方法对新日志异常模式检测的主要流程示意图;
图5为本发明一个实施例的基于树结构的日志解析***的结构示意图;
图6为本发明又一实施例的基于树结构的日志解析***的结构示意图;
图7为本发明又一个实施例的基于树结构的日志解析***的日志切分预处理模块的结构示意图;
图8为本发明一个实施例的基于树结构的日志解析***的结构示意图;
图9为本发明又一实施例的基于树结构的日志解析***的结构示意图;
图10为本发明一个应用例的基于树结构的日志解析方法所使用的训练日志样本示意图;
图11为本发明一个应用例的基于树结构的日志解析方法所使用的异常检测的日志样本示意图;
图12为本发明利用图10所示的日志数据训练得到的树模型示意图。
具体实施方式
为了更好的解释本发明,以便于理解,下面结合附图,通过具体实施方式,对本发明作详细描述。
参见图1,本发明一个实施例的基于树结构的日志解析方法,其基于树结构的算法进行日志解析,其可以包括如下步骤:
日志采集;
基于树结构的算法进行日志解析;
日志异常模式检测;
结果可视化展示。
其中,基于树结构的算法进行日志解析包括如下步骤:
S1、将日志传入树;
S2、树的第一层节点储存日志长度数据;
S3、树的中间层节点储存日志的token(token在词法分析中是“标记”的意思。日志分析中,一般来说,token代表词或符号。);
S4、树的叶节点储存日志模式信息。
借助上述方案,本发明的基于树结构的日志解析方法,其可以大大提高算法计算效率,支持在线实时监控***中日志模式的变化,使运维人员能够快速概览海量日志,掌握日志全貌,迅速定位故障相关日志,提高排障效率。
本发明一个实施例的基于树结构的日志解析方法,其中,步骤S3中,根据预先设定的树深参数确定树的中间层节点数。
本发明一个实施例的基于树结构的日志解析方法,其中,随着日志的不断传入,数结构不断更新,最终得到若干日志模式。
本发明一个实施例的基于树结构的日志解析方法,其还包括步骤S0、日志切分预处理,根据日志格式的不同,利用指定分隔符对日志进行切分。由于不同***生成的日志格式不同,日志分隔符会有所区别,本发明采用多种分隔符切分日志的方式,针对不同的日志特点采用相应分隔符进行切分,能够更精准的获取日志各部分内容,从而大大提升算法计算的准确率,更好的对日志进行解析。
较佳的,日志切分预处理之前,先判断日志的格式,以便选用不同的分隔符进行日志切分预处理。
较佳的,日志切分预处理之前,先为各日志格式预设对应的分隔符,以便在判断日志格式之后,调用对应的分隔符进行日志切分预处理。
参见图3,本发明一个实施例的基于树结构的日志解析方法,其基于树结构的算法是通过分布式计算进行的。通过将基于树结构的算法并行化,可以进一步提高算法计算效率,更好地支持在线实时监控***中日志模式的变化,有助于运维人员更加迅速定位故障相关日志,进一步提高排障效率。
参见图3,本发明一个实施例的基于树结构的日志解析方法,其是利用Ray将该基于树结构的算法实现分布式计算的,具体实施时:采用Ray的actor(actor模型用于处理并发计算)对算法的类进行声明,实例化若干actor,再为其分配日志数据,各actor分别读取各自的日志数据构建树进行日志解析,最后将各个actor的解析结果进行汇总。
参见图2,本发明一个较佳实施例的基于树结构的日志解析方法,其还包括历史日志异常模式检测:某个模式的日志数量低于预定阙值时,判定该模式的日志为异常日志。借此,本发明能够检测历史日志中出现的异常模式日志,帮助用户快速查找异常。
参见图4,本发明一个较佳实施例的基于树结构的日志解析方法,其还包括新日志异常模式检测:采用基于树结构的算法对历史日志数据进行解析,以训练得到训练模型,当新日志传入时,重新加载树模型,在树模型中逐层进行搜索,以判断传入的新日志是否为异常日志。借此,本发明能够流式检测新日志中出现的异常模式日志,帮助用户快速查找异常。
本发明一个较佳实施例的基于树结构的日志解析方法,其中,若搜索到匹配的模式,则该条日志为正常日志,若未搜索到匹配的模式,则该条日志为异常日志。
参见图5,本发明一个实施例的基于树结构的日志解析***,其包括:
日志解析模块,用于基于树结构的算法解析日志。
借助上述方案,本发明的基于树结构的日志解析***,其可以大大提高算法计算效率,支持在线实时监控***中日志模式的变化,使运维人员能够快速概览海量日志,掌握日志全貌,迅速定位故障相关日志,提高排障效率。
本发明一个实施例的基于树结构的日志解析***,其中,其树结构包括:
用于储存日志长度数据的第一层节点;
用于储存日志token的若干中间层节点;
用于储存日志模式信息的叶节点。
参见图6,本发明一个实施例的基于树结构的日志解析***,其还包括:
树参数设置模块,用于预设树参数,包括树深参数。
本发明一个实施例的基于树结构的日志解析***,其还包括日志切分预处理模块,用于根据日志格式的不同,利用指定分隔符对日志进行切分。由于不同***生成的日志格式不同,日志分隔符会有所区别,本发明采用多种分隔符切分日志的方式,针对不同的日志特点采用相应分隔符进行切分,能够更精准的获取日志各部分内容,从而大大提升算法计算的准确率,更好的对日志进行解析。
参见图7,本发明一个实施例的基于树结构的日志解析***,其日志切分预处理模块中包括日志格式判断子模块,用于判断日志格式。
本发明一个实施例的基于树结构的日志解析***,其日志切分预处理模块中包括日志分隔符预设子模块,用于预设日志分隔符。
本发明一个实施例的基于树结构的日志解析***,其日志切分预处理模块中包括日志分隔符调用子模块,用于根据判断出的日志格式调用预设的日志分隔符。
参见图8,本发明一个实施例的基于树结构的日志解析***,其还包括Ray模块,用于将该基于树结构的算法实现分布式计算。通过将基于树结构的算法并行化,可以进一步提高算法计算效率,更好地支持在线实时监控***中日志模式的变化,有助于运维人员更加迅速定位故障相关日志,进一步提高排障效率。
本发明一个实施例的基于树结构的日志解析***,其Ray模块中设置有若干actor子模块,各actor子模块分别读取分配到各自的日志数据构建树结构进行日志解析。
本发明一个实施例的基于树结构的日志解析***,其中,actor子模块中设置有日志切分预处理模块,用于根据日志格式的不同,利用指定分隔符对日志进行切分。通过将日志切分预处理分布到各个actor子模块中,可以进一步提高算法计算效率,更好地支持在线实时监控***中日志模式的变化,有助于运维人员更加迅速定位故障相关日志,进一步提高排障效率。
本发明一个实施例的基于树结构的日志解析***,其还包括模式汇总模块,用于将各actor子模块解析得到的日志模式进行汇总。
本发明一个实施例的基于树结构的日志解析***,其还包括日志异常模式检测模块,用于进行日志检测。
参见图9,本发明一个较佳实施例的基于树结构的日志解析***,其日志异常模式检测模块包括历史日志异常模式检测子模块,用于检测历史日志中的异常。例如,当某个模式的日志数量低于预定阙值时,判定该模式的日志为异常日志。借此,本发明能够检测历史日志中出现的异常模式日志,帮助用户快速查找异常。
本发明一个较佳实施例的基于树结构的日志解析***,其日志异常模式检测模块包括新日志异常模式检测子模块,用于检测新日志中的异常。
本发明一个较佳实施例的基于树结构的日志解析***,其日志异常模式检测模块包括训练子模块,用于基于树结构的算法对历史日志数据进行解析,以训练得到训练模型。
本发明一个较佳实施例的基于树结构的日志解析***,其日志异常模式检测模块包括搜索比较子模块,用于当新日志传入时,重新加载树模型(树模型即树结构),在树模型中逐层进行搜索,以判断传入的新日志是否为异常日志。借此,本发明能够流式检测新日志中出现的异常模式日志,帮助用户快速查找异常。
本发明一个较佳实施例的基于树结构的日志解析方法,其中,若搜索到匹配的模式,则该条日志为正常日志,若未搜索到匹配的模式,则该条日志为异常日志。
具体实施时,可以将传入的新日志切分预处理之后,基于树结构的算法对其进行解析,并将得到的相应信息在训练模型的各层节点中进行搜索对比,即由第一层的日志长度数据开始比较,经若干中间层节点,直至叶节点,若搜索到匹配的模式,则判定为正常日志,若未搜索到匹配的模式,则判定为异常日志。
下面还提供具体应用例对本发明进行描述。
本具体应用例,是用图10所示的日志样本数据训练得到树模型,再利用该树模型进行图11所示的新日志异常检测。
图10所示的日志样本共100条日志,由图可见,日志由时间戳和后续具体内容组成,因此只需对具体内容部分进行日志解析,经过算法计算得到9种日志模式,如表1所示,用户只需要浏览这9种模式便可以轻松掌握***生成这批日志的情况。
其中,日志解析结果中频次小于等于某阈值(如:3)的模式认为是异常模式。
表1日志解析结果
Figure BDA0002789515910000091
Figure BDA0002789515910000101
Figure BDA0002789515910000111
通过利用这批日志数据训练得到的树模型如图12所示,其中:生成的树模型分为四层,第一层为根节点;第二层的节点储存日志长度数据,如7;第三层的节点储存日志的token,如Receiving;最后一层的节点储存日志模式,如EventTemplate:Receivingblock<*>src:<*>dest:<*>。
利用该树模型进行新日志异常检测,本应用例中新一批日志为100条(参见图11),检测结果如表2所示,共11条,用户仅需浏览这些检测出来的少量日志便可以了解***产生的异常日志或出现的新模式的日志。
表2日志异常检测结果
Figure BDA0002789515910000112
Figure BDA0002789515910000121
由表2可知,对新日志的异常检测结果为:基于树模型和训练日志样本,可以挖掘出日志模式集,当新日志传入时,加载树模型,在树模型中逐层进行搜索匹配,未匹配即为异常日志,对挖掘到的11条异常进行分析可知,在实际运维中均属于常见的异常,其中,第3-第11异常均属于只出现一次的异常,亦被挖掘到,有利于运维工作的进行。
而基于本应用例中的相同数据样本(图10所示的100条训练日志数据和图11所示的100条新日志数据),如果采用现有技术的日志解析方法,得到的结果为:只挖掘出了第1和第2异常,而第3-第11异常未被标记为异常日志,因而在实际运维过程中,第3-第11异常均需要运维人员人工识别,给运维工作带来了不便,降低了运维效率。
由此可知,本发明基于树结构的日志解析方法,相较现有技术,本发明因为基于树结构,可以对只出现一次的异常日志进行挖掘,降低了异常日志的检出下限,而且,本发明因为基于Ray并发计算框架,在计算资源充分的前提下,日志处理效率与Actor个数成正比,因此适合大规模实时日志模式挖掘和异常检测,因此,本发明可以大大提高算法计算效率,支持在线实时监控***中日志模式的变化,使运维人员能够快速概览海量日志,掌握日志全貌,迅速定位故障相关日志,提高排障效率,尤其是,能够流式检测新日志中出现的异常模式日志,帮助用户快速查找异常。
综上所述,本发明的基于树结构的日志解析方法和***,大大提高了算法计算效率,支持在线实时监控***中日志模式的变化,使运维人员能够快速概览海量日志,掌握日志全貌,迅速定位故障相关日志,提高了排障效率,尤其是,能够流式检测新日志中出现的异常模式日志,帮助用户快速查找异常。

Claims (10)

1.一种基于树结构的日志解析方法,其基于树结构的算法进行日志解析。
2.如权利要求1所述的基于树结构的日志解析方法,其特征在于,其包括如下步骤:
S1、将日志传入树;
S2、树的第一层节点储存日志长度数据;
S3、树的中间层节点储存日志的token;
S4、树的叶节点储存日志模式信息。
3.如权利要求2所述的基于树结构的日志解析方法,其特征在于,步骤S3中:根据预先设定的树深参数确定树的中间层节点数。较佳的,随着日志的不断传入,数结构不断更新,最终得到若干日志模式。
4.如权利要求2所述的基于树结构的日志解析方法,其特征在于,步骤S1之前还包括步骤S0、日志切分预处理,根据日志格式的不同,利用指定分隔符对日志进行切分。
5.如权利要求1-4中任一项所述的基于树结构的日志解析方法,其特征在于:
基于树结构的算法是通过分布式计算进行的。
6.如权利要求5所述的基于树结构的日志解析方法,其特征在于,是利用Ray将该基于树结构的算法实现分布式计算的,具体如下:
采用Ray的actor对算法的类进行声明,实例化若干actor,再为其分配日志数据,各actor分别读取各自的日志数据构建树进行日志解析,最后将各个actor的解析结果进行汇总。
7.如权利要求1所述的基于树结构的日志解析方法,其特征在于,还包括历史日志异常模式检测:某个模式的日志数量低于预定阙值时,判定该模式的日志为异常日志。和/或还包括新日志异常模式检测:采用基于树结构的算法对历史日志数据进行解析,以训练得到训练模型,当新日志传入时,重新加载树模型,在树模型中逐层进行搜索,以判断传入的新日志是否为异常日志。较佳的,若搜索到匹配的模式,则该条日志为正常日志,若未搜索到匹配的模式,则该条日志为异常日志。
8.一种基于树结构的日志解析***,其特征在于,其包括:
日志解析模块,用于基于树结构的算法解析日志。
9.如权利要求8所述的基于树结构的日志解析***,其特征在于,其树结构包括:
用于储存日志长度数据的第一层节点;
用于储存日志token的若干中间层节点;
用于储存日志模式信息的叶节点。
10.如权利要求8所述的基于树结构的日志解析***,其特征在于,还包括下列模块中的任一或任几:
树参数设置模块,用于预设树参数,包括树深参数;
日志切分预处理模块,用于根据日志格式的不同,利用指定分隔符对日志进行切分;
Ray模块,用于将该基于树结构的算法实现分布式计算;较佳的,Ray模块中设置有若干actor子模块,各actor子模块分别读取分配到各自的日志数据构建树结构进行日志解析。更进一步的,actor子模块中设置有日志切分预处理模块,用于根据日志格式的不同,利用指定分隔符对日志进行切分。
CN202011310193.2A 2020-11-20 2020-11-20 一种基于树结构的日志解析方法和*** Pending CN113254438A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011310193.2A CN113254438A (zh) 2020-11-20 2020-11-20 一种基于树结构的日志解析方法和***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011310193.2A CN113254438A (zh) 2020-11-20 2020-11-20 一种基于树结构的日志解析方法和***

Publications (1)

Publication Number Publication Date
CN113254438A true CN113254438A (zh) 2021-08-13

Family

ID=77180743

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011310193.2A Pending CN113254438A (zh) 2020-11-20 2020-11-20 一种基于树结构的日志解析方法和***

Country Status (1)

Country Link
CN (1) CN113254438A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110401700A (zh) * 2019-07-03 2019-11-01 阿里巴巴集团控股有限公司 模型加载方法及***、控制节点及执行节点
CN110855461A (zh) * 2018-08-20 2020-02-28 北京航天长峰科技工业集团有限公司 一种基于关联分析和规则库的日志分析方法
CN110888849A (zh) * 2019-11-06 2020-03-17 国网上海市电力公司 一种在线日志解析方法、***及其电子终端设备
CN111190873A (zh) * 2019-12-24 2020-05-22 同济大学 一种用于云原生***日志训练的日志模式提取方法及***
CN111949480A (zh) * 2020-08-10 2020-11-17 重庆大学 一种基于组件感知的日志异常检测方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110855461A (zh) * 2018-08-20 2020-02-28 北京航天长峰科技工业集团有限公司 一种基于关联分析和规则库的日志分析方法
CN110401700A (zh) * 2019-07-03 2019-11-01 阿里巴巴集团控股有限公司 模型加载方法及***、控制节点及执行节点
CN110888849A (zh) * 2019-11-06 2020-03-17 国网上海市电力公司 一种在线日志解析方法、***及其电子终端设备
CN111190873A (zh) * 2019-12-24 2020-05-22 同济大学 一种用于云原生***日志训练的日志模式提取方法及***
CN111949480A (zh) * 2020-08-10 2020-11-17 重庆大学 一种基于组件感知的日志异常检测方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
祝蓓;李静;方晓蓉;王亮;: "LSC-TGT:基于字符串聚类和模板生成树的在线日志解析方法", 小型微型计算机***, no. 08 *

Similar Documents

Publication Publication Date Title
CN110472671B (zh) 基于多阶段的油浸式变压器故障数据预处理方法
CN107111625A (zh) 实现数据的高效分类和探索的方法和***
CN111459799A (zh) 一种基于Github的软件缺陷检测模型建立、检测方法及***
CN111177276A (zh) 一种基于Spark计算框架的动能数据处理***及方法
CN111104242A (zh) 基于深度学习的操作***的异常日志的处理方法及装置
CN104899324A (zh) 一种基于idc有害信息监测***的样本训练***
CN115277180B (zh) 一种区块链日志异常检测与溯源***
CN112836067B (zh) 基于知识图谱的智能搜索方法
CN112685215A (zh) 一种云平台异常日志分析方法
WO2024031930A1 (zh) 一种异常日志检测方法、装置、电子设备及存储介质
CN113409555A (zh) 一种基于物联网的实时报警联动方法及***
CN116167370A (zh) 基于日志时空特征分析的分布式***异常检测方法
CN115098679A (zh) 文本分类标注样本的异常检测方法、装置、设备及介质
WO2016093839A1 (en) Structuring of semi-structured log messages
CN114139781A (zh) 一种电力***的运行趋势预测方法及***
CN113378024A (zh) 一种基于深度学习面向公检法领域的相关事件识别方法
CN112257076A (zh) 一种基于随机探测算法和信息聚合的漏洞检测方法
CN113254438A (zh) 一种基于树结构的日志解析方法和***
CN111353890A (zh) 基于应用日志的应用异常检测方法及装置
CN113434627A (zh) 工单的处理方法、装置和计算机可读存储介质
CN114969761A (zh) 一种基于lda主题特征的日志异常检测方法
CN110633466B (zh) 基于语义分析的短信犯罪识别方法、***和可读存储介质
CN114496196A (zh) 医疗实验室临床生化检验自动审核***
CN109976271B (zh) 一种利用信息表征方法计算信息结构有序度的方法
CN111209158A (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