一种基于过滤条件的日志输出方法及装置制造方法及图纸

技术编号:20117259 阅读:24 留言:0更新日期:2019-01-16 11:58
本申请公开一种基于过滤条件的日志输出方法及装置,该方法包括:首先在OSD模块中注册包含过滤条件的指令,然后根据该过滤条件的指令,添加相应的unregister指令,接着,可以增加对该过滤条件的指令进行处理的相关代码,最后,可以通过增加的相关代码对该过滤条件的指令进行处理,以实现基于该过滤条件的日志输出,这样,可根据过滤条件的不同,实现日志的个性化输出。可见,本申请不再根据预先设置好的日志等级来选择输出哪些日志,而是通过添加过滤条件的方式,基于添加的过滤条件实现日志的输出,从而可根据用户或其他使用者的需求设置不同的过滤条件,进而再基于这些个性化的过滤条件实现日志的个性化输出,即,实现了更好地根据实际需求来输出日志。

A Log Output Method and Device Based on Filtering Conditions

This application discloses a log output method and device based on filtering conditions. The method includes: firstly, registering instructions containing filtering conditions in OSD module, then adding corresponding unregister instructions according to the instructions of filtering conditions, secondly, adding relevant codes for processing instructions of filtering conditions, and finally, adding relevant codes for processing instructions of filtering conditions. The instructions of the filter condition are processed to realize the log output based on the filter condition. In this way, the individual output of the log can be realized according to the different filter conditions. It can be seen that the application no longer chooses which logs to output according to the pre-set log level, but realizes the output of logs by adding filtering conditions, based on the added filtering conditions, so that different filtering conditions can be set according to the needs of users or other users, and then realizes the personalized output of logs based on these personalized filtering conditions. It realizes better output log according to actual demand.

【技术实现步骤摘要】
一种基于过滤条件的日志输出方法及装置
本申请涉及日志信息处理
,具体涉及一种基于过滤条件的日志输出方法及装置。
技术介绍
目前,人们通常通过计算机或者移动终端的日志(log)来检查错误发生的原因,或者寻找受到攻击时攻击者留下的痕迹。其中,日志能够用来储存和记录系统运行情况以及用户使用情况的详细信息,这些信息是查看系统运行状态和排查问题的主要依据。例如,某个软件中应用程序出现崩溃情况,那么可以从程序事件日志中找到相应的记录,从而帮助相关技术人员分析并解决问题。由此,每一个大型的系统项目,都会设计有log模块,用以记录并输出项目的系统日志,但是现有的log模块只能根据设置好的日志等级来选择输出哪些日志,还不能完全满足用户或其他使用者的需求,即无法实现个性化的日志输出。因此,如何利用更先进的日志输出方式取代传统的输出方式,以实现根据用户或其他使用者的需求进行个性化日志输出,已成为亟待解决的问题。
技术实现思路
为解决上述问题,本申请提供了一种基于过滤条件的日志输出方法及装置,具体技术方案如下:第一方面,本申请提供了一种基于过滤条件的日志输出方法,所述方法包括:注册过滤条件的指令;根据所述过滤条件的指令,添加unregister指令;增加对所述过滤条件的指令进行处理的代码;通过所述代码,对所述过滤条件的指令进行处理,以实现基于过滤条件的日志输出。在一种可选的实现方式中,所述过滤条件的指令包含用户指定输出的日志文件名和/或行号。在一种可选的实现方式中,所述过滤条件的指令包括过滤条件添加指令、过滤条件列举指令和过滤条件删除指令中的至少一种。在一种可选的实现方式中,所述通过所述代码,对所述过滤条件的指令进行处理,以实现基于过滤条件的日志输出,包括:获取所述过滤条件的指令中传递的参数,其中,所述参数包含日志的文件名和/或行号;将所述参数存储到容器map中,所述容器map还存储有所有过滤条件的指令;调用所述map中存储的过滤条件,以实现基于过滤条件的日志输出。在一种可选的实现方式中,所述调用所述map中存储的内容,以实现基于过滤条件的日志输出之前,还包括:判断所述map是否为空;如果否,则判断所述map中是否包含有指定的过滤条件,所述指定的过滤条件包含用户指定输出的日志文件名和/或行号;如果是,则基于所述过滤条件进行日志输出。第二方面,本申请提供了一种基于过滤条件的日志输出装置,所述装置包括:注册单元,用于注册过滤条件的指令;添加单元,用于根据所述过滤条件的指令,添加unregister指令;增加单元,用于增加对所述过滤条件的指令进行处理的代码;处理单元,用于通过所述代码,对所述过滤条件的指令进行处理,以实现基于过滤条件的日志输出。在一种可选的实现方式中,所述过滤条件的指令包含用户指定输出的日志文件名和/或行号。在一种可选的实现方式中,所述过滤条件的指令包括过滤条件添加指令、过滤条件列举指令和过滤条件删除指令中的至少一种。在一种可选的实现方式中,所述处理单元包括:获取子单元,用于获取所述过滤条件的指令中传递的参数,其中,所述参数包含日志的文件名和/或行号;存储子单元,用于将所述参数存储到容器map中,所述容器map还存储有所有过滤条件的指令;调用子单元,用于调用所述map中存储的过滤条件,以实现基于过滤条件的日志输出。在一种可选的实现方式中,所述装置还包括:第一判断单元,用于判断所述map是否为空;第二判断单元,用于如果判断出所述map不为空,则判断所述map中是否包含有指定的过滤条件,所述指定的过滤条件包含用户指定输出的日志文件名和/或行号;日志输出单元,用于如果判断出map中确实包含有指定的过滤条件,则基于所述过滤条件进行日志输出。在本申请提供的基于过滤条件的日志输出方法中,首先在对象存储设备(ObjectStorageDevice,简称OSD)模块中注册包含过滤条件的指令,然后根据该过滤条件的指令,添加相应的unregister指令的代码,接着,可以增加对该过滤条件的指令进行处理的相关代码,最后,可以通过增加的相关代码对该过滤条件的指令进行处理,以实现基于该过滤条件的日志输出,这样,可根据过滤条件的不同,实现日志的个性化输出。可见,本申请实施例不再根据预先设置好的日志等级来选择输出哪些日志,而是通过添加过滤条件的方式,基于添加的过滤条件实现日志的输出,从而可根据用户或其他使用者的需求设置不同的过滤条件,进而再基于这些个性化的过滤条件实现日志的个性化输出,即,实现了更好地根据实际需求来输出日志。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本申请实施例提供的一种基于过滤条件的日志输出方法的流程图;图2为本申请实施例提供的对过滤条件的指令进行处理的流程图;图3为本申请实施例提供的一种基于过滤条件的日志输出装置的结构示意图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。为了便于理解本申请提供的技术方案,下面先对本申请技术方案的研究背景进行简单说明。众所周知,正如
技术介绍
中的描述,每一个大型的系统项目,都会设计有log模块,log是重要的调试手段,也是很好的学习入口。通过跟踪查看log不仅可以快速理解代码,还可以看到程序在不同时间都发生了什么,运行是否正确、合理等,同时,如果出现了问题(bug),工程师也可以通过分析log来确定问题出现的位置和原因,以便更快的解决bug。但是,现有的log模块只能根据设置好的日志等级来选择输出哪些日志,如果日志等级过大,可能会输出很多不需要的日志信息,且日志文件会占用很大的空间,如果日志等级过小,可能会造成很多需要的日志信息无法被输出。因此,现有的根据设置好的日志等级来选择输出日志的方式,还不能完全满足用户或其他使用者的需求,即无法实现个性化的日志输出。所以,如何利用利用更先进的日志输出方式取代传统的输出方式,以实现根据用户或其他使用者的需求进行个性化日志输出,已成为亟待解决的问题。基于此,本申请提出了一种基于过滤条件的日志输出方法及装置,用于实现根据用户或其他使用者的需求进行个性化日志输出。以下将结合附图对本申请实施例提供的基于过滤条件的日志输出方法进行详细说明。参见图1,其示出了本申请实施例提供的一种基于过滤条件的日志输出方法的流程图,本实施例可以包括以下步骤:S101:注册过滤条件的指令。在本实施例中,为了实现根据用户或其他使用者的需求进行个性化日志输出,首先可以在OSD模块的log中注册过滤条件的指令,其中,一种可选的实现方式是,该注册过滤条件的指令可以包含用户指定输出的日志文件名和/或行号,也就是说,过滤条件是根据用户或其他使用者的需求而编写的代码,并可以将其添加到log中,其中,用户可以既指定输出日志的文件名和行号,也可以仅指定输出日志本文档来自技高网
...

