标签添加方法、装置、计算机可读存储介质及设备与流程

文档序号:14571814发布日期:2018-06-01 22:39阅读:274来源:国知局
标签添加方法、装置、计算机可读存储介质及设备与流程

本发明涉及计算机技术领域,尤其涉及一种标签添加方法、装置、计算机可读存储介质及设备。



背景技术:

APP(Application,应用程序),是安装在智能移动终端上的软件,用于完善原始系统的不足以及在原始系统上添加个性化功能。

伴随着智能移动终端应用的飞速发展,开发人员为了能更好的收集APP信息,通常是通过调用系统的日志方法,手动添加TAG标签和自己需要的日志信息。这种方式需要开发人员在每处加日志的方法处手动添加TAG标签,增加了开发人员的工作量。并且如果开发人员没有添加TAG标签,就不能很好的过滤需要的日志,而且即使添加了TAG标签也不能很好的定位代码位置。



技术实现要素:

本发明实施例提供一种标签添加方法、装置、计算机可读存储介质及设备,用以解决现有技术中不能快速地定位到标签对应的代码位置的问题。

依据本发明实施例的第一个方面,提供了一种标签添加方法,所述方法包括:

对日志函数进行切面;

切入到调用日志函数的代码块,获取代码块的标识和行数;

基于代码块的标识和行数,生成超链接标签,并将超链接标签添加到日志函数。

可选的,对日志函数进行切面步骤之前,还包括:

封装日志函数,添加日志输出开关功能。

可选的,基于代码块的标识和行数,生成超链接标签,包括:

对代码块的标识和行数进行拼接;

生成包含拼接有代码块的标识和行数的超链接标签。

可选的,切入到调用日志函数的代码块,具体包括:

确定预先定义的通知方法;

根据通知方法,切入到调用日志函数的代码块。

可选的,预先定义的通知方法包括如下方法之一:

前置通知方法、后置通知方法、返回通知方法、异常通知方法、以及环绕通知方法。

依据本发明实施例的第二个方面,提供了一种标签添加装置,所述装置包括:

切面模块,用于对日志函数进行切面;

切入模块,用于切入到调用日志函数的代码块,获取代码块的标识和行数;

标签添加模块,用于基于代码块的标识和行数,生成超链接标签,并将超链接标签添加到日志函数。

可选的,装置还包括:

封装模块,用于封装日志函数,添加日志输出开关功能。

可选的,标签添加模块包括:

拼接单元,用于对代码块的标识和行数进行拼接;

标签生成单元,生成包含拼接有代码块的标识和行数的超链接标签。

可选的,切入模块包括:

方法定义单元,用于确定预先定义的通知方法;

切入单元,用于根据通知方法,切入到调用日志函数的代码块。

可选的,预先定义的通知方法包括如下方法之一:

前置通知方法、后置通知方法、返回通知方法、异常通知方法、以及环绕通知方法。

依据本发明实施例的第三个方面,提供了一种计算机可读存储介质,计算机可读存储介质存储有标签添加程序,当标签添加程序被至少一个处理器执行时,导致至少一个处理器执行本发明实施例提供的方法步骤。

依据本发明实施例的第四个方面,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的标签添加程序,处理器执行标签添加程序时实现本发明实施例提供的方法步骤。

根据本发明实施例的一种标签添加方法、装置、计算机可读存储介质及设备,通过对日志函数进行切面;切入到调用日志函数的代码块,获取代码块的标识和行数;基于代码块的标识和行数,生成超链接标签,并将超链接标签添加到日志函数。从而能够满足让开发者,通过根据该超链接标签,获取该超链接标签对应代码段的具体位置,方便开发人员定位代码块,以解决现有技术中不能快速地定位到标签对应的代码位置的问题。

上述说明仅是本发明实施例技术方案的概述,为了能够更清楚了解本发明实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本发明实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明实施例的具体实施方式。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明实施例的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1为本发明第一实施例提供的一种标签添加方法的流程图;

图2为本发明第二实施例提供的一种标签添加方法的流程图;

图3为本发明第三实施例提供的一种标签添加方法的流程图;

图4为本发明第四实施例提供的一种标签添加方法的流程图;

图5为本发明第五实施例提供的一种标签添加装置的功能模块示意图;

图6为本发明第六实施例提供的一种标签添加装置的功能模块示意图;

图7为本发明第七实施例提供的一种标签添加装置的功能模块示意图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

请参阅图1,为本发明第一实施提供的一种标签添加方法的流程图。本实施例中,所述标签添加方法包括如下步骤:

