CN105700996A - 一种日志的输出方法及装置 - Google Patents
一种日志的输出方法及装置 Download PDFInfo
- Publication number
- CN105700996A CN105700996A CN201410699757.4A CN201410699757A CN105700996A CN 105700996 A CN105700996 A CN 105700996A CN 201410699757 A CN201410699757 A CN 201410699757A CN 105700996 A CN105700996 A CN 105700996A
- Authority
- CN
- China
- Prior art keywords
- daily record
- level
- software
- bar number
- rank
- 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
Links
Abstract
本发明实施例公开了一种日志的输出方法及装置,涉及计算机技术领域,可以在不重启软件的情况下,在软件故障第一次发生的时候,收集到较低级别的日志,可以提高日志的收集效率。具体方案为:在软件运行过程中,生成并存储软件的第一级别的日志;当软件出现故障时,生成并输出软件运行的系统预设的第二级别的日志,第二级别高于第一级别;当生成并输出的第二级别的日志的条数达到第一预设条数时,按照存储的先后顺序读取并输出已存储的第一级别的日志。本发明实施例用于软件维护人员分析软件故障的过程中。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种日志的输出方法及装置。
背景技术
日志是指软件在运行过程中生成的,记录软件的运行环境信息、软件的工作过程信息和软件的运行错误信息等的文件。当软件出现故障时,软件维护人员可以通过日志分析出软件的故障产生原因。目前,业内一般把日志按照从低到高的级别分为调试(debug)、一般信息(info)、警告(waning)和错误(error)4个级别。其中,日志的级别越低,日志记录的软件运行过程的信息越详细。
为了准确的分析出软件的故障产生原因,软件维护人员常常需要查看低级别的日志,例如debug级别的日志。然而,为了避免软件在运行过程中输出过多的日志,影响软件的运行效率,软件的输出日志的级别通常会设置的比较高,例如error级别。目前的做法是:当软件出现故障时,软件维护人员首先会修改输出日志的级别,例如将输出日志的级别从error级别修改为debug级别;然后重新启动软件,以重新复现故障,输出debug级别的日志;再通过debug级别的日志分析出软件的故障产生原因。为了避免软件在运行过程中输出过多的日志,当收集到debug级别的日志后,软件维护人员需要将输出日志的级别从debug级别恢复至error级别,再重新启动软件。
但是,目前的这种做法至少存在如下问题:当软件出现故障时,软件维护人员需要修改输出日志的级别,然后重新启动软件,软件才能够输出debug级别的日志,软件维护人员才能够收集到较低级别的日志,并根据该较低级别的日志分析软件的故障产生原因。
发明内容
本发明的实施例提供日志的输出方法及装置,可以在不重启软件的情况下,在软件故障第一次发生的时候,收集到较低级别的日志,可以提高日志的收集效率。
为达到上述目的,本发明的实施例采用如下技术方案:
本发明实施例的第一方面,提供一种日志的输出方法,包括:
在软件运行过程中,生成并存储所述软件的第一级别的日志;
当所述软件出现故障时,生成并输出所述软件运行的系统预设的第二级别的日志,所述第二级别高于所述第一级别;
当生成并输出的所述第二级别的日志的条数达到第一预设条数时,按照存储的先后顺序读取并输出已存储的所述第一级别的日志。
结合第一方面,在第一种可能的实现方式中,在所述当生成并输出的所述第二级别的日志的条数达到第一预设条数时,按照存储的先后顺序读取并输出已存储的所述第一级别的日志之后,所述方法还包括:
输出在生成并输出的所述第二级别的日志的条数达到所述第一预设条数后生成的所述第一级别的日志;
当生成并输出的所述第一级别的日志的条数达到第二预设条数时,停止输出所述第一级别的日志。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述输出在生成并输出的所述第二级别的日志的条数达到所述第一预设条数后生成的所述第一级别的日志,包括:
输出在生成并输出的所述第二级别的日志的条数达到所述第一预设条数后生成并存储的所述第一级别的日志。
结合第一方面或者第一方面的第一种可能的实现方式或者第一方面的第二种可能的实现方式,在第三种可能的实现方式中,所述第一级别的日志存储在存储介质中,所述存储介质中能够存储第三预设条数的日志;
所述生成并存储所述软件的第一级别的日志,包括:
当生成一个所述级别的日志时,
若所述存储介质中已存储的日志的条数为所述第三预设条数,则删除所述存储介质中存储的第一日志,并存储所述第一级别的日志,所述第一日志为按照存储至所述存储介质的时间的先后顺序排在第一位的日志;
若所述存储介质中已存储的日志的条数小于所述第三预设条数,则直接存储生成的所述第一级别的日志。
结合第一方面或者第一方面的第一种可能的实现方式或者第一方面的第二种可能的实现方式,在第四种可能的实现方式中,所述第二级别为error级别、waning级别和info级别中的任一级别;
所述第一级别为waning级别、info级别和debug级别中低于所述第二级别的任一级别。
结合第一方面或者第一方面的第一种可能的实现方式或者第一方面的第二种可能的实现方式,在第五种可能的实现方式中,所述第二级别为所述error级别,所述第一级别为所述debug级别。
本发明实施例的第二方面,提供一种日志的输出装置,包括:
日志生成模块,用于在软件运行过程中,生成第一级别的日志;
日志存储模块,用于存储所述第一级别的日志;
所述日志生成模块,还用于当所述软件出现故障时,生成第二级别的日志,所述第二级别高于所述第一级别;
日志输出模块,用于输出所述第二级别的日志;
日志监听模块,用于监听生成并输出的所述第二级别的日志的条数;
所述日志输出模块,还用于当生成并输出的所述第二级别的日志的条数达到第一预设条数时,按照存储的先后顺序读取并输出已存储的所述第一级别的日志。
结合第二方面,在第一种可能的实现方式中,所述日志输出模块,还用于在按照存储的先后顺序读取并输出已存储的所述第一级别的日志之后,输出在生成并输出的所述第二级别的日志的条数达到所述第一预设条数后生成的所述第一级别的日志;
所述日志监听模块,还用于监听生成并输出的所述第一级别的日志的条数;
所述日志输出模块,还用于当生成并输出的所述第一级别的日志的条数达到第二预设条数时,停止输出所述第一级别的日志。
结合第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述日志输出模块,还用于输出在生成并输出的所述第二级别的日志的条数达到所述第一预设条数后生成并存储的所述第一级别的日志。
结合第二方面或者第二方面的第一种可能的实现方式或者第二方面的第二种可能的实现方式,在第三种可能的实现方式中,所述第一级别的日志存储在存储介质中,所述存储介质中能够存储第三预设条数的日志;
所述日志存储模块,具体用于当生成一个所述第一级别的日志时,
若所述存储介质中已存储的日志的条数为所述第三预设条数,则删除所述存储介质中存储的第一日志,并存储生成的所述第一级别的日志,所述第一日志为按照存储至所述存储介质的时间的先后顺序排在第一位的日志;
若所述存储介质中已存储的日志的条数小于所述第三预设条数,则直接存储生成的所述第一级别的日志。
结合第二方面或者第二方面的第一种可能的实现方式或者第二方面的第二种可能的实现方式,在第四种可能的实现方式中,所述第二级别为error级别、waning级别和info级别中的任一级别;
所述第一级别为waning级别、info级别和debug级别中低于所述第二级别的任一级别。
结合第二方面或者第二方面的第一种可能的实现方式或者第二方面的第二种可能的实现方式,在第五种可能的实现方式中,所述第二级别为所述error级别,所述第一级别为所述debug级别。
本发明实施例提供的日志的输出方法及装置,系统预设的输出日志的级别为第二级别,日志的输出装置在软件运行过程中一直生成并存储第一级别(低级别)的日志,当软件出现故障时,日志的输出装置输出第二级别(高级别)的日志。当日志的输出装置输出预设条数的第二级别的日志时,说明该故障需要软件维护人员处理。此时,日志的输出装置将一直存储的高级别的日志输出。由于低级别的日志是一直生成并存储的,因此,当软件第一次出现故障时,无需重启软件即可将低级别的日志输出。此外,低级别的日志所记录的信息更详细,更有利于软件维护人员分析软件的故障产生原因。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种日志的输出方法流程图;
图2为本发明实施例提供的一种日志的输出装置在软件运行过程中生成的日志、存储的日志以及输出的日志的示意图;
图3为本发明实施例提供的另一种日志的输出方法流程图;
图4为本发明实施例提供的另一种日志的输出装置在软件运行过程中生成的日志、存储的日志以及输出的日志的示意图;
图5为本发明实施例提供的一种日志的输出装置的组成示意图;
图6为本发明实施例提供的另一种日志的输出装置的组成示意图。
具体实施方式
本发明实施例可以应用于各种软件或系统中。例如,可以应用于一种网络管理系统中,该网络管理系统主要负责管理网络中的各种网络设备,并对网络设备进行相关业务配置操作。当网络设备与网络管理系统之间发生某种异常(例如网络丢包等网络异常),导致用户无法通过网络管理系统对网络设备进行配置管理,则会出现错误提示。此时,网络管理系统中的相关业务模块在用户进行配置操作失败时,通常会多次尝试向网络设备发生业务请求,由于异常的存在,导致网络管理系统不能成功的下发业务,就会输出多条error级别的日志。此场景下,通过本发明实施例提供的方法,可以在不重启软件的情况下,在软件发生故障时就能智能化的输出较低级别的日志,从而提高日志的收集效率,进而可以提高故障定位效率,提高软件的可维护性。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种日志的输出方法,如图1所示,包括:
S101、日志的输出装置在软件运行过程中,生成并存储软件的第一级别的日志。
S102、当软件出现故障时,日志的输出装置生成并输出软件运行的系统预设的第二级别的日志。
其中,第二级别高于第一级别。第一级别和第二级别都是系统预先设置好的。
可选的,第二级别可以为error级别、waning级别和info级别中的任一级别,第一级别可以为waning级别、info级别和debug级别中低于第二级别的任一级别。其中,级别从低到高依次为debug级别、info级别、waning级别和error级别。通常情况下,debug级别的日志用于软件的调试过程,info级别的日志更突出强调软件的运行过程,warning级别的日志用于表明软件可能会出现潜在的错误,而error级别的日志用于指出软件运行过程中发生错误的事件。
为了避免软件在运行过程中输出过多的日志,影响软件的运行效率,通常将输出的日志的级别设置为error级别。为了准确的分析出软件的故障产生原因,软件维护人员常常需要查看debug级别的日志。因此,优选的,可以将第二级别设置为error级别,将第一级别设置为debug级别。
S103、当日志的输出装置生成并输出的第二级别的日志的条数达到第一预设条数时,日志的输出装置按照存储的先后顺序读取并输出已存储的第一级别的日志。
需要说明的是,当日志的输出装置“生成并输出的第二级别的日志的条数达到第一预设条数”时,则说明软件可能会出现故障或者已经出现故障。
其中,第一预设条数为预先设置好的一个参数,可以根据实际需要来设置。
示例性的,可以将第一预设条数设置为10条。如图2所示,日志的输出装置在软件运行过程中可以生成第一级别的日志和第二级别的日志,其中,第二级别的日志为软件出现故障时生成的日志。日志的输出装置将第一级别的日志存储下来,将第二级别的日志输出。假设日志的输出装置可以存储1000条第一级别的日志。假设在时刻1,日志的输出装置共生成并输出10条第二级别的日志,日志的输出装置则按照存储的先后顺序读取并输出已存储的1000条第一级别的日志。
本发明实施例提供的日志的输出方法,系统预设的输出日志的级别为第二级别,日志的输出装置在软件运行过程中一直生成并存储第一级别(低级别)的日志,当软件出现故障时,日志的输出装置输出第二级别(高级别)的日志。当日志的输出装置输出预设条数的第二级别的日志时,说明该故障需要软件维护人员处理。此时,日志的输出装置将一直存储的高级别的日志输出。由于低级别的日志是一直生成并存储的,因此,当软件第一次出现故障时,无需重启软件即可将低级别的日志输出。此外,低级别的日志所记录的信息更详细,更有利于软件维护人员分析软件的故障产生原因。
进一步的,在本发明实施例中,第一级别的日志缓存在缓存介质中,缓存介质中能够缓存第三预设条数的日志。
其中,缓存介质可以为计算机存储介质,例如,随机存储器(RamdomAccessMemory,RAM)、只读存储器(Read-onlyMemory,ROM)以及闪存(FlashMemory)等。
第三预设条数为预先设定好的一个参数,可以根据实际需要来设置。进一步的,第三预设条数可以等于第二预设条数。示例性的,可以将第三预设条数也设置为1000条。
进一步的,在本实施例中,S101中的生成并存储软件的第一级别的日志,具体可以包括:当日志的输出装置生成一个第一级别的日志时,若存储介质中已存储的日志的条数为第三预设条数,日志的输出装置则删除存储介质中存储的第一日志,并存储第一级别的日志,第一日志为按照存储至存储介质的时间的先后顺序排在第一位的日志;若存储介质中已存储的日志的条数小于第三预设条数,日志的输出装置则直接存储生成的第一级别的日志。
示例性的,假设第三预设条数为1000条,第一级别为debug级别。当日志的输出装置生成一个debug级别的日志时,若存储介质中已存储1000条日志,日志的输出装置则删除存储介质中存储的第一日志,并存储新生成的一个debug级别的日志,第一日志为按照存储至存储介质的时间的先后顺序排在第一位的日志;若存储介质中已存储的800条日志,日志的输出装置则直接存储新生成的一个debug级别的日志。
按照上述方法存储第一级别的日志,可以保证存储介质中存储的第一级别的日志为最新的日志,当软件出现故障时,按照存储的先后顺序读取并输出已存储的第一级别的日志为软件出现故障前的最新的日志有利于软件维护人员分析软件出现故障的产生原因,以便于正确的处理故障。
进一步的,如图3所示,本发明实施例提供另一种日志的输出方法,在图1所示的方法的基础上,在执行完S103后,执行S104-S105。
S104、日志的输出装置输出在生成并输出的第二级别的日志的条数达到第一预设条数后生成的第一级别的日志。
示例性的,如图4所示,“日志的输出装置生成并输出的第二级别的日志的条数达到第一预设条数的时刻”对应“时刻1”,S104可以描述为“日志的输出装置输出在时刻1之后生成的第一级别的日志”。
其中,S104中的“第一级别的日志”可以是日志的输出装置生成的第一级别的日志,也可以是日志的输出装置存储的第一级别的日志。因此,S104还可以描述为“日志的输出装置输出在生成并输出的第二级别的日志的条数达到第一预设条数后生成并存储的第一级别的日志”。示例性的,如图4所示,S104还可以描述为“日志的输出装置输出在时刻1之后存储的第一级别的日志”。
S105、当日志的输出装置生成并输出的第一级别的日志的条数达到第二预设条数时,日志的输出装置停止输出第一级别的日志。
其中,第二预设条数为预先设定好的一个参数,可以根据实际需要来设置。
示例性的,可以将将第二预设条数设置为1000条。如图4所示,日志的输出装置在时刻1之后生成并输出的第一级别的日志的条数达到1000条时,则停止输出第一级别的日志,仅输出第二级别的日志。
优选的,可以将第一级别设置为debug级别,将第二级别设置为error级别。在时刻1之后,当日志的输出装置生成并输出的debug级别的日志达到1000条时,日志的输出装置停止输出debug级别的日志,仅输出error级别的日志。
一般情况下,debug级别的日志的生成条数远远大于error级别的日志的生成条数。当日志的输出装置生成并输出的debug级别的日志达到1000条时,则停止输出debug级别的日志,可以避免软件在运行过程中输出过多的日志,减少对软件的运行效率的影响。
本发明实施例提供的日志的输出方法,系统预设的输出日志的级别为第二级别,日志的输出装置在软件运行过程中一直生成并存储第一级别(低级别)的日志,当软件出现故障时,日志的输出装置输出第二级别(高级别)的日志。当日志的输出装置输出预设条数的第二级别的日志时,说明该故障需要软件维护人员处理。此时,日志的输出装置将一直存储的高级别的日志输出。由于低级别的日志是一直生成并存储的,因此,当软件第一次出现故障时,无需重启软件即可将低级别的日志输出。接着,日志的输出装置开始输出在输出的第二级别的日志的条数达到第一预设条数后生成的第一级别的日志。这样,软件维护人员就可以在不重启软件的情况下,收集到软件出现故障前后的较低级别的日志,可以提高日志的收集效率;此外,低级别的日志所记录的信息更详细,更有利于软件维护人员分析软件的故障产生原因。
当日志的输出装置输出的第一级别的日志的条数达到第二预设条数时,日志的输出装置停止输出第一级别的日志。由于低级别的日志的生成条数远远大于高级别的日志的生成条数,输出过多的低级别的日志可能会影响软件的运行效率。因此,日志的输出装置在输出第二预设条数的第一级别的日志后停止输出第一级别的日志,可以避免软件在运行过程中输出过多的日志,减少对软件的运行效率的影响。
本发明实施例提供一种日志的输出装置,如图5所示,包括:日志生成模块21、日志存储模块22、日志输出模块23和日志监听模块24。
日志生成模块21,用于在软件运行过程中,生成第一级别的日志。
日志存储模块22,用于存储第一级别的日志。
日志生成模块21,还用于当软件出现故障时,生成第二级别的日志,第二级别高于第一级别。
日志输出模块23,用于输出第二级别的日志。
日志监听模块24,用于监听生成并输出的第二级别的日志的条数。
日志输出模块23,还用于当生成并输出的第二级别的日志的条数达到第一预设条数时,按照存储的先后顺序读取并输出已存储的第一级别的日志。
进一步的,日志输出模块23,还用于在按照存储的先后顺序读取并输出已存储的第一级别的日志之后,输出在生成并输出的第二级别的日志的条数达到第一预设条数后生成的第一级别的日志。
日志监听模块24,还用于监听生成并输出的第一级别的日志的条数。
日志输出模块23,还用于当生成并输出的第一级别的日志的条数达到第二预设条数时,停止输出第一级别的日志。
进一步的,日志输出模块23,还用于输出在生成并输出的第二级别的日志的条数达到第一预设条数后生成并存储的第一级别的日志。
进一步的,第一级别的日志存储在存储介质中,存储介质中能够存储第三预设条数的日志。
日志存储模块22,具体用于当生成一个第一级别的日志时,若存储介质中已存储的日志的条数为第三预设条数,则删除存储介质中存储的第一日志,并存储生成的第一级别的日志,第一日志为按照存储至存储介质的时间的先后顺序排在第一位的日志;若存储介质中已存储的日志的条数小于第三预设条数,则直接存储生成的第一级别的日志。
需要说明的是,本实施例中的日志存储模块22为本发明实施例中的日志的输出装置的缓存介质。
可选的,第二级别可以为error级别、waning级别和info级别中的任一级别;第一级别可以为waning级别、info级别和debug级别中低于第二级别的任一级别。
优选的,第二级别为error级别,第一级别为debug级别。
需要说明的是,本发明实施例提供的日志的输出装置中部分功能模块的具体描述可以参考方法实施例中的对应内容,本实施例这里不再详细赘述。
本发明实施例提供的日志的输出装置,系统预设的输出日志的级别为第二级别,日志的输出装置在软件运行过程中一直生成并存储第一级别(低级别)的日志,当软件出现故障时,日志的输出装置输出第二级别(高级别)的日志。当日志的输出装置输出预设条数的第二级别的日志时,说明该故障需要软件维护人员处理。此时,日志的输出装置将一直存储的高级别的日志输出。由于低级别的日志是一直生成并存储的,因此,当软件第一次出现故障时,无需重启软件即可将低级别的日志输出。此外,低级别的日志所记录的信息更详细,更有利于软件维护人员分析软件的故障产生原因。。
本发明实施例提供一种日志的输出装置,如图6所示,包括:存储器31和处理器32。
存储器31,用于存储一组程序代码。
处理器32,用于执行存储器31存储的程序代码,并具体用于执行以下操作:在软件运行过程中,生成并存储软件的第一级别的日志;当软件出现故障时,生成并输出软件运行的系统预设的第二级别的日志,第二级别高于第一级别;当生成并输出的第二级别的日志的条数达到第一预设条数时,按照存储的先后顺序读取并输出已存储的第一级别的日志。
其中,存储器31和处理器32通过总线连接并完成相互间的通信。总线可以是工业标准体系结构(IndustryStandardArchitecture,ISA)总线、外部设备互连(PeripheralComponentInterconnect,PCI)总线或扩展工业标准体系结构(ExtendedIndustryStandardArchitecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
进一步的,存储器31,还用于存储本实施例中的第一级别的日志。存储器31可以为计算机存储介质,例如,随机存储器(RamdomAccessMemory,RAM)、只读存储器(Read-onlyMemory,ROM)以及闪存(FlashMemory)等。
在本实施例中,处理器32可以为日志的输出装置的控制中心,如中央处理器(CentralProcessingUnit,CPU),该控制中心可以利用各种接口和线路连接整个日志的输出装置的各个部分,通过运行或执行存储在存储器31内的程序代码,以及调用存储在存储器31内的数据,以执行日志的输出装置的各种功能。该处理器32可以由集成电路(IntegratedCircuit,IC)或者特定集成电路(ApplicationSpecificIntegratedCircuit,ASIC)组成(例如,该处理器32可以由单颗封装的IC所组成),也可以由连接多颗相同功能或不同功能的封装IC组成。举例来说,处理器32可以仅包括CPU,也可以是CPU、图像处理器(GraphicProcessingUnit,GPU)、数字信号处理器(DigitalSignalProcessor,DSP)以及通信单元中的控制芯片(例如基带芯片)的组合。在本发明实施方式中,CPU可以是单运算核心,也可以包括多运算核心。
需要说明的是,本发明实施例提供的日志的输出装置中部分功能模块的具体描述可以参考方法实施例中的对应内容,本实施例这里不再详细赘述。
本发明实施例提供的日志的输出装置,系统预设的输出日志的级别为第二级别,日志的输出装置在软件运行过程中一直生成并存储第一级别(低级别)的日志,当软件出现故障时,日志的输出装置输出第二级别(高级别)的日志。当日志的输出装置输出预设条数的第二级别的日志时,说明该故障需要软件维护人员处理。此时,日志的输出装置将一直存储的高级别的日志输出。由于低级别的日志是一直生成并存储的,因此,当软件第一次出现故障时,无需重启软件即可将低级别的日志输出。此外,低级别的日志所记录的信息更详细,更有利于软件维护人员分析软件的故障产生原因。。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种日志的输出方法,其特征在于,包括:
在软件运行过程中,生成并存储所述软件的第一级别的日志;
当所述软件出现故障时,生成并输出所述软件运行的系统预设的第二级别的日志,所述第二级别高于所述第一级别;
当生成并输出的所述第二级别的日志的条数达到第一预设条数时,按照存储的先后顺序读取并输出已存储的所述第一级别的日志。
2.根据权利要求1所述的方法,其特征在于,在所述当生成并输出的所述第二级别的日志的条数达到第一预设条数时,按照存储的先后顺序读取并输出已存储的所述第一级别的日志之后,所述方法还包括:
输出在生成并输出的所述第二级别的日志的条数达到所述第一预设条数后生成的所述第一级别的日志;
当生成并输出的所述第一级别的日志的条数达到第二预设条数时,停止输出所述第一级别的日志。
3.根据权利要求2所述的方法,其特征在于,所述输出在生成并输出的所述第二级别的日志的条数达到所述第一预设条数后生成的所述第一级别的日志,包括:
输出在生成并输出的所述第二级别的日志的条数达到所述第一预设条数后生成并存储的所述第一级别的日志。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述第一级别的日志存储在存储介质中,所述存储介质中能够存储第三预设条数的日志;
所述生成并存储所述软件的第一级别的日志,包括:
当生成一个所述级别的日志时,
若所述存储介质中已存储的日志的条数为所述第三预设条数,则删除所述存储介质中存储的第一日志,并存储所述第一级别的日志,所述第一日志为按照存储至所述存储介质的时间的先后顺序排在第一位的日志;
若所述存储介质中已存储的日志的条数小于所述第三预设条数,则直接存储生成的所述第一级别的日志。
5.根据权利要求1-3中任一项所述的方法,其特征在于,所述第二级别为error级别、waning级别和info级别中的任一级别;
所述第一级别为waning级别、info级别和debug级别中低于所述第二级别的任一级别。
6.根据权利要求5所述的方法,其特征在于,所述第二级别为所述error级别,所述第一级别为所述debug级别。
7.一种日志的输出装置,其特征在于,包括:
日志生成模块,用于在软件运行过程中,生成第一级别的日志;
日志存储模块,用于存储所述第一级别的日志;
所述日志生成模块,还用于当所述软件出现故障时,生成第二级别的日志,所述第二级别高于所述第一级别;
日志输出模块,用于输出所述第二级别的日志;
日志监听模块,用于监听生成并输出的所述第二级别的日志的条数;
所述日志输出模块,还用于当生成并输出的所述第二级别的日志的条数达到第一预设条数时,按照存储的先后顺序读取并输出已存储的所述第一级别的日志。
8.根据权利要求7所述的装置,其特征在于,所述日志输出模块,还用于在按照存储的先后顺序读取并输出已存储的所述第一级别的日志之后,输出在生成并输出的所述第二级别的日志的条数达到所述第一预设条数后生成的所述第一级别的日志;
所述日志监听模块,还用于监听生成并输出的所述第一级别的日志的条数;
所述日志输出模块,还用于当生成并输出的所述第一级别的日志的条数达到第二预设条数时,停止输出所述第一级别的日志。
9.根据权利要求8所述的装置,其特征在于,所述日志输出模块,还用于输出在生成并输出的所述第二级别的日志的条数达到所述第一预设条数后生成并存储的所述第一级别的日志。
10.根据权利要求7-9中任一项所述的装置,其特征在于,所述第一级别的日志存储在存储介质中,所述存储介质中能够存储第三预设条数的日志;
所述日志存储模块,具体用于当生成一个所述第一级别的日志时,
若所述存储介质中已存储的日志的条数为所述第三预设条数,则删除所述存储介质中存储的第一日志,并存储生成的所述第一级别的日志,所述第一日志为按照存储至所述存储介质的时间的先后顺序排在第一位的日志;
若所述存储介质中已存储的日志的条数小于所述第三预设条数,则直接存储生成的所述第一级别的日志。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410699757.4A CN105700996A (zh) | 2014-11-27 | 2014-11-27 | 一种日志的输出方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410699757.4A CN105700996A (zh) | 2014-11-27 | 2014-11-27 | 一种日志的输出方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105700996A true CN105700996A (zh) | 2016-06-22 |
Family
ID=56295429
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410699757.4A Pending CN105700996A (zh) | 2014-11-27 | 2014-11-27 | 一种日志的输出方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105700996A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106776303A (zh) * | 2016-12-02 | 2017-05-31 | 北京奇虎科技有限公司 | 调试信息的处理方法及装置 |
CN109165147A (zh) * | 2018-08-10 | 2019-01-08 | 北京奇艺世纪科技有限公司 | 日志打印控制方法、装置、系统、后端服务器及前端设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090235112A1 (en) * | 2008-03-14 | 2009-09-17 | Fujitsu Limited | Information processing apparatus, information processing apparatus control method and control program |
CN102158349A (zh) * | 2011-02-09 | 2011-08-17 | 中兴通讯股份有限公司 | 一种日志管理装置及方法 |
CN102594581A (zh) * | 2011-01-12 | 2012-07-18 | 鼎桥通信技术有限公司 | 一种日志数据的记录方法 |
CN103152391A (zh) * | 2013-01-31 | 2013-06-12 | 杭州华三通信技术有限公司 | 一种日志输出方法和装置 |
CN103268277A (zh) * | 2013-04-23 | 2013-08-28 | 青岛海信传媒网络技术有限公司 | 一种输出日志信息的方法及系统 |
CN103368756A (zh) * | 2012-03-29 | 2013-10-23 | 福建星网视易信息系统有限公司 | 用于监控嵌入式系统运行的日志的管理系统 |
-
2014
- 2014-11-27 CN CN201410699757.4A patent/CN105700996A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090235112A1 (en) * | 2008-03-14 | 2009-09-17 | Fujitsu Limited | Information processing apparatus, information processing apparatus control method and control program |
CN102594581A (zh) * | 2011-01-12 | 2012-07-18 | 鼎桥通信技术有限公司 | 一种日志数据的记录方法 |
CN102158349A (zh) * | 2011-02-09 | 2011-08-17 | 中兴通讯股份有限公司 | 一种日志管理装置及方法 |
CN103368756A (zh) * | 2012-03-29 | 2013-10-23 | 福建星网视易信息系统有限公司 | 用于监控嵌入式系统运行的日志的管理系统 |
CN103152391A (zh) * | 2013-01-31 | 2013-06-12 | 杭州华三通信技术有限公司 | 一种日志输出方法和装置 |
CN103268277A (zh) * | 2013-04-23 | 2013-08-28 | 青岛海信传媒网络技术有限公司 | 一种输出日志信息的方法及系统 |
Non-Patent Citations (1)
Title |
---|
"《电气控制与节电系统设计 最新版》" * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106776303A (zh) * | 2016-12-02 | 2017-05-31 | 北京奇虎科技有限公司 | 调试信息的处理方法及装置 |
CN109165147A (zh) * | 2018-08-10 | 2019-01-08 | 北京奇艺世纪科技有限公司 | 日志打印控制方法、装置、系统、后端服务器及前端设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102081573B (zh) | 用于记录设备重启原因的装置及方法 | |
CN104518924A (zh) | 自动化测试及结果比对方法及系统 | |
CN104246521A (zh) | 智能变电站继电保护功能自动测试的方法及装置 | |
CN101819550A (zh) | 串行连接小型计算机系统接口测试系统及方法 | |
CN104320308A (zh) | 一种服务器异常检测的方法及装置 | |
CN106549807A (zh) | 一种日志的分类上报方法及系统 | |
CN105760241A (zh) | 一种内存数据导出方法和系统 | |
CN115981984A (zh) | 一种设备故障检测方法、装置、设备及存储介质 | |
CN111984487A (zh) | 一种离机记录故障硬件位置的方法及装置 | |
CN109918221B (zh) | 一种硬盘报错解析方法、系统、终端及存储介质 | |
CN102375775B (zh) | 一种具有检测系统不可恢复错误指示信号的计算机系统 | |
CN105573872A (zh) | 数据存储系统的硬盘维护方法和装置 | |
CN105700996A (zh) | 一种日志的输出方法及装置 | |
CN103701657A (zh) | 用于不间断运行的数据处理系统的异常监控及处理装置和方法 | |
CN104794013A (zh) | 定位系统运行状态、建立系统运行状态模型的方法及装置 | |
CN102541705B (zh) | 计算机的测试方法和工装板 | |
CN105610643A (zh) | 一种云计算监控方法及装置 | |
CN105607974A (zh) | 高可靠性多核处理系统 | |
CN103163402B (zh) | 基于二次回路的继电保护设备状态监测装置及监测方法 | |
CN112069023A (zh) | 一种存储链路监控系统及方法 | |
CN103995759A (zh) | 基于核内外协同的高可用计算机系统故障处理方法及装置 | |
CN106681852A (zh) | 一种浏览器兼容性的调整方法及装置 | |
CN106534262A (zh) | 一种网络信息系统故障的切换方法 | |
CN116125853A (zh) | 集成电路的安全控制方法、装置、存储介质及电子设备 | |
US20230025081A1 (en) | Model training method, failure determining method, electronic device, and program product |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into 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: 20160622 |