一种日志记录的更新方法及装置制造方法及图纸

技术编号:15542288 阅读:130 留言:0更新日期:2017-06-05 11:18
本发明专利技术实施例公开了一种日志记录的更新方法及装置,所述方法包括:当目标程序运行到日志标注时,根据所述日志标注对应的预设日志格式获取日志内容;将所述日志内容添加到更新列表中,返回执行目标程序;将所述更新列表中的日志内容更新到日志数据库。通过本发明专利技术的技术方案,能够实现简化开发操作,使得当日志记录发生错误时不会影响程序正常业务逻辑的执行。

Method and device for updating log record

The embodiment of the invention discloses a method and apparatus for updating with a log record, the method includes: when the target program is running to the log mark, according to the log mark corresponding to the preset log format to obtain log content; adding the log contents to update the list and returns the target program; the log the contents of the update list updates to the database log. Through the technical proposal of the invention, the simplified development operation can be realized, so that when the log record is wrong, the normal service logic of the program is not affected.

【技术实现步骤摘要】
一种日志记录的更新方法及装置
本专利技术实施例涉及计算机技术,尤其涉及一种日志记录的更新方法及装置。
技术介绍
随着各种智能终端的迅速发展,各种应用软件也层出不穷。几乎所有的应用软件中都需要对用户的操作行为进行记录,目的是作为日后操作审计的依据或从用户操作记录中挖掘用户的操作习惯及操作特点。因此,如何简化应用软件中开发日志记录功能的方法成为一个重要课题。传统日志记录的更新方法一般是在要记录日志的代码中,通过逻辑编码的方式加入需要记录日志的代码。这样做的缺点是日志记录代码散落在整个软件中,如果要对日志记录的逻辑有修改,必须在全部代码中搜索日志相关的代码并一一进行修改,操作复杂。再者,日志操作一般都会涉及到日志的存储,通常日志数据存储在数据库中,而日志操作的代码与业务逻辑是串行的关系,一般是做完主逻辑后进行日志记录,一旦日志记录的逻辑出现错误时(例如:日志数据库连接异常错误)则会导致主逻辑无法正常执行。
技术实现思路
本专利技术实施例提供一种日志记录的更新方法及装置,以实现简化开发操作,使得当日志记录发生错误时不会影响程序正常业务逻辑的执行。第一方面,本专利技术实施例提供了一种日志记录的更新方法,包括:当目标程序运行到日志标注时,根据所述日志标注对应的预设日志格式获取日志内容;将所述日志内容添加到更新列表中,返回执行目标程序;将所述更新列表中的日志内容更新到日志数据库。第二方面,本专利技术实施例还提供了一种日志记录的更新装置,该装置包括:日志内容获取模块,用于当目标程序运行到日志标注时,根据所述日志标注对应的预设日志格式获取日志内容;日志内容添加模块,用于将所述日志内容添加到更新列表中,返回执行目标程序;数据库更新模块,用于将所述更新列表中的日志内容更新到日志数据库。本专利技术实施例将获取的日志内容添加至更新列表中后即返回执行目标程序,此外在返回执行目标程序的同时可将更新列表中的日志内容更新到日志数据库中,进而解决现有技术中因日志逻辑代码直接放在目标程序中,而导致的修改日志逻辑代码操作复杂和出错后会影响正常业务逻辑的执行的问题,达到简化日志开发操作,以及当日志记录发生错误时不会影响目标程序业务逻辑执行的效果,提高目标程序执行的稳定性。附图说明图1是本专利技术实施例一提供的一种日志记录的更新方法的流程示意图;图2是本专利技术实施例二提供的一种日志记录的更新方法的流程示意图;图3是本专利技术实施例三提供的一种日志记录的更新方法的流程示意图;图4是本专利技术实施例四提供的一种日志记录的更新方法的流程示意图;图5是本专利技术实施例四提供的优选日志记录系统中的内部结构示意图;图6是本专利技术实施例五提供的一种日志记录的更新装置的结构示意图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。实施例一图1为本专利技术实施例一提供的一种日志记录的更新方法的流程示意图。该方法可适用于开发日志记录功能的情况,该方法可以由日志记录的更新装置来执行,该装置可由硬件和/或软件组成,且一般可集成在电脑以及所有包含软件开发功能的智能终端中。具体包括如下:S110、当目标程序运行到日志标注时,根据日志标注对应的预设日志格式获取日志内容。其中,日志标注可以采用AOP(AspectOrientedProgramming,面向切面编程)技术。具体的,日志标注可以是AOP注解,AOP注解指的是采用AOP技术的一种能够让程序识别出来的标识符,例如,字符串“AOP”可以作为一种AOP注解,进一步的,日志标注包含至少一种类型AOP注解,注解类型根据日志所需记录参数的不同而不同。不同种类的日志标注对应于不同的预设日志格式,预设日志格式可以是预先设置的日志格式配置文件中的内容,用来定义日志记录的内容。例如,预设日志格式可以定义为“用户名”、“时间”和“操作内容”的组合,具体预设日志格式可以是“‘用户名’在‘时间’进行了‘操作内容’的操作”,其中“用户名”、“时间”、“操作内容”为可变参数。S120、将日志内容添加到更新列表中,返回执行目标程序。具体的,更新列表可以是链表,也可以是数组,以作为日志内容的存储结构。多个程序产生的日志内容可通过一个更新列表来缓存,以节约内存,且所有日志内容可按照先到先入的原则缓存进入更新列表。将日志内容添加到更新列表的目的在于,可以在进行日志存入数据库之前返回执行目标程序,即使日志存入数据库时发生错误,也不会影响程序正常业务逻辑的执行。S130、将更新列表中的日志内容更新到日志数据库。具体的,缓存在更新列表中的日志内容可通过预设的日志保存接口更新到日志数据库中,更新操作的类型包括添加、重写中的至少一种操作类型。例如,当日志数据库中不存在相关日志内容,则将日志内容添加至日志数据库中的相应位置;当日志数据库中已存在相关日志内容,则将日志内容重写至日志数据库中的相应位置。其中,日志数据库可以设置为默认的数据库,也可以设置为自定义的数据库。日志保存接口可以为一个数据存储函数,该函数包含有数据库的相关信息,例如,日志保存接口为包含数据库的用户名、密码以及相关存储逻辑代码的数据存储函数。本专利技术实施例将获取的日志内容添加至更新列表中后即返回执行目标程序,此外在返回执行目标程序的同时可将更新列表中的日志内容更新到日志数据库中,进而解决现有技术中因日志逻辑代码直接放在目标程序中,而导致的修改日志逻辑代码操作复杂和出错后会影响正常业务逻辑的执行的问题,达到简化日志开发操作,以及当日志记录发生错误时不会影响目标程序业务逻辑执行的效果,提高目标程序执行的稳定性。实施例二图2为本专利技术实施例二提供的一种日志记录的更新方法的流程示意图。本实施例以上述实施例为基础进行优化,提供了优选的日志记录的更新方法,具体是,将根据日志标注对应的预设日志格式获取日志内容进一步优化为,包括:获取与日志标注的类型对应的日志数据;根据日志数据以及日志标注对应的预设日志格式生成日志内容。S210、当目标程序运行到日志标注时,获取与日志标注的类型对应的日志数据。具体的,当目标程序运行到有日志标注的地方时,获取预先设置的与日志标注的类型相对应的日志数据,其中,日志数据可以包括记录日志所需的相关参数。优选的,通过预先设置日志标注类型与日志数据之间的对应关系实现类来确定两者之间的对应关系。例如,AOP1对应于日志数据A,日志数据A包含的参数为“用户名”、“时间”和“浏览内容”;AOP2对应于日志数据A,日志数据A包含的参数为“用户名”、“时间”和“当前网络参数”。获取日志数据的目的在于,为后续按照预设日志格式生成的日志内容提供相应的相关参数,例如“用户”、“时间”、“事件”。S220、根据日志数据以及日志标注对应的预设日志格式生成日志内容。具体的,根据日志数据以及日志标注对应的预设日志格式可组合成相应的日志内容。例如:“用户名”在“时间”浏览了“浏览内容”,其中,“用户名”、“时间”、“浏览内容”为日志数据里包含的三个参数,其根据日志标注的地方不同,可能发生变化;而预设日志格式则是将日志数据里的这三个参数按照“‘用户名’在‘时间’浏览了‘浏览内容’”的方式组合起本文档来自技高网...
一种日志记录的更新方法及装置