步骤S101,对日志函数进行切面。

步骤S102,切入到调用日志函数的代码块,获取代码块的标识和行数。

本发明实施例中,切入到的代码块为切点,获取的代码块的标识包括:切点所在代码文件名。

切点所在代码文件名可以为该代码块对应的类名或方法名。

步骤S103,基于代码块的标识和行数,生成超链接标签,并将超链接标签添加到日志函数。

根据该代码块的标识和行数,生成超链接标签,并将超链接标签添加到日至函数中。以使在执行该日至函数时,获得该超链接标签。如,生成能够在控制台输出具备超链接格式的TAG标签,能够满足让开发者,通过点击,快速跳转到TAG标签对应的目标文件的具体位置。从而能够满足,开发者根据该超链接标签,获取该超链接标签对应代码段的具体位置,方便开发人员定位代码块,以解决现有技术中不能快速地定位到标签对应的代码位置的问题。

请参阅图2,为本发明第二实施提供的一种标签添加方法的流程图。本实施例中,所述标签添加方法包括如下步骤:

步骤S201,对日志函数进行切面。

在本发明实施例中,通过使用面向切面编程AOP编程方法对日志函数进行切面。

步骤S202,确定预先定义的通知方法。

具体实施时,可采用面向切面的框架AspectJ提供的通知方法。

可选的,预先定义的通知方法包括如下方法之一:

前置通知方法、后置通知方法、返回通知方法、异常通知方法、以及环绕通知方法。

也就是说,根据具体需求,本领域技术人员可以采用上述任一通知方法进行切点切入。

其中:

前置通知方法:Before通知方法,在调用目标方法之前执行通知定义的任务;

后置通知方法:After通知方法,在目标方法执行结束后,无论执行结果如何都执行通知定义的任务;

返回通知方法:After-returning通知方法,在目标方法执行结束后,如果执行成功,则执行通知定义的任务;

异常通知方法:After-throwing通知方法,如果目标方法执行过程中抛出异常,则执行通知定义的任务;

环绕通知方法:Around通知方法,即在目标方法执行前和执行后,都需要执行通知定义的任务。

步骤S203,根据所述通知方法,切入到调用日志函数的代码块,获取代码块的标识和行数。

通过预先定义的通知方法,切入到调用日志函数的代码块,获取代码块的标识和行数。

在本发明的一个示例性实施例中,采用Around通知方法切入到调用日志函数的代码块。

通过采用Around通知方法,在具体应用时不需要在日志函数前后添加其他操作,以使程序代码更加简洁。

本发明实施例中,通过采用Around通知方法,切入到的代码块为切点,获取的代码块的标识包括:切点所在代码文件名。

切点所在代码文件名可以为该代码块对应的类名或方法名。

需要指出的是,本发明实施例,采用Around通知方法,切入到调用日志函数的代码块,只是本发明实施例实现切入切点的一种具体实施例方式。根据具体需求,本发明实施例还可以采用如下通知方法中的任意一个:Before通知方法、After通知方法、After-returning通知方法、After-throwing通知方法。

步骤S204,基于代码块的标识和行数,生成超链接标签,并将超链接标签添加到日志函数。

根据该代码块的标识和行数,生成超链接标签,并将超链接标签添加到日至函数中。以使在执行该日至函数时,获得该超链接标签。如,生成能够在控制台输出具备超链接格式的TAG标签,能够满足让开发者,通过点击,快速跳转到TAG标签对应的目标文件的具体位置。从而能够满足,开发者根据该超链接标签,获取该超链接标签对应代码段的具体位置,方便开发人员定位代码块,以解决现有技术中不能快速地定位到标签对应的代码位置的问题。

请参阅图3,为本发明第三实施提供的一种标签添加方法的流程图,本实施例中,所述标签添加方法包括如下步骤:

步骤S301,封装日志函数,添加日志输出开关功能。

具体的,对日志函数进行封装,添加日志的开关功能,该开关功能可以包括:DEBUG,INFO,WARN,ERROR中至少一种日志等级对应的开关功能,通过使用统一开关,控制对应等级的日志输出。需要清楚的是,DEBUG,INFO,WARN,ERROR并没有统一的中文名称。其中,DEBUG:程序调试信息,用于开发过程中对程序运行情况的监控。INFO:程序运行的关键性信息,通常用于对程序运行情况的监控。WARN:告警信息,程序存在潜在的问题,有可能引起运行异常,但此时并未产生异常。ERROR:程序错误信息,需要进行及时处理和优化。

