日志的打印控制方法和打印控制装置制造方法

文档序号:6548575阅读:134来源:国知局
日志的打印控制方法和打印控制装置制造方法
【专利摘要】本发明提供一种日志的打印控制方法和打印控制装置,该打印控制方法包括:从设备处获取日志;解析所述日志,以得到所述日志中包含的标签,所述标签对应于所述设备的指定功能模块;统计每个类型的所述标签对应的日志数量;当任一类型的标签对应的日志数量大于或等于预设数量时,取消对所述任一类型的标签对应的功能模块中满足预设条件的日志的打印操作。在本发明的技术方案中,通过对日志的分类统计,能够了解到每个功能模块对应的日志打印次数,并通过取消对部分日志的打印操作,降低了打印日志的总数量,从而能够减少对存储器的读写次数,有助于实现对设备运行系统的优化。
【专利说明】日志的打印控制方法和打印控制装置
【技术领域】
[0001]本发明涉及计算机【技术领域】,尤其涉及日志的打印控制方法和打印控制装置。
【背景技术】
[0002]为了便于了解设备的运行状况,需要通过在设备的运行系统中添加打印标签,从而生成相应的日志信息,以供查询和分析。日志信息在生成后直接写入设备的存储器,比如智能手机或智能电视中的emmc (Embedded Multi Media Card,嵌入式多媒体卡)。
[0003]由于运行系统的开发量很大,往往是由不同的人员分别进行开发,比如按照功能模块进行分配,使得有些功能模块可能包含了较多的打印标签,造成对存储器的大量读写操作,严重影响存储器的性能和使用寿命。

【发明内容】

[0004]有鉴于此,本发明提供一种新的技术方案,可以解决日志打印数量过多,造成对存储器的读写操作过于频繁、影响存储器的性能和使用寿命的技术问题。
[0005]为实现上述目的,本发明提供技术方案如下:
[0006]根据本发明的第一方面,提出了一种日志的打印控制方法,包括:
[0007]从设备处获取日志;
[0008]解析所述日志,以得到所述日志中包含的标签,所述标签对应于所述设备的指定功能模块;
[0009]统计每个类型的所述标签对应的日志数量;
[0010]当任一类型的标签对应的日志数量大于或等于预设数量时,取消对所述任一类型的标签对应的功能模块中满足预设条件的日志的打印操作。
[0011]根据本发明的第二方面,提出了一种日志的打印控制装置,包括:
[0012]获取单元,用于从设备处获取日志;
[0013]解析单元,用于解析所述日志,以得到所述日志中包含的标签,所述标签对应于所述设备的指定功能模块;
[0014]统计单元,用于统计每个类型的所述标签对应的日志数量;
[0015]处理单元,用于当任一类型的标签对应的日志数量大于或等于预设数量时,取消对所述任一类型的标签对应的功能模块中满足预设条件的日志的打印操作。
[0016]根据本发明的第三方面,提出了一种日志的打印控制装置,包括:
[0017]处理器;
[0018]用于存储处理器可执行指令的存储器;
[0019]其中,所述处理器被配置为:
[0020]从设备处获取日志;
[0021]解析所述日志,以得到所述日志中包含的标签,所述标签对应于所述设备的指定功能模块;[0022]统计每个类型的所述标签对应的日志数量;
[0023]当任一类型的标签对应的日志数量大于或等于预设数量时,取消对所述任一类型的标签对应的功能模块中满足预设条件的日志的打印操作。
[0024]由以上技术方案可见,本发明通过对日志的分类统计,可以了解到每个功能模块对应的日志打印次数,并据此取消部分日志的打印,从而通过减少打印日志的总数量来实现对设备运行系统的优化,有助于减少对设备中存储器的读写操作,提升存储器的性能和使用寿命。
【专利附图】

