CN110309035A - 日志记录方法、装置、电子设备及存储介质 - Google Patents
日志记录方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN110309035A CN110309035A CN201810231992.7A CN201810231992A CN110309035A CN 110309035 A CN110309035 A CN 110309035A CN 201810231992 A CN201810231992 A CN 201810231992A CN 110309035 A CN110309035 A CN 110309035A
- Authority
- CN
- China
- Prior art keywords
- functional module
- journal file
- data content
- recording method
- module
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提出一种日志记录方法、装置、电子设备及存储介质,其中,方法包括:确定预先配置的记录项目,运行软件的各功能模块,在各功能模块运行过程中获取记录项目的数据内容,将各功能模块运行过程中获取到的数据内容,记录到各功能模块对应的日志文件中。该方法通过预先配置记录项目,使各个功能模块对应的日志文件的格式统一,同时各个功能模块对应不同的日志文件,从而便于后期查找和故障分析,以及快速定位问题。
Description
技术领域
本发明涉及信息维护技术领域,尤其涉及一种日志记录方法、装置、电子设备及存储介质。
背景技术
日志是一种可以追踪软件运行时所发生事件的方法,例如软件开发人员可以向代码中调用日志记录相关的方法来表明发生了某些事情。
目前,日志记录方法主要采用打印输出(print)操作,将需要记录的信息直接打印输出,从而作为日志进行保存。但是,这种日志记录方法生成的日志,没有统一的格式,从而会造成日志格式的混乱,不便于后期查找和故障分析。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
本发明提出一种日志记录方法,通过预先配置记录项目,使各个功能模块对应的日志文件的格式统一,同时各个功能模块对应不同的日志文件,从而便于后期查找和故障分析,以及快速定位问题。
本发明一方面实施例提出了一种日志记录方法,包括:
确定预先配置的记录项目;
运行软件的各功能模块;
在各功能模块运行过程中获取所述记录项目的数据内容;
将各功能模块运行过程中获取到的数据内容,记录到各功能模块对应的日志文件中。
作为本发明一方面实施例一种可能的实现方式,所述将各功能模块运行过程中获取到的数据内容,记录到各功能模块对应的日志文件中,包括:
将各功能模块运行过程中获取到的所述数据内容,以结构化方式存储至各功能模块对应的日志文件中;所述日志文件中包括多列,每一列对应一个记录项目,用于存储对应记录项目的数据内容。
作为本发明一方面实施例一种可能的实现方式,所述将各功能模块运行过程中获取到的数据内容,记录到各功能模块对应的日志文件中,包括:
针对每一个功能模块,在将所述功能模块运行过程中获取到的数据内容记录到对应的日志文件中时,若对应的日志文件的数据量大于预设数据量上限,停止将所述数据内容记录至达到预设数据量上限的日志文件中;
新建所述功能模块对应的日志文件;
将所述功能模块未记录的数据内容,记录到新建的日志文件中。
作为本发明一方面实施例一种可能的实现方式,所述新建所述功能模块对应的日志文件之后,还包括:
查询预设的个数上限;
针对每一个功能模块,若所述功能模块对应的日志文件的个数大于所述个数上限,根据所述功能模块对应日志文件的生成顺序,删除所述功能模块对应的部分日志文件。
作为本发明一方面实施例一种可能的实现方式,所述记录项目,用于指示运行状态,所述记录项目包括:
调用服务器端口的用时、接口调用得到的返回数据、获取到数据内容的线程、获取到数据内容的时刻和故障点位置中的一个或多个组合。
作为本发明一方面实施例一种可能的实现方式,所述将各功能模块运行过程中获取到的数据内容,记录到对应的日志文件中之后,还包括:
确定待分析的目标功能模块;
读取所述目标功能模块对应的日志文件;
根据读取到的日志文件进行日志分析。
作为本发明一方面实施例一种可能的实现方式,所述确定预先配置的记录项目之前,还包括:
根据日志分析所需的记录项目,对已配置的记录项目进行调整。
本发明实施例的日志记录方法,通过确定预先配置的记录项目,运行软件的各功能模块,在各功能模块运行过程中获取记录项目的数据内容,将各功能模块运行过程中获取到的数据内容,记录到各功能模块对应的日志文件中。本实施例中,通过预先配置记录项目,使各个功能模块对应的日志文件的格式统一,同时各个功能模块对应不同的日志文件,从而便于后期查找和故障分析,以及快速定位问题。
本发明又一方面实施例提出了一种日志记录装置,包括:
确定模块,用于确定预先配置的记录项目;
运行模块,用于运行软件的各功能模块;
获取模块,用于在各功能模块运行过程中获取所述记录项目的数据内容;
记录模块,用于将各功能模块运行过程中获取到的数据内容,记录到各功能模块对应的日志文件中。
作为本发明又一方面实施例一种可能的实现方式,所述记录模块还用于:
将各功能模块运行过程中获取到的所述数据内容,以结构化方式存储至各功能模块对应的日志文件中;所述日志文件中包括多列,每一列对应一个记录项目,用于存储对应记录项目的数据内容。
作为本发明又一方面实施例一种可能的实现方式,所述记录模块还用于:
针对每一个功能模块,在将所述功能模块运行过程中获取到的数据内容记录到对应的日志文件中时,若对应的日志文件的数据量大于预设数据量上限,停止将所述数据内容记录至达到预设数据量上限的日志文件中;
新建所述功能模块对应的日志文件;
将所述功能模块未记录的数据内容,记录到新建的日志文件中。
作为本发明又一方面实施例一种可能的实现方式,该装置还包括:
查询模块,用于在新建所述功能模块对应的日志文件之后,查询预设的个数上限;
删除模块,用于针对每一个功能模块,若所述功能模块对应的日志文件的个数大于所述个数上限,根据所述功能模块对应日志文件的生成顺序,删除所述功能模块对应的部分日志文件。
作为本发明又一方面实施例一种可能的实现方式,所述记录项目,用于指示运行状态,所述记录项目包括:
调用服务器端口的用时、接口调用得到的返回数据、获取到数据内容的线程、获取到数据内容的时刻和故障点位置中的一个或多个组合。
作为本发明又一方面实施例一种可能的实现方式,该装置还包括:
选取模块,用于在将各功能模块运行过程中获取到的数据内容,记录到对应的日志文件中之后,确定待分析的目标功能模块;
读取模块,用于读取所述目标功能模块对应的日志文件;
分析模块,用于根据读取到的日志文件进行日志分析。
作为本发明又一方面实施例一种可能的实现方式,该装置还包括:
调整模块,用于在所述确定预先配置的记录项目之前,根据日志分析所需的记录项目,对已配置的记录项目进行调整。
本发明实施例的日志记录装置,通过确定预先配置的记录项目,运行软件的各功能模块,在各功能模块运行过程中获取记录项目的数据内容,将各功能模块运行过程中获取到的数据内容,记录到各功能模块对应的日志文件中。本实施例中,通过预先配置记录项目,使各个功能模块对应的日志文件的格式统一,同时各个功能模块对应不同的日志文件,从而便于后期查找和故障分析,以及快速定位问题。
本发明又一方面实施例提出了一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如上述一方面实施例所述的日志记录方法。
本发明又一方面实施例提出了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述实施例所述的日志记录方法。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明实施例提供的一种日志记录方法的流程示意图;
图2为本发明实施例提供的一种功能模块与日志文件的对应关系示意图;
图3为本发明实施例提供的另一种日志记录方法的流程示意图;
图4为本发明实施例提供的又一种日志记录方法的流程示意图;
图5为本发明实施例提供的再一种日志记录方法的流程示意图;
图6为本发明实施例提供的一种日志记录装置的结构示意图;
图7为本发明电子设备一个实施例的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
下面参考附图描述本发明实施例的日志记录方法、装置、电子设备及存储介质。
目前,日志记录方法主要采用print操作,将需要记录的日志信息直接打印输出,从而作为日志进行保存。但是,这种日志记录方法生成的日志,没有统一的格式,从而会造成日志格式的混乱,不便于后期查找和故障分析。
针对这一问题,本发明实施例提出一种日志记录方法,通过预先配置记录项目,使各个功能模块对应的日志文件的格式统一,同时各个功能模块对应不同的日志文件,从而便于后期查找和故障分析,以及快速定位问题。
图1为本发明实施例提供的一种日志记录方法的流程示意图。
如图1所示,该日志记录方法包括:
步骤101,确定预先配置的记录项目。
现有技术中,采用print操作将需要记录的日志信息直接打印输出,这种日志记录方式格式不统一,不便于查找和故障分析。
本实施例中,在记录软件的日志时,可预设配置记录项目。其中,记录项目指示运行状态,可以是调用服务器端口的用时、接口调用得到的返回数据、获取到数据内容的线程、获取到数据内容的时刻、故障点位置等中的一个或多个组合。其中,故障点位置指软件的程序文件中出现故障的行。
作为一种可能的应用场景,软件为金融重构类软件,软件包括A功能模块和B功能模块,其中,A功能模块可以调用服务器M的接口发金币,B功能模块可调用服务器N的接口提现。由此,在对金融重构类软件进行日志记录时,记录项目可包括调用服务器端口的用时,具体地,A功能模块对应的日志文件的记录项目包括调用服务器M的接口用时,B功能模块对应日志文件的记录项目包括调用服务器N的接口用时。
本实施例中,记录项目中包括调用服务器端口的用时,从而可以确定各功能模块调用的不同服务器端口时的响应速度,便于快速统计。
本实施例中,通过确定预先配置的记录项目,可以使日志文件中的内容具有相同的格式。也就是说,该软件的日志记录具有统一的格式,可便于后续的阅读、分析。
步骤102,运行软件的各功能模块。
在确定预先配置的记录项目后,运行软件的各个功能模块,以记录软件在运行过程中产生的日志。
步骤103,在各功能模块运行过程中获取记录项目的数据内容。
本实施例中,为了便于后期查找软件的日志,在各个功能模块运行过程中,获取各个功能模块记录项目的数据内容。
为了便于后期查找,本实施例中,获取每个功能模块在运行过程中的记录项目的数据内容,可在查找问题时,迅速定位问题所在的功能模块和所在的行。
步骤104,将各功能模块运行过程中获取到的数据内容,记录到各功能模块对应的日志文件中。
本实施例中,可预先为每个功能模块建立不同的日志文件。在获取各个功能模块在运行过程中的记录项目的数据内容后,针对每个功能模块,将记录项目中每一个记录项目的数据内容,对应存储到功能模块对应的日志文件中。
其中,每个功能模块对应的日志文件可以是一个也可以是多个,日志文件的数量可以预先设置。
如图2所示,软件a有三个功能模块分别是功能模块1、功能模块2和功能模块3,其中,功能模块1对应日志文件1,功能模块2对应两个日志文件,分别是日志文件2和日志文件3,功能模块3也对应两个日志文件,分别是日志文件4和日志文件5。需要说明的是,图2所示的软件包括的功能模块个数,和功能模块对应的日志文件的个数仅为示例。
本实施例中,各个功能模块对应不同的日志文件,将获取的每个功能模块运行过程中的记录项目的数据内容,记录到功能模块对应的日志文件中,可以便于后期查找,快速定位问题。
在上述实施例的基础上,对于步骤104,本实施例提供的一种可能的实现方式,将数据内容以结构化方式存储到日志文件中。
具体地,按照记录项目,可在日志文件中划分多列,使每一列对应一个记录项目。在将数据内容记录到日志文件中时,针对每个功能模块,可以结构化的方式,将功能模块运行过程中获取到的数据内容,按照记录项目将数据内容存储到日志文件中与记录项目对应的列中。
在具体实现时,可以通过函数将数据内容记录到日志文件中。例如,Python是一种面向对象的解释型计算机程序设计语言,Python中的logging模块用于日志记录,可以通过logging模块中的logging.basicConfig()函数对记录的记录项目进行配置。具体地,可以在logging.basicConfig()函数中配置日志等级、日志格式、日志文件名称,通过logging.basicConfig()函数可以将记录项目的数据内容记录到配置的日志文件中。
由于在功能模块运行的过程中,可能会产生记录项目的大量的数据内容,为了便于查找日志文件的数据量不能无限大。在将数据内容记录到各个功能模块对应的日志文件中时,在日志文件的数据量达到上限时,新建日志文件,以存储未记录的数据内容。图3为本发明实施例提供的另一种日志记录方法的流程示意图。
如图3所示,该日志记录方法包括:
步骤201,确定预先配置的记录项目。
步骤202,运行软件的各功能模块。
步骤203,在各功能模块运行过程中获取记录项目的数据内容。
本实施例中,步骤201-步骤203与上述实施例中步骤101-步骤103中记载的内容类似,故在此不再赘述。
步骤204,针对每一个功能模块,在将功能模块运行过程中获取到的数据内容记录到对应的日志文件中时,若对应的日志文件的数据量大于预设数据量上限,停止将数据内容记录至达到预设数据量上限的日志文件中。
本实施例中,可利用上述以结构化方法,将功能模块运行过程中获取到的数据内容记录到对应的日志文件中。
为了避免日志文件记录过多的日志,不便于后期查找,可为日志文件设置预设数据量上限。进一步地,为了避免由于日志文件达到预设数据量上限,导致数据内容不能被全部被记录,针对每一个功能模块,在将功能模块运行过程中获取到的数据内容记录到对应的日志文件中时,可实时判断日志文件的数据量是否大于预设数据量上限。具体地,可在将一条数据内容记录到日志文件之前进行判断,也可在将一条数据内容记录到日志文件之后进行判断。
若与功能模块对应的日志文件的数据量小于预设数据量上限,可继续将数据内容记录到日志文件中。若与功能模块对应的日志文件的数据量大于预设数据量上限,则停止将数据内容记录至达到预设数据量上限的日志文件中。
例如,某功能模块对应的日志文件的预设数据量上限为3M,在日志文件的数据量大于3M时,停止将数据内容记录至日志文件中。
步骤205,新建功能模块对应的日志文件。
本实施例中,为了避免未被记录的数据内容丢失,在日志文件的数据量大于预设数据量上限时,可为功能模块新建一个或多个日志文件,以便于记录未被记录的数据内容。
步骤206,将功能模块未记录的数据内容,记录到新建的日志文件中。
在为功能模块新建对应的日志文件后,可将功能模块未被记录的数据内容,记录到新建的日志文件中。
当新建的日志文件为多个时,可按照日志文件生成时间的早晚顺序,将未记录的数据内容记录到新建的日志文件中,并在前一个日志文件的数据量达到预设数据量的上限时,将未被记录的数据内容记录到下一个新建的日志文件中。
为了避免新建的日志文件中的数据量达到预设数据量上限,可针对新建的日志文件继续采用上述方法进行判断。
本发明实施例的日志记录方法,针对每一个功能模块,通过将功能模块对应的日志文件的数据量与预设数据量上限进行比较,以确定是否大于预设数据量上限,并在日志文件的数据量大于预设数据量上限时,新建日志文件,以将未记录的数据内容,存储到新建的日志文件中,避免数据内容丢失,不仅保证了功能模块运行过程中记录的日志的完整性,而且便于后期查找与故障分析。
在上述实施例的基础上,还可根据需要设置功能模块对应的日志文件的个数,在新建功能模块对应的日志文件之后,判断日志文件是否达个数上限。图4为本发明实施例提供的又一种日志记录方法的流程示意图。
如图4所示,该日志记录方法还可包括:
步骤207,查询预设的个数上限。
本实施例中,在为功能模块新建对应的日志文件后,查询预设的日志文件的个数上限。
步骤208,针对每一个功能模块,若功能模块对应的日志文件的个数大于个数上限,根据功能模块对应日志文件的生成顺序,删除功能模块对应的部分日志文件。
针对每一个功能模块,将功能模块对应的日志文件的个数与个数上限进行比较。若功能模块对应的日志文件的个数大于个数上限,则根据功能模块对应日志文件的生成顺序,删除功能模块对应的部分日志文件。
例如,假设某功能模块对应的日志文件的个数上限为2个,功能模块对应的日志文件A1、A2的数据量均达到了上限10M,其中,A1的生成时间早于A2。在新建日志文件A3后,可将日志文件A2删除。
本发明实施例的日志记录方法,通过在新建日志文件后,判断功能模块对应的日志文件是否达到上限个数,在达到上限个数时,可按照日志文件的生成顺序,删除功能模块对应的部分日志文件,从而可以节省空间。
在上述实施例的基础上,在将数据内容记录到对应的日志文件中之后,可对功能模块的日志文件进行分析,以方便用户了解软件、软件的运行情况等。图5为本发明实施例提供的再一种日志记录方法的流程示意图。
如图5所示,该日志记录方法还包括:
步骤105,确定待分析的目标功能模块。
在将获取的数据内容,记录到与各个功能模块对应的日志文件后,可以得到各个功能模块在运行过程中的日志文件。
当需要对软件的某个功能进行分析时,可以将功能对应的功能模块,以及相关联的功能模块,确定为待分析的目标功能模块。如果要了解整个软件的运行情况,可以将软件的所有功能模块作为待分析的目标功能模块。在实际应用中,可根据需要选取待分析的目标功能模块。
步骤106,读取目标功能模块对应的日志文件。
在确定待分析的目标功能模块后,可读取目标功能模块对应的所有日志文件,也可读取目标功能模块对应的预设时长内的日志文件。
步骤107,根据读取到的日志文件进行日志分析。
在读取到日志文件后,可对日志文件中的日志进行分析,以便于了解软件的性能、用户的喜好等,进而有助于软件性能更新。
由于需求不同,在对软件进行日志记录时,不同的时间段需要记录的记录项目可能不相同。在上述实施例的基础上,本发明实施例中,在确定预先配置的记录项目之前,还可对记录项目进行调整。
具体地,可根据日志分析所需的记录项目,确定需要配置的记录项目,然后,对已配置的记录项目进行调整,使调整后的记录项目为日志分析所需的记录项目。
其中,调整可以是在已配置记录项目的基础上增加记录项目,即对日志格式进行横向扩展,也可以是已配置记录项目的基础上减少记录项目,当然也可以是更改记录项目。在具体实现时,可根据需要对记录项目进行调整。
本实施例中,通过根据日志分析需要对已配置的记录项目进行调整,如增加记录项目、减少日志记录项目等,能够满足个性化需求。
为了实现上述实施例,本发明实施例还提出一种日志记录装置。图6为本发明实施例提供的一种日志记录装置的结构示意图。
如图6所示,该日志记录装置包括:确定模块310、运行模块320、获取模块330、记录模块340。
确定模块310用于确定预先配置的记录项目。
运行模块320用于运行软件的各功能模块。
获取模块330用于在各功能模块运行过程中获取记录项目的数据内容。
记录模块340用于将各功能模块运行过程中获取到的数据内容,记录到各功能模块对应的日志文件中。
作为本实施例一种可能的实现方式,记录模块340还用于:
将各功能模块运行过程中获取到的数据内容,以结构化方式存储至各功能模块对应的日志文件中;日志文件中包括多列,每一列对应一个记录项目,用于存储对应记录项目的数据内容。
作为本实施例一种可能的实现方式,记录模块340还用于:
针对每一个功能模块,在将功能模块运行过程中获取到的数据内容记录到对应的日志文件中时,若对应的日志文件的数据量大于预设数据量上限,停止将数据内容记录至达到预设数据量上限的日志文件中;
新建功能模块对应的日志文件;
将功能模块未记录的数据内容,记录到新建的日志文件中。
作为本实施例一种可能的实现方式,该装置还包括:
查询模块,用于在新建功能模块对应的日志文件之后,查询预设的个数上限;
删除模块,用于针对每一个功能模块,若功能模块对应的日志文件的个数大于个数上限,根据功能模块对应日志文件的生成顺序,删除功能模块对应的部分日志文件。
作为本实施例一种可能的实现方式,记录项目用于指示运行状态,记录项目包括:调用服务器端口的用时、接口调用得到的返回数据、获取到数据内容的线程、获取到数据内容的时刻和故障点位置中的一个或多个组合。
作为本实施例一种可能的实现方式,该装置还包括:
选取模块,用于在将各功能模块运行过程中获取到的数据内容,记录到对应的日志文件中之后,确定待分析的目标功能模块;
读取模块,用于读取目标功能模块对应的日志文件;
分析模块,用于根据读取到的日志文件进行日志分析。
作为本实施例一种可能的实现方式,该装置还包括:
调整模块,用于在确定预先配置的记录项目之前,根据日志分析所需的记录项目,对已配置的记录项目进行调整。
需要说明的是,前述对日志记录方法实施例的解释说明,也适用于该实施例的日志记录装置,故在此不再赘述。
本发明实施例的日志记录装置,通过确定预先配置的记录项目,运行软件的各功能模块,在各功能模块运行过程中获取记录项目的数据内容,将各功能模块运行过程中获取到的数据内容,记录到各功能模块对应的日志文件中。本实施例中,通过预先配置记录项目,使各个功能模块对应的日志文件的格式统一,同时各个功能模块对应不同的日志文件,从而便于后期查找和故障分析,以及快速定位问题。
为了实现上述实施例,本发明实施例提出一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时,实现如上述实施例所述的日志记录方法。
图7为本发明电子设备一个实施例的结构示意图,如图7所示,该电子设备可包括:壳体510、处理器520、存储器530、电路板540和电源电路550,其中,电路板540安置在壳体510围成的空间内部,处理器520和存储器530设置在电路板540上;电源电路550,用于为上述电子设备的各个电路或器件供电;存储器530用于存储可执行程序代码;处理器520通过读取存储器530中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行上述实施例所述的日志记录方法。
为了实现上述实施例,本发明实施例提出一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述实施例所述的日志记录方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种日志记录方法,其特征在于,所述方法包括以下步骤:
确定预先配置的记录项目;
运行软件的各功能模块;
在各功能模块运行过程中获取所述记录项目的数据内容;
将各功能模块运行过程中获取到的数据内容,记录到各功能模块对应的日志文件中。
2.根据权利要求1所述的日志记录方法,其特征在于,所述将各功能模块运行过程中获取到的数据内容,记录到各功能模块对应的日志文件中,包括:
将各功能模块运行过程中获取到的所述数据内容,以结构化方式存储至各功能模块对应的日志文件中;所述日志文件中包括多列,每一列对应一个记录项目,用于存储对应记录项目的数据内容。
3.根据权利要求1所述的日志记录方法,其特征在于,所述将各功能模块运行过程中获取到的数据内容,记录到各功能模块对应的日志文件中,包括:
针对每一个功能模块,在将所述功能模块运行过程中获取到的数据内容记录到对应的日志文件中时,若对应的日志文件的数据量大于预设数据量上限,停止将所述数据内容记录至达到预设数据量上限的日志文件中;
新建所述功能模块对应的日志文件;
将所述功能模块未记录的数据内容,记录到新建的日志文件中。
4.根据权利要求3所述的日志记录方法,其特征在于,所述新建所述功能模块对应的日志文件之后,还包括:
查询预设的个数上限;
针对每一个功能模块,若所述功能模块对应的日志文件的个数大于所述个数上限,根据所述功能模块对应日志文件的生成顺序,删除所述功能模块对应的部分日志文件。
5.根据权利要求1-4任一项所述的日志记录方法,其特征在于,所述记录项目,用于指示运行状态,所述记录项目包括:
调用服务器端口的用时、接口调用得到的返回数据、获取到数据内容的线程、获取到数据内容的时刻和故障点位置中的一个或多个组合。
6.根据权利要求1-4任一项所述的日志记录方法,其特征在于,所述将各功能模块运行过程中获取到的数据内容,记录到对应的日志文件中之后,还包括:
确定待分析的目标功能模块;
读取所述目标功能模块对应的日志文件;
根据读取到的日志文件进行日志分析。
7.根据权利要求1-4任一项所述的日志记录方法,其特征在于,所述确定预先配置的记录项目之前,还包括:
根据日志分析所需的记录项目,对已配置的记录项目进行调整。
8.一种日志记录装置,其特征在于,包括:
确定模块,用于确定预先配置的记录项目;
运行模块,用于运行软件的各功能模块;
获取模块,用于在各功能模块运行过程中获取所述记录项目的数据内容;
记录模块,用于将各功能模块运行过程中获取到的数据内容,记录到各功能模块对应的日志文件中。
9.一种电子设备,其特征在于,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如权利要求1-7中任一所述的日志记录方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的日志记录方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810231992.7A CN110309035A (zh) | 2018-03-20 | 2018-03-20 | 日志记录方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810231992.7A CN110309035A (zh) | 2018-03-20 | 2018-03-20 | 日志记录方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110309035A true CN110309035A (zh) | 2019-10-08 |
Family
ID=68073541
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810231992.7A Pending CN110309035A (zh) | 2018-03-20 | 2018-03-20 | 日志记录方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110309035A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111176968A (zh) * | 2019-12-30 | 2020-05-19 | 东软集团股份有限公司 | 一种生成日志文件的方法、装置及相关产品 |
CN111522952A (zh) * | 2020-04-26 | 2020-08-11 | 厦门美图之家科技有限公司 | 日志数据处理方法、装置、设备及存储介质 |
CN111813757A (zh) * | 2020-06-30 | 2020-10-23 | 烽火通信科技股份有限公司 | 特征信息存储方法、装置、设备及可读存储介质 |
CN111858494A (zh) * | 2020-07-23 | 2020-10-30 | 珠海豹趣科技有限公司 | 文件获取方法、装置、存储介质及电子设备 |
CN112433873A (zh) * | 2020-10-31 | 2021-03-02 | 中国航空工业集团公司洛阳电光设备研究所 | 一种嵌入式机载记录设备日志记录及分析系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103823743A (zh) * | 2012-11-19 | 2014-05-28 | 北京百度网讯科技有限公司 | 软件系统的监控方法和设备 |
CN104376043A (zh) * | 2014-10-14 | 2015-02-25 | 深圳怡化电脑股份有限公司 | 日志记录与显示方法及装置 |
CN105608382A (zh) * | 2015-12-22 | 2016-05-25 | 北京奇虎科技有限公司 | 软件维护方法与软件问题判定方法以及其相应的装置 |
CN106202235A (zh) * | 2016-06-28 | 2016-12-07 | 微梦创科网络科技(中国)有限公司 | 一种数据处理方法及装置 |
CN106294132A (zh) * | 2016-07-29 | 2017-01-04 | 深圳创维-Rgb电子有限公司 | 一种管理日志的方法及装置 |
CN106326082A (zh) * | 2015-06-16 | 2017-01-11 | 中兴通讯股份有限公司 | 网络系统中记录日志的方法和装置 |
-
2018
- 2018-03-20 CN CN201810231992.7A patent/CN110309035A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103823743A (zh) * | 2012-11-19 | 2014-05-28 | 北京百度网讯科技有限公司 | 软件系统的监控方法和设备 |
CN104376043A (zh) * | 2014-10-14 | 2015-02-25 | 深圳怡化电脑股份有限公司 | 日志记录与显示方法及装置 |
CN106326082A (zh) * | 2015-06-16 | 2017-01-11 | 中兴通讯股份有限公司 | 网络系统中记录日志的方法和装置 |
CN105608382A (zh) * | 2015-12-22 | 2016-05-25 | 北京奇虎科技有限公司 | 软件维护方法与软件问题判定方法以及其相应的装置 |
CN106202235A (zh) * | 2016-06-28 | 2016-12-07 | 微梦创科网络科技(中国)有限公司 | 一种数据处理方法及装置 |
CN106294132A (zh) * | 2016-07-29 | 2017-01-04 | 深圳创维-Rgb电子有限公司 | 一种管理日志的方法及装置 |
Non-Patent Citations (1)
Title |
---|
践道者: "logging模块学习笔记:basicConfig配置文件", pages 1, Retrieved from the Internet <URL:《https://www.cnblogs.com/bjdxy/archive/2013/04/12/3016820.html》> * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111176968A (zh) * | 2019-12-30 | 2020-05-19 | 东软集团股份有限公司 | 一种生成日志文件的方法、装置及相关产品 |
CN111176968B (zh) * | 2019-12-30 | 2023-04-25 | 东软集团股份有限公司 | 一种生成日志文件的方法、装置及相关产品 |
CN111522952A (zh) * | 2020-04-26 | 2020-08-11 | 厦门美图之家科技有限公司 | 日志数据处理方法、装置、设备及存储介质 |
CN111813757A (zh) * | 2020-06-30 | 2020-10-23 | 烽火通信科技股份有限公司 | 特征信息存储方法、装置、设备及可读存储介质 |
CN111813757B (zh) * | 2020-06-30 | 2023-02-24 | 烽火通信科技股份有限公司 | 特征信息存储方法、装置、设备及可读存储介质 |
CN111858494A (zh) * | 2020-07-23 | 2020-10-30 | 珠海豹趣科技有限公司 | 文件获取方法、装置、存储介质及电子设备 |
CN111858494B (zh) * | 2020-07-23 | 2024-05-17 | 珠海豹趣科技有限公司 | 文件获取方法、装置、存储介质及电子设备 |
CN112433873A (zh) * | 2020-10-31 | 2021-03-02 | 中国航空工业集团公司洛阳电光设备研究所 | 一种嵌入式机载记录设备日志记录及分析系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110309035A (zh) | 日志记录方法、装置、电子设备及存储介质 | |
CN105279278B (zh) | 文件的搜索方法及装置 | |
CN107315772B (zh) | 基于深度学习的问题匹配方法以及装置 | |
CN109902248A (zh) | 页面显示方法、装置、计算机设备和可读存储介质 | |
CN104809247B (zh) | 数据库连接的分配和回收方法 | |
CN110019247A (zh) | 数据存储以及查询方法、装置和监控系统 | |
CN107045531A (zh) | 一种优化hdfs小文件存取的系统及方法 | |
CN110049266A (zh) | 视频数据发布方法、装置、电子设备和存储介质 | |
CN108847977A (zh) | 一种业务数据的监控方法、存储介质和服务器 | |
CN109726209A (zh) | 日志聚合方法及装置 | |
CN110019244A (zh) | 数据处理方法、装置和计算机可读存储介质 | |
CN110187760A (zh) | 智能交互方法和装置 | |
CN109840159A (zh) | 异常处理方案管理方法、装置、计算机装置及存储介质 | |
CN110069739A (zh) | 页面预加载方法及装置 | |
CN109710439A (zh) | 故障处理方法和装置 | |
CN109327680A (zh) | 多路视频数据并发存储及读取方法 | |
CN109299352A (zh) | 搜索引擎中网站数据的更新方法、装置和搜索引擎 | |
CN106055350B (zh) | 配置文件的升级处理方法以及装置 | |
CN107819687A (zh) | 固定路由方法、装置及其设备 | |
CN110457114A (zh) | 应用集群部署方法及装置 | |
CN110308895A (zh) | 项目开发平台及应用项目开发平台所进行的项目开发方法 | |
CN104182493B (zh) | 一种数据同步方法及装置、终端 | |
JP2002049637A5 (zh) | ||
CN110290201A (zh) | 图片获取方法、移动终端、服务器以及存储介质 | |
CN109446024A (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 |