步骤S302,对日志函数进行切面。

步骤S303,切入到调用日志函数的代码块,获取代码块的标识和行数。

本发明实施例中,切入到的代码块为切点,获取的代码块的标识包括:切点所在代码文件名。

切点所在代码文件名可以为该代码块对应的类名或方法名。

步骤S304,基于代码块的标识和行数,生成超链接标签,并将超链接标签添加到日志函数。

根据该代码块的标识和行数,生成超链接标签,并将超链接标签添加到日至函数中。以使在执行该日至函数时,获得该超链接标签。如,生成能够在控制台输出具备超链接格式的TAG标签,能够满足让开发者,通过点击,快速跳转到TAG标签对应的目标文件的具体位置。从而能够满足,开发者根据该超链接标签,获取该超链接标签对应代码段的具体位置,方便开发人员定位代码块,以解决现有技术中不能快速地定位到标签对应的代码位置的问题。

请参阅图4,为本发明第四实施提供的一种标签添加方法的流程图,本实施例中,所述标签添加方法包括如下步骤:

步骤S401,对日志函数进行切面。

步骤S402,切入到调用日志函数的代码块,获取代码块的标识和行数。

本发明实施例中,切入到的代码块为切点,获取的代码块的标识包括:切点所在代码文件名。

切点所在代码文件名可以为该代码块对应的类名或方法名。

步骤S403,对代码块的标识和行数进行拼接。

具体实施时,获取该代码段对应的标识及该代码段对应代码的行数,并将该代码段对应的代码标识及代码段对应的行数进行拼接。

步骤S404,生成包含拼接有代码块的标识和行数的超链接标签。

具体实施时,生成包含代码块的标识和行数对应的超链接标签,如,拼接成能够在控制台输出具备超链接格式的TAG标签,能够满足让开发者,通过点击,快速跳转到TAG标签对应的目标文件的具体位置。从而能够满足,开发者根据该超链接标签,获取该超链接标签对应代码段的具体位置,方便开发人员定位代码块,以解决现有技术中不能快速地定位到标签对应的代码位置的问题。

请参阅图5,为本发明第五实施例提供的一种标签添加装置100的功能模块示意图。应用于计算机设备,该标签添加装置100包括切面模块110、切入模块120、以及标签添加模块130。该装置主要用来实现本发明实施例提供的标签添加方法,该方法主要用来解决现有技术中不能快速地定位到标签对应的代码位置的问题。

其中,该计算机设备包括但不限于移动电话、手机、智能手机、平板电脑、个人电脑、个人数字助理、媒体播放器和其他电子设备。

切面模块110,用于对日志函数进行切面。

切入模块120,用于切入到调用日志函数的代码块,获取代码块的标识和行数。

本发明实施例中,切入到的代码块为切点,获取的代码块的标识包括:切点所在代码文件名。

切点所在代码文件名可以为该代码块对应的类名或方法名。

标签添加模块130,用于基于代码块的标识和行数,生成超链接标签,并将超链接标签添加到日志函数。

根据该代码块的标识和行数,生成超链接标签,并将超链接标签添加到日至函数中。以使在执行该日至函数时,获得该超链接标签。如,生成能够在控制台输出具备超链接格式的TAG标签,能够满足让开发者,通过点击,快速跳转到TAG标签对应的目标文件的具体位置。从而能够满足,开发者根据该超链接标签,获取该超链接标签对应代码段的具体位置,方便开发人员定位代码块,以解决现有技术中不能快速地定位到标签对应的代码位置的问题。

可选的,切入模块120,包括:

方法定义单元121,用于确定预先定义的通知方法。

具体实施时,可采用面向切面的框架AspectJ提供的通知方法。

可选的,预先定义的通知方法包括如下方法之一:

前置通知方法、后置通知方法、返回通知方法、异常通知方法、以及环绕通知方法。

也就是说,根据具体需求,本领域技术人员可以采用上述任一通知方法进行切点切入。

切入单元122,用于根据所述通知方法,切入到调用日志函数的代码块,获取代码块的标识和行数。

通过预先定义的通知方法,切入到调用日志函数的代码块,获取代码块的标识和行数。

在本发明的一个示例性实施例中,采用Around通知方法切入到调用日志函数的代码块。

通过采用Around通知方法,在具体应用时不需要在日志函数前后添加其他操作,以使程序代码更加简洁。

本发明实施例中,通过采用Around通知方法,切入到的代码块为切点,获取的代码块的标识包括:切点所在代码文件名。