【附图说明】
[0025]图1示出了根据本发明的一个实施例的日志的打印控制方法的流程示意图;
[0026]图2示出了根据本发明的另一个实施例的日志的打印控制方法的流程示意图;
[0027]图3示出了根据本发明的一个实施例的日志信息的示意图;
[0028]图4示出了根据本发明的另一个实施例的日志的打印控制方法的流程示意图;
[0029]图5示出了根据本发明的一个实施例的日志的打印控制装置的示意框图。
【具体实施方式】
[0030]本发明通过对日志的分类统计,可以了解到每个功能模块对应的日志打印次数,并据此取消部分日志的打印,从而通过减少打印日志的总数量来实现对设备运行系统的优化,有助于减少对设备中存储器的读写操作,提升存储器的性能并延长其使用寿命。
[0031]为对本发明进行进一步说明,提供下列实施例:
[0032]图1示出了根据本发明的一个实施例的日志的打印控制方法的流程示意图。
[0033]如图1所示,根据本发明的一个实施例的日志的打印控制方法,包括:
[0034]步骤102,从设备处获取日志;
[0035]在本实施例中,设备在运行过程中生成日志,该日志记录了设备和/或设备所处网络的运行状况等信息。当需要对日志进行分析时,该日志可以是设备实时生成并存储于存储器中的,也可以是在其他任意时刻生成并保存的。
[0036]步骤104,解析所述日志,以得到所述日志中包含的标签,所述标签对应于所述设备的指定功能模块;
[0037]在本实施例中,标签是包含在日志中的信息,且每个类型标签对应于一种功能模块,因而通过获取和识别标签的类型,即可在日志和功能模块之间建立关联,从而准确统计出不同功能模块对应的日志数量。
[0038]步骤106,统计每个类型的所述标签对应的日志数量;
[0039]在本实施例中,可以对每个类型的标签对应的日志数量进行统计;当然,也可以根据需求来确定实际关注的功能模块,从而仅对相应类型的标签对应的日志数量进行统计。
[0040]步骤108,当任一类型的标签对应的日志数量大于或等于预设数量时,取消对所述任一类型的标签对应的功能模块中满足预设条件的日志的打印操作。
[0041]在本实施例中,开发者或者用户可以根据实际需求,预先设置不同的条件,从而当某个类型的标签对应的日志数量过多(比如大于或等于预设数量)时,通过取消对相应功能模块中部分日志的打印操作,从而减少该功能模块的日志打印数量。其中,被取消的日志应当为相对不重要的日志,即“预设条件”用于挑选出相对不重要的日志,从而保留更为重要的日志,以供用于日后的故障分析等。
[0042]由上述实施例可知,本发明的技术方案通过获取日志中包含的标签,并确定该标签的类型,实现了对不同功能模块对应日志数量的分类统计;同时,通过判断每个功能模块(即相应类型的标签)对应的日志数量的大小,并当日志数量较多时,取消部分日志的打印操作,以降低相应功能模块打印的日志数量,避免对设备中存储器的过量读写,有助于提升存储器的性能并延长其使用寿命。
[0043]下面以一典型场景为例,对基于本发明技术方案的对日志进行打印控制的流程进行说明。其中,图2示出了根据本发明的一个实施例的日志的打印控制方法的流程示意图。
[0044]如图2所示,根据本发明的一个实施例的日志的打印控制方法的流程包括:
[0045]步骤202,设备开机。该设备可以是任意可以生成日志的终端或服务器。
[0046]步骤204,设备的操作系统运行后,启动日志收集程序。
[0047]具体地,比如当设备为运行Android系统的智能电视时,该日志收集程序可以为命令行工具Logcat。
[0048]步骤206,日志收集程序收集设备生成的日志,并将日志存储至预设路径下的日志文件log.0中。用于举例,该预设路径比如为/data/log/log.0。
[0049]步骤208,监测日志文件log.0的大小,当达到预设数据量(比如为4M)时,进入步骤210,否则继续执行对日志写入操作。
[0050]步骤210,对日志文件log.0进行重命名,比如将log.0重命名为log.1,并将原来
的log.1重命名为log.2......将原来的log.η重命名为log.n+1,使得每次都只需要将日志
写入/data/log/log.0即可,且无需担心已生成的日志被覆盖。
[0051]当然,步骤210仅为一种示例性实施方式,日志收集程序也可以按顺序依次生成
各个日志文件,比如从log.0、log.1......log.η的顺序生成各个日志文件,并确保每个日志
文件的大小为预设大小。
[0052]步骤212,在设备开机后,还启动日志监视程序。需要说明的是,虽然通过步骤204和步骤212分别表示对“日志收集程序”和“日志监视程序”的启动操作,但两者的功能并不存在必要的依赖关系,因而本发明中并不具体限定两者之间的执行顺序。
[0053]步骤214,日志监视程序监视预设路径下的日志文件的数量。
[0054]步骤216,判断日志文件的数量是否达到预设数量(比如5个日志文件),若是则进入步骤218,否则继续监视。
[0055]步骤218,遍历预设路径下的所有日志文件(即上述的预设数量的日志文件),获取每个日志文件下的每条日志中包含的标签,并确定该标签的类型。
[0056]请参考图3,图3示出了根据本发明的一个实施例的日志信息的示意图,其中第6列即为“标签”,比如图3中分别示出了类型为“Wpa_SuppliCant”、“StateMaChine”和“WifiStateMachine”的标签,以分别表示对应的三种功能模块。
[0057]同时,上述步骤通过限制每次遍历的日志文件的数量(比如5个)和每个日志文件的大小(比如4M),能够有效控制每次执行遍历操作时所需的运算资源,避免对设备的正常运行造成影响。
[0058]此外,对于已经遍历过的日志文件,可以将其标记为已解析日志文件,从而避免被重复遍历。具体地,比如对于日志文件log.1,可以将其重命名为monitor.1,从而实现对未经遍历的日志文件和已解析日志文件的明确区分。
[0059]步骤220,统计每种类型的标签对应的日志数量,从而根据标签类型与功能模块之间的对应关系,确定每个功能模块对应的日志数量。
[0060]步骤222,当某个功能模块对应的日志数量大于或等于预设阈值时,表明该功能模块中包含的打印次数过多,进入步骤224 ;否则继续统计其他功能模块对应的日志数量。
[0061]步骤224A,针对对应的日志数量较多(如大于或等于预设阈值)的功能模块,设备可以筛选出该功能模块中满足预设条件的日志,并取消对选出的日志的打印操作。
[0062]作为一示例性实施例,该预设条件可以为优先级,则筛选出的是优先级别小于或等于预设级别的日志。在图3所示的日志信息中,第5列即为相应日志的优先级,比如第一行日志的优先级为“V”、第二行日志的优先级为“D”等。实际上,相关技术中定义了日志的优先级为 S (Silent) > F(Fatal) > E (Error) > W(Warning) > I (Info) > D (Debug) >V(Verbose),则可以设定为:删除优先级小于或等于“D”的日志,即删除优先级为D和V的日志,对应于图3所示的第I行和第2行日志,从而减少了日志的打印总量。
[0063]步骤224B,除了采用步骤224A中的方式,即设备自行取消对部分日志的打印操作,还可以由服务器来完成。具体地,设备可以将相应的统计结果和日志上传至服务器,以供通过查询和分析,由服务器取消对相应功能模块中满足预设条件的日志的打印操作,从而减少这些功能模块中包含的打印次数。
[0064]由该实施例可知,根据日志中包含的标签,可以对每个功能模块对应的日志数量进行分别统计,从而当某个功能模块对应的日志数量较多时,通过设备自身或服务器对日志进行分析,减少相应功能模块中包含的打印次数,从而减少了打印日志的数量,有助于降低对设备中存储器的读写次数,提升存储器的性能,并延长存储器的使用寿命。
[0065]此外,图2所示的实施例中,通过控制每次统计运算时的日志文件数量,以及每个日志文件中包含的日志数量,能够控制每次统计运算时所需占用的运算资源量,避免影响设备的正常运行。当然,图2所示仅为一示例性实施方式,而为了实现对运算资源量的控制,实际上还可以通过其他手段来实现,下面结合图4介绍另一示例性实施方式。
[0066]图4示出了根据本发明的另一个实施例的日志的打印控制方法的流程示意图。
[0067]如图4,根据本发明的另一个实施例的日志的打印控制方法的流程包括:
[0068]步骤402,设备开机。该设备可以是任意可以生成日志的终端或服务器。
[0069]步骤404,设备的操作系统运行后,启动日志收集程序。
[0070]具体地,比如当设备为运行Android系统的智能电视时,该日志收集程序可以为命令行工具Logcat。
[0071]步骤406,日志收集程序收集设备生成的日志,并将日志存储至预设路径下的日志文件log.0中。用于举例,该预设路径比如为/data/log/log.0。
[0072]当然,此处也可以控制每个日志文件的大小,比如当日志文件log.0到达预设大小(如4M)后对其进行重命名,如将log.0重命名为log.1,并将原来的log.1重命名为
log.2......将原来的log.η重命名为log.n+1,使得每次都只需要将日志与入/data/log/
log.0即可,且无需担心已生成的日志被覆盖。
[0073]或者,日志收集程序也可以采用其他方式,比如按顺序依次生成各个日志文件,比如从log.0、log.1......log.n的顺序生成各个日志文件,并确保每个日志文件的大小为预设大小。
[0074]步骤408,在设备开机后,启动定时器。需要说明的是,虽然通过步骤404和步骤408分别表示对“日志收集程序”和“定时器”的启动操作,但两者的功能并不存在必要的依赖关系,因而本发明中并不具体限定两者之间的执行顺序。
[0075]步骤410,判断定时器是否超时,若超时则进入步骤412并重新开始计时,否则继
续等待。
[0076]步骤412,遍历预设路径(如上述的/data/log/log.0)下的所有日志文件,获取每个日志文件下的每条日志中包含的标签,并确定该标签的类型。
[0077]此外,对于已经遍历过的日志文件,可以将其标记为已解析日志文件,从而避免被重复遍历。具体地,比如对于日志文件log.1,可以将其重命名为monitor.1,从而实现对未经遍历的日志文件和已解析日志文件的明确区分。
[0078]步骤414,统计每种类型的标签对应的日志数量,从而根据标签类型与功能模块之间的对应关系,确定每个功能模块对应的日志数量。
[0079]步骤416,当某个功能模块对应的日志数量大于或等于预设阈值时,表明该功能模块中包含的打印次数过多,进入步骤224 ;否则继续统计其他功能模块对应的日志数量。
[0080]步骤418A,针对对应的日志数量较多(如大于或等于预设阈值)的功能模块,设备主动取消对该功能模块中满足预设条件的日志的打印操作。
[0081]步骤418B,不同于步骤418A,可以由设备将相应的统计结果和日志上传至服务器,以供服务器通过查询和分析,取消对该功能模块中满足预设条件的日志的打印操作,从而减少这些功能模块中包含的打印次数。
[0082]对应于上述的日志的打印控制方法,本发明还提出了日志的打印控制装置。请参考图5,图5示出了根据本发明的一个实施例的日志的打印控制装置的示意框图。
[0083]为了方便描述,本申请将构成日志统计装置的终端设备的硬件架构进行了简化抽象,各个安全设备在硬件层面均包括处理器、内存、非易失性存储器以及网络接口。从业务层面来看,图5中的日志的打印控制装置可理解为对应主机上的处理器将计算机程序读取到内存中然后执行所形成的逻辑装置(也称为“虚拟装置”)。当然本发明并不排除软件实现以外其他实现方式,比如可编程逻辑器件这样的实现方式等等,也就是说后续描述的各个处理步骤的执行主体可以采用硬件或逻辑器件等方式实现。在本实施方式中,所述日志的打印控制装置可以包括获取单元502、解析单元504、统计单元506、处理单元508、标记单元510和上传单元512。
[0084]获取单元502,被配置为从设备处获取日志;
[0085]解析单元504,被配置为解析所述日志,以得到所述日志中包含的标签,所述标签对应于所述设备的指定功能模块;
[0086]统计单元506,被配置为统计每个类型的所述标签对应的日志数量;
[0087]处理单元508,被配置为当任一类型的标签对应的日志数量大于或等于预设数量时,取消对所述任一类型的标签对应的功能模块中满足预设条件的日志的打印操作。
[0088]在本实施例中,通过获取日志中包含的标签,并确定该标签的类型,实现了对不同功能模块对应日志数量的分类统计;同时,通过判断每个功能模块(即相应类型的标签)对应的日志数量的大小,并当日志数量较多时,取消部分日志的打印操作,以降低相应功能模块打印的日志数量,避免对设备中存储器的过量读写,有助于提升存储器的性能并延长其使用寿命。
[0089]可选的,所述满足预设条件的日志为:优先级小于或等于预设级别的日志。
[0090]可选的,所述解析单元504具体用于:记录所述设备中的待解析日志文件的数量,所述待解析日志文件中包含预设数据量的日志;其中,当所述数量达到预设数量时,执行对该预设数量的待解析日志文件的解析操作。
[0091]可选的,所述解析单元504具体用于:按照预设的时间间隔,调取所述设备中的待解析日志文件;以及,执行对所述待解析日志文件的解析操作。
[0092]可选的,日志统计装置还可以包括:
[0093]标记单元510,被配置为将完成了解析操作的所述待解析日志文件标记为已解析日志文件。
[0094]可选的,所述标记单元510具体用于:对完成了解析操作的所述待解析日志文件进行重命名。
[0095]可选的,还包括:上传单元512,用于将所述任一类型的标签对应的统计结果和/或日志上传至服务器,以由所述服务器取消对相应的功能模块中满足预设条件的日志的打印操作。
[0096]本发明还提出了一种日志的打印控制装置,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为:从设备处获取日志;解析所述日志,以得到所述日志中包含的标签,所述标签对应于所述设备的指定功能模块;统计每个类型的所述标签对应的日志数量;当任一类型的标签对应的日志数量大于或等于预设数量时,取消对所述任一类型的标签对应的功能模块中满足预设条件的日志的打印操作。
[0097]可选的,所述满足预设条件的日志为:优先级小于或等于预设级别的日志。
[0098]可选的,解析所述日志包括:
[0099]记录所述设备中的待解析日志文件的数量,所述待解析日志文件中包含预设数据量的日志;当所述数量达到预设数量时,执行对该预设数量的待解析日志文件的解析操作;
[0100]或者,按照预设的时间间隔,调取所述设备中的待解析日志文件,并执行对所述待解析日志文件的解析操作。
[0101]可选的,还包括:将完成了解析操作的所述待解析日志文件标记为已解析日志文件。
[0102]可选的,还包括:将所述任一类型的标签对应的统计结果和/或日志上传至服务器,以由所述服务器取消对相应的功能模块中满足预设条件的日志的打印操作。
[0103]因此,本发明通过对日志的分类统计,可以了解到每个功能模块对应的日志打印次数,并据此取消部分日志的打印,从而通过减少打印日志的总数量来实现对设备运行系统的优化,有助于减少对设备中存储器的读写操作,提升存储器的性能并延长其使用寿命。
[0104]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
【权利要求】
1.一种日志的打印控制方法,其特征在于,包括: 从设备处获取日志; 解析所述日志,以得到所述日志中包含的标签,所述标签对应于所述设备的指定功能模块; 统计每个类型的所述标签对应的日志数量; 当任一类型的标签对应的日志数量大于或等于预设数量时,取消对所述任一类型的标签对应的功能模块中满足预设条件的日志的打印操作。
2.根据权利要求1所述的方法,其特征在于,所述满足预设条件的日志为:优先级小于或等于预设级别的日志。
3.根据权利要求1所述的方法,其特征在于,解析所述日志包括: 记录所述设备中的待解析日志文件的数量,所述待解析日志文件中包含预设数据量的日志;当所述数量达到预设数量时,执行对该预设数量的待解析日志文件的解析操作; 或者,按照预设的时间间隔,调取所述设备中的待解析日志文件,并执行对所述待解析日志文件的解析操作。
4.根据权利要求3所述的方法,其特征在于,还包括: 将完成了解析操作的所 述待解析日志文件标记为已解析日志文件。
5.根据权利要求1所述的方法,其特征在于,还包括: 将所述任一类型的标签对应的统计结果和/或日志上传至服务器,以由所述服务器取消对相应的功能模块中满足预设条件的日志的打印操作。
6.一种日志的打印控制装置,其特征在于,包括: 获取单元,用于从设备处获取日志; 解析单元,用于解析所述日志,以得到所述日志中包含的标签,所述标签对应于所述设备的指定功能模块; 统计单元,用于统计每个类型的所述标签对应的日志数量; 处理单元,用于当任一类型的标签对应的日志数量大于或等于预设数量时,取消对所述任一类型的标签对应的功能模块中满足预设条件的日志的打印操作。
7.根据权利要求6所述的装置,其特征在于,所述满足预设条件的日志为:优先级小于或等于预设级别的日志。
8.根据权利要求6所述的装置,其特征在于,所述解析单元具体用于: 记录所述设备中的待解析日志文件的数量,所述待解析日志文件中包含预设数据量的日志;其中,当所述数量达到预设数量时,执行对该预设数量的待解析日志文件的解析操作; 或者,按照预设的时间间隔,调取所述设备中的待解析日志文件,并执行对所述待解析日志文件的解析操作。
9.根据权利要求8所述的装置,其特征在于,还包括: 标记单元,用于将完成了解析操作的所述待解析日志文件标记为已解析日志文件。
10.一种日志的打印控制装置,其特征在于,包括: 处理器; 用于存储处理器可执行指令的存储器;其中,所述处理器被配置为: 从设备处获取日志; 解析所述日志,以得到所述日志中包含的标签,所述标签对应于所述设备的指定功能模块; 统计每个类型的所述标签对应的日志数量; 当任一类型的标签对应的日志数量大于或等于预设数量时,取消对所述任一类型的标签对应的功能 模块中满足预设条件的日志的打印操作。
【文档编号】G06F3/12GK104007942SQ201410243398
【公开日】2014年8月27日 申请日期:2014年5月30日 优先权日:2014年5月30日
【发明者】曲仕辉 申请人:乐视致新电子科技(天津)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1