【技术保护点】
一种日志记录的更新方法,其特征在于,包括:当目标程序运行到日志标注时,根据所述日志标注对应的预设日志格式获取日志内容;将所述日志内容添加到更新列表中,返回执行目标程序;将所述更新列表中的日志内容更新到日志数据库。

【技术特征摘要】
1.一种日志记录的更新方法,其特征在于,包括:当目标程序运行到日志标注时,根据所述日志标注对应的预设日志格式获取日志内容;将所述日志内容添加到更新列表中,返回执行目标程序;将所述更新列表中的日志内容更新到日志数据库。2.根据权利要求1所述的方法,其特征在于,所述根据所述日志标注对应的预设日志格式获取日志内容包括:获取与所述日志标注的类型对应的日志数据;根据所述日志数据以及所述日志标注对应的预设日志格式生成日志内容。3.根据权利要求1所述的方法,其特征在于,所述将所述更新列表中的日志内容更新到日志数据库包括:获取所述更新列表中目标日志内容对应的目标日志数据库;将所述目标日志内容更新到所述目标日志数据库。4.根据权利要求1所述的方法,其特征在于,在将所述日志内容添加到更新列表中之前,还包括:创建日志监控线程,所述日志监控线程用于监听所述更新列表中是否存在日志内容;相应的,所述将所述更新列表中的日志内容更新到日志数据库包括:当所述日志监控线程监听到所述更新列表中存在日志内容时,将所述更新列表中的所述日志内容更新到日志数据库。5.根据权利要求1-4中任一项所述的方法,其特征在于,在目标程序运行到日志标注之前,还包括:在目标程序的日志记录点添加日志标注。6.一种日志记录的更新装置,其特征在于,包括:日志内容获...

【专利技术属性】
技术研发人员:张涛
申请(专利权)人:北京锐安科技有限公司
类型:发明
国别省市:北京,11

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

1