切点所在代码文件名可以为该代码块对应的类名或方法名。

需要指出的是,本发明实施例,采用Around通知方法,切入到调用日志函数的代码块,只是本发明实施例实现切入切点的一种具体实施例方式。根据具体需求,本发明实施例还可以采用如下通知方法中的任意一个:Before通知方法、After通知方法、After-returning通知方法、After-throwing通知方法。

可以清楚的是,本发明实施例中采用面向切面编程AOP编程方法对日志函数进行切面;以及采用Around通知方法,切入到调用日志函数的代码块。只是本发明的一个具体实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

请参阅图6,为本发明第六实施例提供的标签添加装置的功能模块示意图。应用于计算机设备,该计算机设备包括但不限于移动电话、手机、智能手机、平板电脑、个人电脑、个人数字助理、媒体播放器和其他电子设备。该标签添加装置100包括切面模块110、切入模块120、以及标签添加模块130。可选的,在第五实施例的基础上,该装置还包括封装模块101。

其中,封装模块101,用于封装日志函数,添加日志输出开关功能。

具体的,对日志函数进行封装,添加日志的开关功能,该开关功能可以包括:DEBUG,INFO,WARN,ERROR中至少一种日志等级对应的开关功能,通过使用统一开关,控制对应等级的日志输出。

请参阅图7,为本发明第七实施例提供的标签添加装置的功能模块示意图。应用于计算机设备,该计算机设备包括但不限于移动电话、手机、智能手机、平板电脑、个人电脑、个人数字助理、媒体播放器和其他电子设备。该标签添加装置100包括切面模块110、切入模块120、标签添加模块130、以及封装模块101。在第六实施例的基础上,可选的,该标签添加模块130包括:

拼接单元131,用于对代码块的标识和行数进行拼接。

具体实施时,获取该代码段对应的标识及该代码段对应代码的行数,并将该代码段对应的代码标识及代码段对应的行数进行拼接。

标签生成单元132,用于生成包含拼接有代码块的标识和行数的超链接标签。

具体实施时,生成包含代码块的标识和行数对应的超链接标签,如,拼接成能够在控制台输出具备超链接格式的TAG标签,能够满足让开发者,通过点击,快速跳转到TAG标签对应的目标文件的具体位置。从而能够满足,开发者根据该超链接标签,获取该超链接标签对应代码段的具体位置,方便开发人员定位代码块,以解决现有技术中不能快速地定位到标签对应的代码位置的问题。

本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有标签添加程序,当标签添加程序被至少一个处理器执行时,导致至少一个处理器执行如下步骤:

步骤S101,对日志函数进行切面。

步骤S102,切入到调用日志函数的代码块,获取代码块的标识和行数。

步骤S103,基于代码块的标识和行数,生成超链接标签,并将超链接标签添加到日志函数。

可选的,执行的步骤可替换为步骤S201至步骤S204、步骤S301至步骤S304、以及步骤S401至步骤S404。

由于在第一实施例至第四实施例中已经对标签添加方法实施过程进行了详细说明,本实施例在此不再重复赘述。

本实施例计算机可读存储介质包括但不限于为:ROM、RAM、磁盘或光盘等。

本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的标签添加程序,处理器执行标签添加程序时实现如下步骤:

步骤S101,对日志函数进行切面。

步骤S102,切入到调用日志函数的代码块,获取代码块的标识和行数。

步骤S103,基于代码块的标识和行数,生成超链接标签,并将超链接标签添加到日志函数。

可选的,执行的步骤可替换为步骤S201至步骤S204、步骤S301至步骤S304、以及步骤S401至步骤S404。

由于在第一实施例至第四实施例中已经对标签添加方法实施过程进行了详细说明,本实施例在此不再重复赘述。

本实施例中计算机设备包括但不限于移动电话、手机、智能手机、平板电脑、个人电脑、个人数字助理、媒体播放器和其他电子设备。

综上所述,本发明实施例公开了一种标签添加方法、装置、计算机可读存储介质及设备,涉及计算机技术领域。通过对日志函数进行切面;切入到调用日志函数的代码块,获取代码块的标识和行数;基于代码块的标识和行数,生成超链接标签,并将超链接标签添加到日志函数。从而能够满足让开发者,通过根据该超链接标签,获取该超链接标签对应代码段的具体位置,方便开发人员定位代码块,以解决现有技术中不能快速地定位到标签对应的代码位置的问题。

在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

总之,以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1