CN105260168A - 日志输出方法和装置 - Google Patents

日志输出方法和装置 Download PDF

Info

Publication number
CN105260168A
CN105260168A CN201410336600.5A CN201410336600A CN105260168A CN 105260168 A CN105260168 A CN 105260168A CN 201410336600 A CN201410336600 A CN 201410336600A CN 105260168 A CN105260168 A CN 105260168A
Authority
CN
China
Prior art keywords
attribute
property
destination object
source
described source
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.)
Granted
Application number
CN201410336600.5A
Other languages
English (en)
Other versions
CN105260168B (zh
Inventor
许寄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced Nova Technology Singapore Holdings Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201410336600.5A priority Critical patent/CN105260168B/zh
Publication of CN105260168A publication Critical patent/CN105260168A/zh
Application granted granted Critical
Publication of CN105260168B publication Critical patent/CN105260168B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种日志输出方法和装置。其中,日志输出方法包括:判断源对象的属性集中是否存在与目标对象的目标属性相映射的源属性,其中,源对象为输出日志的应用程序的入参对象,目标对象为输出日志时使用到的对象,目标对象的属性集与源对象的属性集之间具有属性映射关系,目标属性为目标对象的属性集中的属性;在判断出源对象的属性集中存在与目标属性相映射的源属性的情况下,获取源属性的属性值;以及设置目标属性的属性值为源属性的属性值,得到格式化后的日志。通过本发明,解决了现有技术中***输出标准格式的日志容易导致***维护成本高的问题,进而达到了降低***维护成本的效果。

Description

日志输出方法和装置
技术领域
本发明涉及日志处理领域,具体而言,涉及一种日志输出方法和装置。
背景技术
应用***一般都会设计覆盖本应用关键业务处理结果的***日志,便于追踪监控及统计分析:如通过采集此类关键业务处理日志,结合相应的日志分析***,能够准确、实时地生成业务处理报告、***处理出错原因占比等各项分析数据。
此类***日志文件一般会有其标准格式,包含诸如请求来源、关键业务参数、处理时长及处理结果等信息;满足一定解析格式的要求,用于业务运行健康状态跟踪、业务规模数据统计分析、***出错原因跟踪定位等。
为了便于对日志信息的分析处理,应用***会预定义此类日志的输出标准格式,如:[接口名,方法名,处理耗时,处理结果][(本***关键数据单据号,本***关键数据业务属性1,本***关键数据业务属性2,...,业务请求来源***,业务请求来源***关键数据单据号)(业务请求来源IP,业务请求来源终端)]。
应用***为保证每次处理都输出上述的标准格式日志,通常会通过硬编码手段,强制将接口入参中各项关键信息属性取值、并对预定义的标准日志对象进行赋值,以期达到属性适配的目的。
由于业务***的复杂性,往往有不同的***服务接口、大量差异化的接口入参对象存在;输出标准格式的***处理日志,则必然会出现大量的差异化取值、赋值过程,硬编码手段研发及维护成本高,每次入参对象的升级、标准格式***日志对象的变更等,都会带来大量的***改造成本。
针对相关技术中***输出标准格式的日志容易导致***维护成本高的问题,目前尚未提出有效的解决方案。
发明内容
本发明的主要目的在于提供一种日志输出方法和装置,以解决现有技术中***输出标准格式的日志容易导致***维护成本高的问题。
根据本发明的一个方面,提供了一种日志输出方法。
根据本发明的日志输出方法包括:判断源对象的属性集中是否存在与目标对象的目标属性相映射的源属性,其中,所述源对象为输出所述日志的应用程序的入参对象,所述目标对象为输出所述日志时使用到的对象,所述目标对象的属性集与所述源对象的属性集之间具有属性映射关系,所述目标属性为所述目标对象的属性集中的属性;在判断出所述源对象的属性集中存在与所述目标属性相映射的源属性的情况下,获取所述源属性的属性值;以及设置所述目标属性的属性值为所述源属性的属性值,得到格式化后的所述日志。
进一步地,在判断源对象的属性集中是否存在与目标对象的目标属性相映射的源属性之前,所述日志输出方法还包括:设置所述目标对象的属性集与所述源对象的属性集之间的属性映射关系。
进一步地,设置所述目标对象的属性集与所述源对象的属性集之间的属性映射关系包括:设置所述目标对象的第一属性与所述源对象的第一属性相映射,其中,所述目标对象的第一属性为所述目标对象的属性集中的任一属性,所述源对象的第一属性为所述源对象的属性集中的任一属性;以及设置所述目标对象的第二属性与所述源对象的第二属性相映射,其中,所述目标对象的第二属性为所述目标对象的属性集中的任一属性,并且所述目标对象的第二属性与所述目标对象的第一属性不相同,所述源对象的第二属性为所述源对象的属性集中的任一属性,并且所述源对象的第二属性与所述源对象的第一属性不相同。
进一步地,设置所述目标对象的属性集与所述源对象的属性集之间的属性映射关系包括:标识所述目标对象的第一属性和所述源对象的第一属性均为第一预设标识,其中,所述目标对象的第一属性为所述目标对象的属性集中的任一属性,所述源对象的第一属性为所述源对象的属性集中的任一属性;以及标识所述目标对象的第二属性和所述源对象的第二属性均为第二预设标识,其中,所述目标对象的第二属性为所述目标对象的属性集中的任一属性,并且所述目标对象的第二属性与所述目标对象的第一属性不相同,所述源对象的第二属性为所述源对象的属性集中的任一属性,并且所述源对象的第二属性与所述源对象的第一属性不相同,所述第二预设标识与所述第一预设标识不相同。
进一步地,获取所述源属性的属性值包括:定位所述源属性的属性值的获取方式;以及调用所述获取方式获取到所述源属性的属性值。
进一步地,设置所述目标属性的属性值为所述源属性的属性值包括:定位所述目标属性的属性值的设置方式;以及调用所述设置方式将所述目标属性的属性值赋值为所述源属性的属性值。
根据本发明的另一方面,提供了一种日志输出装置。
根据本发明的日志输出装置包括:判断单元,用于判断源对象的属性集中是否存在与目标对象的目标属性相映射的源属性,其中,所述源对象为输出所述日志的应用程序的入参对象,所述目标对象为输出所述日志时使用到的对象,所述目标对象的属性集与所述源对象的属性集之间具有属性映射关系,所述目标属性为所述目标对象的属性集中的属性;获取单元,用于在判断出所述源对象的属性集中存在与所述目标属性相映射的源属性的情况下,获取所述源属性的属性值;以及第一设置单元,用于设置所述目标属性的属性值为所述源属性的属性值,得到格式化后的所述日志。
进一步地,所述日志输出装置还包括:第二设置单元,用于设置所述目标对象的属性集与所述源对象的属性集之间的属性映射关系。
进一步地,所述第二设置单元包括:第一设置模块,用于设置所述目标对象的第一属性与所述源对象的第一属性相映射,其中,所述目标对象的第一属性为所述目标对象的属性集中的任一属性,所述源对象的第一属性为所述源对象的属性集中的任一属性;以及第二设置模块,用于设置所述目标对象的第二属性与所述源对象的第二属性相映射,其中,所述目标对象的第二属性为所述目标对象的属性集中的任一属性,并且所述目标对象的第二属性与所述目标对象的第一属性不相同,所述源对象的第二属性为所述源对象的属性集中的任一属性,并且所述源对象的第二属性与所述源对象的第一属性不相同。
进一步地,所述第二设置单元包括:第一标识模块,用于标识所述目标对象的第一属性和所述源对象的第一属性均为第一预设标识,其中,所述目标对象的第一属性为所述目标对象的属性集中的任一属性,所述源对象的第一属性为所述源对象的属性集中的任一属性;以及第二标识模块,用于标识所述目标对象的第二属性和所述源对象的第二属性均为第二预设标识,其中,所述目标对象的第二属性为所述目标对象的属性集中的任一属性,并且所述目标对象的第二属性与所述目标对象的第一属性不相同,所述源对象的第二属性为所述源对象的属性集中的任一属性,并且所述源对象的第二属性与所述源对象的第一属性不相同,所述第二预设标识与所述第一预设标识不相同。
进一步地,所述获取单元包括:第一定位模块,用于定位所述源属性的属性值的获取方式;以及第一调用模块,用于调用所述获取方式获取到所述源属性的属性值。
进一步地,所述第一设置单元包括:第二定位模块,用于定位所述目标属性的属性值的设置方式;以及第二调用模块,用于调用所述设置方式将所述目标属性的属性值赋值为所述源属性的属性值。
在本发明中,采用判断源对象的属性集中是否存在与目标对象的目标属性相映射的源属性,其中,所述源对象为输出所述日志的应用程序的入参对象,所述目标对象为输出所述日志时使用到的对象,所述目标对象的属性集与所述源对象的属性集之间具有属性映射关系,所述目标属性为所述目标对象的属性集中的属性;在判断出所述源对象的属性集中存在与所述目标属性相映射的源属性的情况下,获取所述源属性的属性值;以及设置所述目标属性的属性值为所述源属性的属性值,得到格式化后的所述日志。通过预先设置好目标对象和源对象的属性映射关系,后续在进行日志输出时,对于某个目标对象的属性而言,获取到与之对应的源对象的属性值,并将获取到的属性值赋值到目标对象,生成日志。此种日志生成输出方式,实现了将应用程序的业务升级逻辑与日志输出进行解耦,能够自动化处理入参对象到标准化日志对象的转换逻辑,开发人员无需过多关注请求入参对象的变更对***标准日志的影响,无需硬编码,解决了现有技术中***输出标准格式的日志容易导致***维护成本高的问题,进而达到了降低***维护成本的效果。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的日志输出方法的流程图;
图2是根据本发明优选实施例的日志输出方法的流程图;
图3是根据本发明实施例的日志输出装置的示意图;以及
图4是根据本发明优选实施例的日志输出装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
实施例1
根据本发明实施例,可以提供了一种可以通过本申请装置实施例实施或执行的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
根据本发明实施例,提供了一种日志输出方法,以下对本发明实施例所提供的日志输出方法做具体介绍:
图1是根据本发明实施例的日志输出方法的流程图,如图1所示,该日志输出方法包括如下的步骤S102至步骤S106:
S102:判断源对象的属性集中是否存在与目标对象的目标属性相映射的源属性,其中,源对象为输出日志的应用程序的入参对象,目标对象为输出日志时使用到的对象,目标对象的属性集与源对象的属性集之间具有属性映射关系,目标属性为目标对象的属性集中的属性,即,目标对象的各个属性与源对象的各个属性之间具有属性映射关系,该属性映射关系可以在日志输出之前进行设置,在进行日志输出时,遍历目标对象属性集,匹配源对象的属性集中是否存与目标属性相映射的源属性。
S104:在判断出源对象的属性集中存在与目标属性相映射的源属性的情况下,获取源属性的属性值,具体地,可以通过反射机制来获取源属性的属性值。
S106:设置目标属性的属性值为源属性的属性值,得到格式化后的日志,具体性,同样可以通过反射机制来设置目标属性的属性值。其中,如果判断出源对象的属性集中不存在与目标属性相映射的源属性的话,则跳过对这个目标属性的属性值的设置,然后再次执行步骤S102至步骤S106,以对下一个目标属性进行匹配。
本发明实施例所提供的日志输出方法,通过预先设置好目标对象和源对象的属性映射关系,后续在进行日志输出时,对于某个目标对象的属性而言,获取到与之对应的源对象的属性值,并将获取到的属性值赋值到目标对象,生成日志。此种日志生成输出方式,实现了将应用程序的业务升级逻辑与日志输出进行解耦,能够自动化处理入参对象到标准化日志对象的转换逻辑,开发人员无需过多关注请求入参对象的变更对***标准日志的影响,无需硬编码,解决了现有技术中***输出标准格式的日志容易导致***维护成本高的问题,进而达到了降低***维护成本的效果。
图2是根据本发明优选实施例的日志输出方法的流程图,如图2所示,该优选实施例做提供的日志输出方法主要包括步骤S202至步骤S208:
S202:设置目标对象的属性集与源对象的属性集之间的属性映射关系,其中,在本发明实施例中,对属性映射关系的设置可以通过但不限于如下方式:
方式一:基于配置文件表达对属性映射关系的设置,如:源对象.属性1=目标对象.属性1,源对象.属性2=目标对象.属性3,即,设置目标对象的第一属性与源对象的第一属性相映射,其中,目标对象的第一属性为目标对象的属性集中的任一属性,源对象的第一属性为源对象的属性集中的任一属性;以及设置目标对象的第二属性与源对象的第二属性相映射,其中,目标对象的第二属性为目标对象的属性集中的任一属性,并且目标对象的第二属性与目标对象的第一属性不相同,源对象的第二属性为源对象的属性集中的任一属性,并且源对象的第二属性与源对象的第一属性不相同。
方式二:基于面向对象编程语言的反射原理,通过预设的属性注解来标识,具体器,标识目标对象的第一属性和源对象的第一属性均为第一预设标识,其中,目标对象的第一属性为目标对象的属性集中的任一属性,源对象的第一属性为源对象的属性集中的任一属性;以及标识目标对象的第二属性和源对象的第二属性均为第二预设标识,其中,目标对象的第二属性为目标对象的属性集中的任一属性,并且目标对象的第二属性与目标对象的第一属性不相同,源对象的第二属性为源对象的属性集中的任一属性,并且源对象的第二属性与源对象的第一属性不相同,第二预设标识与第一预设标识不相同。
S204:判断源对象的属性集中是否存在与目标对象的目标属性相映射的源属性,其中,源对象为输出日志的应用程序的入参对象,目标对象为输出日志时使用到的对象,目标对象的属性集与源对象的属性集之间具有属性映射关系,目标属性为目标对象的属性集中的属性,即,目标对象的各个属性与源对象的各个属性之间具有属性映射关系,该属性映射关系可以在日志输出之前进行设置,在进行日志输出时,遍历目标对象属性集,匹配源对象的属性集中是否存与目标属性相映射的源属性。与上述步骤S102相同。
S206:在判断出源对象的属性集中存在与目标属性相映射的源属性的情况下,获取源属性的属性值,具体地,可以通过反射机制来获取源属性的属性值。与上述步骤S104相同。
S208:设置目标属性的属性值为源属性的属性值,得到格式化后的日志,具体性,同样可以通过反射机制来设置目标属性的属性值。其中,如果判断出源对象的属性集中不存在与目标属性相映射的源属性的话,则跳过对这个目标属性的属性值的设置,然后再次执行步骤S204至步骤S208,以对下一个目标属性进行匹配。与上述步骤S106相同。
本发明优选实施例所提供的日志输出方法,通过对目标对象的属性集与源对象的属性集之间的属性映射关系进行设置,实现了通过统一机制进行属性映射,达到了能够降低重复工作的投入成本,开发人员不用过多关注请求入参对象的变更对***标准日志的影响,仅需要维护属性的映射关系即可,其中,重复工作主要包括维护各个不同业务入参对象与标准格式的日志对象之间的属性转换,同时还降低了人为进行重复工作所带来的出错率。
进一步地,在本发明实施例中,步骤S104和步骤S206中通过反射机制来获取源属性的属性值的具体方式为:通过反射机制定位源属性的属性值的获取方式,然后,调用该获取方式获取到源属性的属性值。步骤S106和步骤S208中通过反射机制来设置目标属性的属性值的具体方式为:通过反射机制定位目标属性的属性值的设置方式,然后,调用该设置方式将目标属性的属性值赋值为源属性的属性值。其中,反射机制原理为通用原理,此处不再赘述。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例2
根据本发明实施例,还提供了一种用于实施上述日志输出方法的日志输出装置,该日志输出装置主要用于执行本发明实施例上述内容所提供的日志输出方法,以下对本发明实施例所提供的日志输出装置做具体介绍:
图3是根据本发明实施例的日志输出装置的示意图,如图3所示,该日志输出装置主要包括判断单元10、获取单元20和第一设置单元30,其中:
判断单元10用于判断源对象的属性集中是否存在与目标对象的目标属性相映射的源属性,其中,源对象为输出日志的应用程序的入参对象,目标对象为输出日志时使用到的对象,目标对象的属性集与源对象的属性集之间具有属性映射关系,目标属性为目标对象的属性集中的属性,即,目标对象的各个属性与源对象的各个属性之间具有属性映射关系,该属性映射关系可以在日志输出之前进行设置,在进行日志输出时,遍历目标对象属性集,匹配源对象的属性集中是否存与目标属性相映射的源属性。
获取单元20用于在判断出源对象的属性集中存在与目标属性相映射的源属性的情况下,获取源属性的属性值,具体地,可以通过反射机制来获取源属性的属性值。
第一设置单元30用于设置目标属性的属性值为源属性的属性值,得到格式化后的日志,具体性,同样可以通过反射机制来设置目标属性的属性值。其中,如果判断出源对象的属性集中不存在与目标属性相映射的源属性的话,则跳过对这个目标属性的属性值的设置,然后再次调用判断单元10、获取单元20和第一设置单元30,以对下一个目标属性进行匹配。
本发明实施例所提供的日志输出装置,通过预先设置好目标对象和源对象的属性映射关系,后续在进行日志输出时,对于某个目标对象的属性而言,获取到与之对应的源对象的属性值,并将获取到的属性值赋值到目标对象,生成日志。此种日志生成输出方式,实现了将应用程序的业务升级逻辑与日志输出进行解耦,能够自动化处理入参对象到标准化日志对象的转换逻辑,开发人员无需过多关注请求入参对象的变更对***标准日志的影响,无需硬编码,解决了现有技术中***输出标准格式的日志容易导致***维护成本高的问题,进而达到了降低***维护成本的效果。
图4是根据本发明优选实施例的日志输出装置的示意图,如图4所示,该优选实施例做提供的日志输出装置与图3中示出的日志输出装置相比,该日志输出装置还包括第二设置单元40,具体地,在判断单元10判断源对象的属性集中是否存在与目标对象的目标属性相映射的源属性之前,第二设置单元40用于设置目标对象的属性集与源对象的属性集之间的属性映射关系。其中,在本发明实施例中,第二设置单元40的结构组成包括但不限于如下结构:
结构一:第二设置单元40包括第一设置模块和第二设置模块,该第一设置模块和第二设置模块基于配置文件表达对属性映射关系的设置,如:源对象.属性1=目标对象.属性1,源对象.属性2=目标对象.属性3,具体地,第一设置模块用于设置目标对象的第一属性与源对象的第一属性相映射,其中,目标对象的第一属性为目标对象的属性集中的任一属性,源对象的第一属性为源对象的属性集中的任一属性;第二设置模块用于设置目标对象的第二属性与源对象的第二属性相映射,其中,目标对象的第二属性为目标对象的属性集中的任一属性,并且目标对象的第二属性与目标对象的第一属性不相同,源对象的第二属性为源对象的属性集中的任一属性,并且源对象的第二属性与源对象的第一属性不相同。
结构二:第二设置单元40包括第一标识模块和第二标识模块,该第一标识模块和第二标识模块基于面向对象编程语言的反射原理,通过预设的属性注解来标识,具体地,第一标识模块用于标识目标对象的第一属性和源对象的第一属性均为第一预设标识,其中,目标对象的第一属性为目标对象的属性集中的任一属性,源对象的第一属性为源对象的属性集中的任一属性;第二标识模块用于标识目标对象的第二属性和源对象的第二属性均为第二预设标识,其中,目标对象的第二属性为目标对象的属性集中的任一属性,并且目标对象的第二属性与目标对象的第一属性不相同,源对象的第二属性为源对象的属性集中的任一属性,并且源对象的第二属性与源对象的第一属性不相同,第二预设标识与第一预设标识不相同。
通过对目标对象的属性集与源对象的属性集之间的属性映射关系进行设置,实现了通过统一机制进行属性映射,达到了能够降低重复工作的投入成本,开发人员不用过多关注请求入参对象的变更对***标准日志的影响,仅需要维护属性的映射关系即可,其中,重复工作主要包括维护各个不同业务入参对象与标准格式的日志对象之间的属性转换,同时还降低了人为进行重复工作所带来的出错率。
进一步地,在本发明实施例中,获取单元20主要包括第一定位模块和第一调用模块,其中,第一定位模块用于通过反射机制定位源属性的属性值的获取方式;第一调用模块用于调用获取方式获取到源属性的属性值。
第一设置单元10主要包括第二定位模块和第二调用模块,其中,第二定位模块用于通过反射机制定位目标属性的属性值的设置方式;第二调用模块用于调用设置方式将目标属性的属性值赋值为源属性的属性值。
从以上的描述中,可以看出,本发明实现了将应用程序的业务升级逻辑与日志输出进行解耦,能够自动化处理入参对象到标准化日志对象的转换逻辑,开发人员无需过多关注请求入参对象的变更对***标准日志的影响,无需硬编码,进而达到了降低***维护成本的效果。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (12)

1.一种日志输出方法,其特征在于,包括:
判断源对象的属性集中是否存在与目标对象的目标属性相映射的源属性,其中,所述源对象为输出所述日志的应用程序的入参对象,所述目标对象为输出所述日志时使用到的对象,所述目标对象的属性集与所述源对象的属性集之间具有属性映射关系,所述目标属性为所述目标对象的属性集中的属性;
在判断出所述源对象的属性集中存在与所述目标属性相映射的源属性的情况下,获取所述源属性的属性值;以及
设置所述目标属性的属性值为所述源属性的属性值,得到格式化后的所述日志。
2.根据权利要求1所述的日志输出方法,其特征在于,在判断源对象的属性集中是否存在与目标对象的目标属性相映射的源属性之前,所述日志输出方法还包括:
设置所述目标对象的属性集与所述源对象的属性集之间的属性映射关系。
3.根据权利要求2所述的日志输出方法,其特征在于,设置所述目标对象的属性集与所述源对象的属性集之间的属性映射关系包括:
设置所述目标对象的第一属性与所述源对象的第一属性相映射,其中,所述目标对象的第一属性为所述目标对象的属性集中的任一属性,所述源对象的第一属性为所述源对象的属性集中的任一属性;以及
设置所述目标对象的第二属性与所述源对象的第二属性相映射,其中,所述目标对象的第二属性为所述目标对象的属性集中的任一属性,并且所述目标对象的第二属性与所述目标对象的第一属性不相同,所述源对象的第二属性为所述源对象的属性集中的任一属性,并且所述源对象的第二属性与所述源对象的第一属性不相同。
4.根据权利要求2所述的日志输出方法,其特征在于,设置所述目标对象的属性集与所述源对象的属性集之间的属性映射关系包括:
标识所述目标对象的第一属性和所述源对象的第一属性均为第一预设标识,其中,所述目标对象的第一属性为所述目标对象的属性集中的任一属性,所述源对象的第一属性为所述源对象的属性集中的任一属性;以及
标识所述目标对象的第二属性和所述源对象的第二属性均为第二预设标识,其中,所述目标对象的第二属性为所述目标对象的属性集中的任一属性,并且所述目标对象的第二属性与所述目标对象的第一属性不相同,所述源对象的第二属性为所述源对象的属性集中的任一属性,并且所述源对象的第二属性与所述源对象的第一属性不相同,所述第二预设标识与所述第一预设标识不相同。
5.根据权利要求1至4中任一项所述的日志输出方法,其特征在于,获取所述源属性的属性值包括:
定位所述源属性的属性值的获取方式;以及
调用所述获取方式获取到所述源属性的属性值。
6.根据权利要求1至4中任一项所述的日志输出方法,其特征在于,设置所述目标属性的属性值为所述源属性的属性值包括:
定位所述目标属性的属性值的设置方式;以及
调用所述设置方式将所述目标属性的属性值赋值为所述源属性的属性值。
7.一种日志输出装置,其特征在于,包括:
判断单元,用于判断源对象的属性集中是否存在与目标对象的目标属性相映射的源属性,其中,所述源对象为输出所述日志的应用程序的入参对象,所述目标对象为输出所述日志时使用到的对象,所述目标对象的属性集与所述源对象的属性集之间具有属性映射关系,所述目标属性为所述目标对象的属性集中的属性;
获取单元,用于在判断出所述源对象的属性集中存在与所述目标属性相映射的源属性的情况下,获取所述源属性的属性值;以及
第一设置单元,用于设置所述目标属性的属性值为所述源属性的属性值,得到格式化后的所述日志。
8.根据权利要求7所述的日志输出装置,其特征在于,所述日志输出装置还包括:
第二设置单元,用于设置所述目标对象的属性集与所述源对象的属性集之间的属性映射关系。
9.根据权利要求8所述的日志输出装置,其特征在于,所述第二设置单元包括:
第一设置模块,用于设置所述目标对象的第一属性与所述源对象的第一属性相映射,其中,所述目标对象的第一属性为所述目标对象的属性集中的任一属性,所述源对象的第一属性为所述源对象的属性集中的任一属性;以及
第二设置模块,用于设置所述目标对象的第二属性与所述源对象的第二属性相映射,其中,所述目标对象的第二属性为所述目标对象的属性集中的任一属性,并且所述目标对象的第二属性与所述目标对象的第一属性不相同,所述源对象的第二属性为所述源对象的属性集中的任一属性,并且所述源对象的第二属性与所述源对象的第一属性不相同。
10.根据权利要求8所述的日志输出装置,其特征在于,所述第二设置单元包括:
第一标识模块,用于标识所述目标对象的第一属性和所述源对象的第一属性均为第一预设标识,其中,所述目标对象的第一属性为所述目标对象的属性集中的任一属性,所述源对象的第一属性为所述源对象的属性集中的任一属性;以及
第二标识模块,用于标识所述目标对象的第二属性和所述源对象的第二属性均为第二预设标识,其中,所述目标对象的第二属性为所述目标对象的属性集中的任一属性,并且所述目标对象的第二属性与所述目标对象的第一属性不相同,所述源对象的第二属性为所述源对象的属性集中的任一属性,并且所述源对象的第二属性与所述源对象的第一属性不相同,所述第二预设标识与所述第一预设标识不相同。
11.根据权利要求7至10中任一项所述的日志输出装置,其特征在于,所述获取单元包括:
第一定位模块,用于定位所述源属性的属性值的获取方式;以及
第一调用模块,用于调用所述获取方式获取到所述源属性的属性值。
12.根据权利要求7至10中任一项所述的日志输出装置,其特征在于,所述第一设置单元包括:
第二定位模块,用于定位所述目标属性的属性值的设置方式;以及
第二调用模块,用于调用所述设置方式将所述目标属性的属性值赋值为所述源属性的属性值。
CN201410336600.5A 2014-07-15 2014-07-15 日志输出方法和装置 Active CN105260168B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410336600.5A CN105260168B (zh) 2014-07-15 2014-07-15 日志输出方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410336600.5A CN105260168B (zh) 2014-07-15 2014-07-15 日志输出方法和装置

Publications (2)

Publication Number Publication Date
CN105260168A true CN105260168A (zh) 2016-01-20
CN105260168B CN105260168B (zh) 2018-10-19

Family

ID=55099873

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410336600.5A Active CN105260168B (zh) 2014-07-15 2014-07-15 日志输出方法和装置

Country Status (1)

Country Link
CN (1) CN105260168B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106874181A (zh) * 2016-06-28 2017-06-20 阿里巴巴集团控股有限公司 一种接口转换的验证方法和装置
CN108228439A (zh) * 2018-01-04 2018-06-29 广东睿江云计算股份有限公司 一种程序与日志解耦的方法
CN111124382A (zh) * 2019-12-17 2020-05-08 北京金山云网络技术有限公司 Java中的属性赋值方法、装置及服务器
CN112748915A (zh) * 2020-12-30 2021-05-04 山东浪潮通软信息科技有限公司 一种基于StimulSoft的动态扩展业务函数的方法及设备
WO2022048668A1 (zh) * 2020-09-07 2022-03-10 中兴通讯股份有限公司 知识图谱构建方法和装置、检查方法、存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101060453A (zh) * 2006-04-20 2007-10-24 索尼株式会社 电子设备以及日志输出方法
CN101183333A (zh) * 2007-12-12 2008-05-21 腾讯科技(深圳)有限公司 一种调试程序的日志输出方法、装置和***
CN102831047A (zh) * 2011-06-16 2012-12-19 上海聚力传媒技术有限公司 动态调整监控对象的日志信息输出的方法、装置和设备
CN102970158A (zh) * 2012-11-05 2013-03-13 广东睿江科技有限公司 日志存储与处理的方法及日志服务器
CN103152391A (zh) * 2013-01-31 2013-06-12 杭州华三通信技术有限公司 一种日志输出方法和装置
CN103678089A (zh) * 2012-09-20 2014-03-26 北京南车时代信息技术有限公司 一种分布式软件***的日志输出方法及***

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101060453A (zh) * 2006-04-20 2007-10-24 索尼株式会社 电子设备以及日志输出方法
CN101183333A (zh) * 2007-12-12 2008-05-21 腾讯科技(深圳)有限公司 一种调试程序的日志输出方法、装置和***
CN102831047A (zh) * 2011-06-16 2012-12-19 上海聚力传媒技术有限公司 动态调整监控对象的日志信息输出的方法、装置和设备
CN103678089A (zh) * 2012-09-20 2014-03-26 北京南车时代信息技术有限公司 一种分布式软件***的日志输出方法及***
CN102970158A (zh) * 2012-11-05 2013-03-13 广东睿江科技有限公司 日志存储与处理的方法及日志服务器
CN103152391A (zh) * 2013-01-31 2013-06-12 杭州华三通信技术有限公司 一种日志输出方法和装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106874181A (zh) * 2016-06-28 2017-06-20 阿里巴巴集团控股有限公司 一种接口转换的验证方法和装置
CN106874181B (zh) * 2016-06-28 2020-09-29 阿里巴巴集团控股有限公司 一种接口转换的验证方法和装置
CN108228439A (zh) * 2018-01-04 2018-06-29 广东睿江云计算股份有限公司 一种程序与日志解耦的方法
CN108228439B (zh) * 2018-01-04 2021-05-11 广东睿江云计算股份有限公司 一种程序与日志解耦的方法
CN111124382A (zh) * 2019-12-17 2020-05-08 北京金山云网络技术有限公司 Java中的属性赋值方法、装置及服务器
WO2022048668A1 (zh) * 2020-09-07 2022-03-10 中兴通讯股份有限公司 知识图谱构建方法和装置、检查方法、存储介质
CN112748915A (zh) * 2020-12-30 2021-05-04 山东浪潮通软信息科技有限公司 一种基于StimulSoft的动态扩展业务函数的方法及设备

Also Published As

Publication number Publication date
CN105260168B (zh) 2018-10-19

Similar Documents

Publication Publication Date Title
CN110704518B (zh) 基于Flink引擎的业务数据处理方法及装置
CN103684828B (zh) 一种电信设备故障的处理方法和装置
CN105260168A (zh) 日志输出方法和装置
CN110601880B (zh) 一种云平台、业务处理方法、命令接口及计算机设备
CN105574082A (zh) 基于Storm的流处理方法及***
CN104202201A (zh) 一种日志处理方法、装置及终端
CN105786913A (zh) 一种面向云制造平台的erp集成数据库服务接口封装***及方法
CN108537422A (zh) 安全风险预警***和方法
CN111294730B (zh) 一种网络问题投诉信息处理的方法及装置
CN107508725A (zh) 用于自动化测试的方法,装置及***
CN102438080A (zh) 一种呼叫详细记录合成方法及装置
CN101576922A (zh) 接入***和接入方法
CN111027197A (zh) 一种电力设备仿真分析***及方法
CN110209722A (zh) 一种用于数据交换的数据接口
CN109344372B (zh) 基于大数据的单证生成方法及***
CN109284833A (zh) 为机器学习模型获取特征数据的方法、设备和存储介质
CN114648012A (zh) 一种票据处理方法、装置、电子设备及计算机可读介质
CN114492324A (zh) 组件数据统计方法及装置
KR20140123126A (ko) 변전소 구성 언어 기반의 데이터베이스 생성 방법 및 시스템
CN115086180A (zh) 网络组网方法、网络组网装置及电子设备
CN105678447A (zh) 电网上下级调度间cim模型校验服务化方法
CN101527653B (zh) 基于文本配置文件的多段关联方法
CN111835558A (zh) 一种边缘云平台多资源可视化控制方法
CN105183620A (zh) 一种对业务运行状态进行跟踪的方法及***
CN105227615B (zh) 一种分布式***数据传递的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20191216

Address after: P.O. Box 31119, grand exhibition hall, hibiscus street, 802 West Bay Road, Grand Cayman, British Cayman Islands

Patentee after: Innovative advanced technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Patentee before: ALIBABA GROUP HOLDING Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240223

Address after: Guohao Times City # 20-01, 128 Meizhi Road, Singapore

Patentee after: Advanced Nova Technology (Singapore) Holdings Ltd.

Country or region after: Singapore

Address before: KY1-1205, PO Box 31119, Grand Exhibition Hall, Hibiscus Street, 802 West Bay Road, Grand Cayman Island, British Cayman Islands

Patentee before: Innovative advanced technology Co.,Ltd.

Country or region before: Cayman Islands