【技术保护点】
1.一种基于过滤条件的日志输出方法,其特征在于,所述方法包括:注册过滤条件的指令;根据所述过滤条件的指令,添加unregister指令;增加对所述过滤条件的指令进行处理的代码;通过所述代码,对所述过滤条件的指令进行处理,以实现基于过滤条件的日志输出。

【技术特征摘要】
1.一种基于过滤条件的日志输出方法,其特征在于,所述方法包括:注册过滤条件的指令;根据所述过滤条件的指令,添加unregister指令;增加对所述过滤条件的指令进行处理的代码;通过所述代码,对所述过滤条件的指令进行处理,以实现基于过滤条件的日志输出。2.根据权利要求1所述的基于过滤条件的日志输出方法,其特征在于,所述过滤条件的指令包含用户指定输出的日志文件名和/或行号。3.根据权利要求1所述的基于过滤条件的日志输出方法,其特征在于,所述过滤条件的指令包括过滤条件添加指令、过滤条件列举指令和过滤条件删除指令中的至少一种。4.根据权利要求1所述的基于过滤条件的日志输出方法,其特征在于,所述通过所述代码,对所述过滤条件的指令进行处理,以实现基于过滤条件的日志输出,包括:获取所述过滤条件的指令中传递的参数,其中,所述参数包含日志的文件名和/或行号;将所述参数存储到容器map中,所述容器map还存储有所有过滤条件的指令;调用所述map中存储的过滤条件,以实现基于过滤条件的日志输出。5.根据权利要求4所述的基于过滤条件的日志输出方法,其特征在于,所述调用所述map中存储的内容,以实现基于过滤条件的日志输出之前,还包括:判断所述map是否为空;如果否,则判断所述map中是否包含有指定的过滤条件,所述指定的过滤条件包含用户指定输出的日志文件名和/或行号;如果是,则基于所述过滤条件进行日志输出。6...

【专利技术属性】
技术研发人员:张露露
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1