CN113778503B - 一种软件的维护方法和装置 - Google Patents

一种软件的维护方法和装置 Download PDF

Info

Publication number
CN113778503B
CN113778503B CN202011090513.8A CN202011090513A CN113778503B CN 113778503 B CN113778503 B CN 113778503B CN 202011090513 A CN202011090513 A CN 202011090513A CN 113778503 B CN113778503 B CN 113778503B
Authority
CN
China
Prior art keywords
data
software
user
environment
state
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.)
Active
Application number
CN202011090513.8A
Other languages
English (en)
Other versions
CN113778503A (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.)
Beijing Jingdong Century Trading Co Ltd
Beijing Wodong Tianjun Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Wodong Tianjun Information Technology Co 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 Beijing Jingdong Century Trading Co Ltd, Beijing Wodong Tianjun Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN202011090513.8A priority Critical patent/CN113778503B/zh
Publication of CN113778503A publication Critical patent/CN113778503A/zh
Application granted granted Critical
Publication of CN113778503B publication Critical patent/CN113778503B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种软件的维护方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:获取维护请求,其中,维护请求包括:维护软件的第一用户的第一账户信息、以及使用软件的第二用户的第二账户信息;当根据第一账户信息和第二账户信息,确定出第一用户具有访问第二用户的账户权限时,获取第二用户使用软件时、软件所处运行环境的环境数据以及软件的状态数据;根据环境数据和状态数据,对软件在运行环境中的状态进行复现;根据复现结果,对软件进行维护。该实施方式能够基于软件在用户端运行时的环境数据和状态数据复现软件的问题,并使复现结果对应于用户端的运行环境,提高了维护人员解决问题的效率,进而提高了用户体验。

Description

一种软件的维护方法和装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种软件的维护方法和装置。
背景技术
一款软件产品从无到有一般需要经过三个阶段:研发阶段、测试阶段以及使用阶段。研发阶段主要是让软件能够实现预定的目的;测试阶段主要是寻找并修复软件的问题,使软件更加完善;使用阶段主要是供用户正常使用。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:
用户在使用软件时可能会出现各种问题,而此时软件的维护人员只能通过查看用户端运行软件时的运行日志来确定问题,由于软件的运行日志一般内容较多,导致维护人员确定问题的过程耗时较长,进而导致解决问题的效率较低。
发明内容
有鉴于此,本发明实施例提供一种软件的维护方法和装置,当软件运行出现问题时,能够获取到软件在用户端运行时的环境数据和状态数据,并基于环境数据和状态数据复现出软件在使用阶段出现的问题,而无需维护人员通过查看大量的运行日志的方式来发现问题,从而缩短了发现问题所需的时长,有利于提高解决问题的效率。并且,基于用户端的环境数据和状态数据来复现软件出现的问题,使得复现结果对应于用户端的运行环境,便于维护人员针对用户端的运行环境来解决问题,从而提高了解决问题的效率,进而提高了用户体验。
为实现上述目的,根据本发明实施例的一个方面,提供了一种软件的维护方法。
本发明实施例的一种软件的维护方法包括:
获取维护请求,其中,维护请求包括:维护软件的第一用户的第一账户信息、以及使用软件的第二用户的第二账户信息;
当根据第一账户信息和第二账户信息,确定出第一用户具有访问第二用户的账户权限时,获取第二用户使用软件时、软件所处运行环境的环境数据以及软件的状态数据;
根据环境数据和状态数据,对软件在运行环境中的状态进行复现;
根据复现结果,对软件进行维护。
可选地,
对软件在运行环境中的状态进行复现,以及根据复现结果,对软件进行维护,包括:
搭建与环境数据相对应的虚拟环境;
根据状态数据,在虚拟环境中运行软件,以复现软件在运行环境中的状态,以使第一用户根据复现结果确定软件在运行环境中的故障;
调整软件在虚拟环境中的状态参数,以对软件的故障进行修复。
可选地,
在对软件的故障进行修复之后,还包括:
将软件修复后得到的修复数据发送给第二用户,以使第二用户根据修复数据使用软件。
可选地,
当从维护请求中解析出第一数据地址时,该方法还包括:
确定第一数据地址中是否包括敏感数据的数据地址;
当第一数据地址中包括敏感数据的数据地址时,过滤敏感数据的数据地址,以使数据获取请求不包括敏感数据的数据地址,以使管理端返回的环境数据和状态数据中,不包括第二用户的敏感数据。
可选地,
确定第一数据地址中是否包括敏感数据的数据地址,包括:
确定地址配置表中是否包括第一数据地址,其中,地址配置表包括多个第二数据地址;
如果是,将维护请求中存在于地址配置表中的第一数据地址确定为敏感数据的数据地址。
可选地,
该方法还包括:
当获取到环境数据以及软件的状态数据时,对环境数据以及状态数据中包括的敏感数据进行脱敏处理;
根据脱敏处理后的环境数据以及状态数据,对软件在运行环境中的状态进行复现。
可选地,
根据第一账户信息和第二账户信息,确定出第一用户具有访问第二用户的账户权限,包括:
根据权限配置表,确定第一账户信息和第二账户信息是否相关联,其中,权限配置表包括多个第一账户信息和多个第二账户信息之间的关联关系;
如果是,确定第一用户具有访问第二用户的账户权限。
可选地,
获取第二用户使用软件时、软件所处运行环境的环境数据以及软件的状态数据,包括:
使用第二账户信息向软件的管理端发送数据获取请求,以获取管理端根据数据获取请求返回的、与第二账户信息对应的环境数据和状态数据。
可选地,
环境数据包括以下任意一个或多个:操作系统版本、CPU使用率、运行内存使用率、虚拟内存使用率以及网络状态。
可选地,
状态数据包括:用户端本地缓存数据状态和/或软件扩展包状态。
为实现上述目的,根据本发明实施例的又一方面,提供了一种软件的维护装置。
本发明实施例的一种软件的维护装置包括请求获取模块、数据获取模块、状态复现模块以及软件维护模块;其中:
请求获取模块,用于获取维护请求,其中,维护请求包括:维护软件的第一用户的第一账户信息、以及使用软件的第二用户的第二账户信息;
数据获取模块,用于当根据请求获取模块获取的第一账户信息和第二账户信息,确定出第一用户具有访问第二用户的账户权限时,获取第二用户使用软件时、软件所处运行环境的环境数据以及软件的状态数据;
状态复现模块,用于根据数据获取模块获取到的环境数据和状态数据,对软件在所处环境中的状态进行复现;
软件维护模块,用于根据状态复现模块复现的结果,对软件进行维护。
为实现上述目的,根据本发明实施例的又一方面,提供了一种软件的维护终端。
本发明实施例的一种维护软件的电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本发明实施例的一种软件的维护方法。
为实现上述目的,根据本发明实施例的再一方面,提供了一种计算机可读存储介质。
本发明实施例的一种计算机可读存储介质,其上存储有计算机程序,程序被处理器执行时实现本发明实施例的一种软件的维护方法。
上述发明中的一个实施例具有如下优点或有益效果:接收到复现请求后,根据复现请求中包括的第一账户信息和第二账户信息,确定出维护软件的第一用户有权限访问使用软件的第二用户的账户,进而获取第二用户运行软件时的环境数据以及软件自身的状态数据,然后第一用户根据环境数据和状态数据,对第二用户的软件状态进行复现,并根据复现结果对软件进行维护。通过上述描述可见,当软件运行出现问题时,能够获取到软件在用户端运行时的环境数据和状态数据,并基于环境数据和状态数据复现出软件在使用阶段出现的问题,而无需维护人员通过查看大量的运行日志的方式来发现问题,从而缩短了发现问题所需的时长,有利于提高解决问题的效率。并且,基于用户端的环境数据和状态数据来复现软件出现的问题,使得复现结果对应于用户端的运行环境,便于维护人员针对用户端的运行环境来解决问题,从而提高了解决问题的效率,进而提高了用户体验。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明实施例的一种软件的维护方法的主要步骤的示意图;
图2是根据本发明实施例的另一种软件的维护方法的主要步骤的示意图;
图3是根据本发明实施例的一种软件的维护装置的主要模块的示意图;
图4是本发明实施例可以应用于其中的示例性系统架构图;
图5是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
需要指出的是,在不冲突的情况下,本发明的实施例以及实施例中的技术特征可以相互结合。
图1是根据本发明实施例的一种软件的维护方法的主要步骤的示意图。
如图1所示,本发明实施例的一种软件的维护方法主要包括以下步骤:
步骤S101:获取维护请求,其中,维护请求包括:维护软件的第一用户的第一账户信息、以及使用软件的第二用户的第二账户信息。
在本发明实施例中,维护请求可以由维护软件的第一用户发出。在软件出现故障后、维护请求发出前,可能是使用软件的第二用户通过软件的客诉系统、电话或者其它联系方式向维护软件的第一用户报告该故障,也可能是软件自动向维护软件的第一用户报告该故障。维护软件的第一用户在接到故障报告后会通过浏览器发送维护请求,其中,维护请求包括维护软件的第一用户的第一账户信息以及使用软件的第二用户的第二账户信息,第一用户的第一账户信息用于标识该维护请求由维护软件的人员发出,第二用户的账户信息用于标识该维护请求想要访问的是使用软件并出现故障的人员的软件数据。
步骤S102:当根据第一账户信息和第二账户信息,确定出第一用户具有访问第二用户的账户权限时,获取第二用户使用软件时、软件所处运行环境的环境数据以及软件的状态数据。
在本发明实施例中,根据第一账户信息和第二账户信息,确定第一用户具有访问第二用户的账户权限的方法可以是:根据权限配置表,确定第一账户信息和第二账户信息是否相关联,其中,权限配置表包括多个第一账户信息和多个第二账户信息之间的关联关系;如果相关联,则确定第一用户具有访问第二用户的账户权限。
在本发明实施例中,权限配置表可以如下表1所示:
表1
第一账户ID 第二账户ID 备注
aaa 123 第一用户A配置项
aaa 456 第一用户A配置项
bbb 789 第一用户B配置项
其中,第一账户信息和第二账户信息分别为第一账户ID和第二账户ID。第二账户有三个,其ID分别是“123”、“456”和“789”,这三个第二账户可能均属于一个第二用户,也可能分别属于两个或三个第二用户。第一账户有两个,其ID分别是“aaa”和“bbb”,从备注栏可以看出第一账户ID“aaa”属于第一用户A,第一账户ID“bbb”属于第一用户B。该权限配置表将第一账户ID“aaa”与第二账户ID“123”以及“456”相关联,将第一账户ID“bbb”与第二账户ID“789”相关联。如果获取到的维护请求中包括的是第一用户的第一账户ID“aaa”和第二用户的第二账户ID“123”,则根据该权限配置表,首先确定“aaa”和“123”相关联,进而认定第一用户A具有访问该第二用户ID为“123”的第二账户的权限,并允许第一用户A获取到软件运行时所处运行环境的环境数据、以及第二用户在运行环境中使用软件的状态数据。如果获取到的维护请求中包括的是第一用户的第一账户ID“bbb”和第二用户的第二账户ID“456”,则根据该权限配置表,首先确定“bbb”和“456”并不关联,进而认定第一用户B没有访问该第二用户ID为“456”的第二账户的权限,并禁止第一用户B获取到软件运行时所处运行环境的环境数据、以及第二用户在运行环境中使用软件的状态数据。
在本发明实施例中,环境数据可以包括以下任意一个或多个:操作系统版本、CPU使用率、运行内存使用率、虚拟内存使用率以及网络状态。状态数据可以包括:用户端本地缓存数据状态和/或软件扩展包状态。
在本发明实施例中,获取软件运行时所处运行环境的环境数据、以及第二用户在运行环境中使用软件的状态数据的方法可以是:使用第二账户信息,向软件的管理端发送数据获取请求,以获取管理端根据数据获取请求返回的、与第二账户信息对应的环境数据和状态数据。其中,数据获取请求可以直接发送至软件的管理端,也可以先发送至软件的代理服务器,然后由代理服务器将该数据获取请求转发至软件的管理端。
在本发明实施例中,可以使用第二账户信息生成数据获取请求并发送至软件的管理端,以获取第二用户的数据。也可以将复现请求的登录用户ID由第一用户的第一账户信息置换为第二用户的第二置换信息,然后将该置换登录用户ID后的复现请求发送至软件的管理端,以获取第二用户的数据。对此本方案不作具体限定。
在本发明实施例中,由于维护请求可能涉及第二用户的敏感数据,例如账户余额、会员权益以及订单状态等,此时可采取多种方式对敏感数据进行保护。例如,对维护请求想要访问的数据地址进行检查,将涉及敏感数据的数据地址过滤之后再通过数据获取请求发送,以防止维护请求访问到敏感数据的数据地址;或者在发送数据获取请求时不设限制,而是在获取到数据之后,对获取到的数据进行检查,将其中的敏感数据进行脱敏处理,使获取到的数据中不包括敏感数据。
下面以通过检查维护请求想要访问的数据地址,防止维护请求访问到敏感数据的数据地址为例,对本发明实施例提供的软件的维护方法进行说明。
如图2所示,本发明实施例的另一种软件的维护方法主要包括以下步骤:
步骤S201:获取维护请求,并从维护请求中解析第一数据地址。
在本发明实施例中,第一数据地址是维护请求中包括的、维护软件的第一用户想获取到的数据的地址。
步骤S202:确定地址配置表中是否包括从维护请求中解析出的第一数据地址,其中,地址配置表包括多个第二数据地址。
在本发明实施例中,地址配置表可以如下表2所示:
表2
第二数据地址 功能描述 不可访问原因
xxx.com/user/receiveCoupon 用户领取优惠券 会改变用户优惠券状态
xxx.com/user/transferAccount 用户转账 会改变用户资产状态
xxx.com/open/submitOrder 用户下单购买 会改变用户订单状态
其中,第二数据地址是预设的第二用户的敏感数据的数据地址,分别为“xxx.com/user/receiveCoupon”、“xxx.com/user/transferAccount”以及“xxx.com/open/submitOrder”。功能描述是对该第二数据地址的作用的简述,不可访问原因则简要解释了将该第二数据地址作为第二用户的敏感数据的数据地址并写入地址配置表的原因。在地址配置表中可以包括功能描述和不可访问原因,以方便对地址配置表进行管理,也可以不包括,对此本方案不作具体限定。
步骤S203:当地址配置表中包括第一数据地址时,确定维护请求中、并存在于地址配置表中的第一数据地址为敏感数据的数据地址。
举例来说,从维护请求中解析出了三个第一数据地址,分别为:“xxx.com/user/transferAccount”、“xxx.com/open/submitOrder”以及“xxx.com/user/userId”,在上述地址配置表中分别对这三个第一数据地址进行查找,确定地址配置表中包括“xxx.com/user/transferAccount”和“xxx.com/open/submitOrder”,但不包括“xxx.com/user/userId”。因此,将“xxx.com/user/transferAccount”和“xxx.com/open/submitOrder”作为敏感数据的数据地址,而“xxx.com/user/userId”不作为敏感数据的数据地址。
步骤S204:过滤敏感数据的数据地址,以使向软件的管理端发送的数据获取请求中不包括敏感数据的数据地址,以使管理端返回的环境数据和状态数据中不包括第二用户的敏感数据。
在本发明实施例中,在对维护请求中的第一数据地址检查完毕后,对其中的敏感数据的数据地址进行过滤,可以是将该敏感数据的数据地址直接删除,然后生成数据获取请求,该数据获取请求中自然不再包括敏感数据的数据地址,以使软件的管理端返回的环境数据和状态数据中不包括第二用户的敏感数据。
通过上述描述可见,在本发明实施例中,可以通过检查维护请求想要访问的数据地址,防止维护请求访问到敏感数据的数据地址。具体而言:当从维护请求中解析出第一数据地址时,确定地址配置表中是否包括该第一数据地址,其中,地址配置表包括多个第二数据地址;如果是,则确定维护请求中、并存在于地址配置表中的第一数据地址为敏感数据的数据地址;过滤敏感数据的数据地址,以使数据获取请求不包括敏感数据的数据地址,以使管理端返回的环境数据和状态数据中,不包括第二用户的敏感数据,进而使得维护软件的第一用户无法访问使用软件的第二用户的敏感数据,既保护了第二用户的第二账户的安全,又保证了第二用户的隐私不被泄露。
另外,在本发明实施例还可以在发送数据获取请求时不设限制,而是在获取到数据之后,对获取到的数据进行检查,将其中的敏感数据进行脱敏处理,使获取到的数据中不包括敏感数据。具体而言:当获取到环境数据以及软件的状态数据时,对环境数据以及状态数据中包括的敏感数据进行脱敏处理;根据脱敏后的环境数据以及状态数据,对软件在运行环境中的状态进行复现。其中,对敏感数据进行脱敏处理可以是对敏感数据进行加密,例如将账户余额“1670.25”加密为“****.25”;也可以是对敏感数据的部分或全部字段进行修改,例如将账户余额“1670.25”修改为“9999.99”。对于上述敏感数据的脱敏方法,本方案不作具体限定。通过上述描述可见,本发明实施例可以使维护软件的第一用户无法访问使用软件的第二用户的敏感数据,既保护了第二用户的第二账户的安全,又保证了第二用户的隐私不被泄露。
步骤S103:根据环境数据和状态数据,对软件在运行环境中的状态进行复现。
在本发明实施例中,在获取到软件运行时所处运行环境的环境数据、以及第二用户在运行环境中使用软件的状态数据后,维护软件的第一用户可以在虚拟机中搭建与环境数据相对应的虚拟环境,再根据状态数据,在搭建的虚拟环境中运行软件,以复现出软件在运行环境中的状态。通过本发明实施例提供的方法,由于搭建出了相同的虚拟环境,并在该环境下根据状态数据运行软件,使得在第一用户维护端运行的软件更加接近第二用户的真实软件状态,从而使第一用户能更加快速地复现软件的故障。
步骤S104:根据复现结果,对软件进行维护。
在本发明实施例中,维护软件的第一用户在虚拟机中搭建与环境数据相对应的虚拟环境,再根据状态数据,在搭建的虚拟环境中运行软件,复现出软件在运行环境中的状态后,即根据该复现结果对软件出现的故障进行修复和维护,并将维护后得到的修复数据发送给使用软件的第二用户,以使第二用户根据修复数据使用软件。其中,第一用户可以直接指导第二用户根据修复数据进行操作,也可以将修复数据打包发送给第二用户,第二用户下载解压后软件会自动更新,完成自身故障的修复,对此本方案不作具体限定。
根据本发明实施例的软件的维护方法可以看出,接收到复现请求后,根据复现请求中包括的第一账户信息和第二账户信息,确定出维护软件的第一用户有权限访问使用软件的第二用户的账户,进而获取第二用户运行软件时的环境数据以及软件自身的状态数据,然后第一用户根据环境数据和状态数据,对第二用户的软件状态进行复现,并根据复现结果对软件进行维护。通过上述描述可见,当软件运行出现问题时,能够获取到软件在用户端运行时的环境数据和状态数据,并基于环境数据和状态数据复现出软件在使用阶段出现的问题,而无需维护人员通过查看大量的运行日志的方式来发现问题,从而缩短了发现问题所需的时长,有利于提高解决问题的效率。并且,基于用户端的环境数据和状态数据来复现软件出现的问题,使得复现结果对应于用户端的运行环境,便于维护人员针对用户端的运行环境来解决问题,从而提高了解决问题的效率,进而提高了用户体验。
图3是根据本发明实施例的一种软件的维护装置的主要模块的示意图。
如图3所示,本发明实施例的一种软件的维护装置300包括:请求获取模块301、数据获取模块302、状态复现模块303以及软件维护模块304;其中:
请求获取模块301,用于获取维护请求,其中,维护请求包括:维护软件的第一用户的第一账户信息、以及使用软件的第二用户的第二账户信息;
数据获取模块302,用于当根据请求获取模块301获取的第一账户信息和第二账户信息,确定出第一用户具有访问第二用户的账户权限时,获取第二用户使用软件时、软件所处运行环境的环境数据以及软件的状态数据;
状态复现模块303,用于根据数据获取模块302获取到的环境数据和状态数据,对软件在所处环境中的状态进行复现;
软件维护模块304,用于根据状态复现模块303复现的结果,对软件进行维护。
在本发明实施例中,状态复现模块303用于搭建与环境数据相对应的虚拟环境,并根据状态数据,在虚拟环境中运行软件,以复现软件在运行环境中的状态,以使第一用户确定软件在运行环境中的故障;软件维护模块304用于根据状态复现模块303复现的结果,调整软件在虚拟环境中的状态参数,以对软件的故障进行修复。
在本发明实施例中,在对软件的故障进行修复之后,软件维护模块304进一步用于:将维护后得到的修复数据发送给第二用户,以使第二用户根据修复数据使用软件。
在本发明实施例中,当从维护请求中解析出第一数据地址时,数据获取模块302进一步用于:确定第一数据地址中是否包括敏感数据的数据地址;当第一数据地址中包括敏感数据的数据地址时,过滤敏感数据的数据地址,以使数据获取请求不包括敏感数据的数据地址,以使管理端返回的环境数据和状态数据中,不包括第二用户的敏感数据。
在本发明实施例中,数据获取模块302用于:确定地址配置表中是否包括从维护请求中解析出的第一数据地址,其中,地址配置表包括多个第二数据地址;如果是,确定维护请求中、并存在于地址配置表中的第一数据地址为敏感数据的数据地址。
在本发明实施例中,数据获取模块302用于:当获取到环境数据以及软件的状态数据时,对环境数据以及状态数据中包括的敏感数据进行脱敏处理;根据脱敏后的环境数据以及状态数据,对软件在运行环境中的状态进行复现。
在本发明实施例中,数据获取模块302用于:根据权限配置表,确定第一账户信息和第二账户信息是否相关联,其中,权限配置表包括多个第一账户信息和多个第二账户信息之间的关联关系;如果是,确定第一用户具有访问第二用户的账户权限。
在本发明实施例中,数据获取模块302用于使用第二账户信息向软件的管理端发送数据获取请求,以获取管理端根据数据获取请求返回的、与第二账户信息对应的环境数据和状态数据。
根据本发明实施例的一种软件的维护装置可以看出,接收到复现请求后,根据复现请求中包括的第一账户信息和第二账户信息,确定出维护软件的第一用户有权限访问使用软件的第二用户的账户,进而获取第二用户运行软件时的环境数据以及软件自身的状态数据,然后第一用户根据环境数据和状态数据,对第二用户的软件状态进行复现,并根据复现结果对软件进行维护。通过上述描述可见,当软件运行出现问题时,能够获取到软件在用户端运行时的环境数据和状态数据,并基于环境数据和状态数据复现出软件在使用阶段出现的问题,而无需维护人员通过查看大量的运行日志的方式来发现问题,从而缩短了发现问题所需的时长,有利于提高解决问题的效率。并且,基于用户端的环境数据和状态数据来复现软件出现的问题,使得复现结果对应于用户端的运行环境,便于维护人员针对用户端的运行环境来解决问题,从而提高了解决问题的效率,进而提高了用户体验。
图4示出了可以应用本发明实施例的一种软件的维护方法或软件的维护装置的示例性系统架构400。
如图4所示,系统架构400可以包括终端设备401、402、403,网络404和服务器405。网络404用以在终端设备401、402、403和服务器405之间提供通信链路的介质。网络404可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备401、402、403通过网络404与服务器405交互,以接收或发送消息等。终端设备401、402、403上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备401、402、403可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器405可以是提供各种服务的服务器,例如对用户利用终端设备401、402、403所浏览的购物类网站提供支持的后台管理服务器。后台管理服务器可以对接收到的产品信息查询请求等数据进行分析等处理,并将处理结果(例如目标推送信息、产品信息)反馈给终端设备。
需要说明的是,本发明实施例所提供的软件的维护方法一般由电子设备405执行,相应地,软件的维护装置一般设置于电子设备405中。
应该理解,图4中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图5,其示出了适于用来实现本发明实施例的终端设备的计算机系统500的结构示意图。图5示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,计算机系统500包括中央处理单元(CPU)501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储部分508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。在RAM 503中,还存储有系统500操作所需的各种程序和数据。CPU 501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
以下部件连接至I/O接口505:包括键盘、鼠标等的输入部分506;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至I/O接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。在该计算机程序被中央处理单元(CPU)501执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括请求获取模块、数据获取模块、状态复现模块以及软件维护模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,状态复现模块还可以被描述为“对软件在所处环境中的状态进行复现模块”。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:获取维护请求,其中,维护请求包括:维护软件的第一用户的第一账户信息、以及使用软件的第二用户的第二账户信息;当根据第一账户信息和第二账户信息,确定出第一用户具有访问第二用户的账户权限时,获取第二用户使用软件时、软件所处运行环境的环境数据以及软件的状态数据;根据环境数据和状态数据,对软件在运行环境中的状态进行复现;根据复现结果,对软件进行维护。
根据本发明实施例的技术方案,接收到复现请求后,根据复现请求中包括的第一账户信息和第二账户信息,确定出维护软件的第一用户有权限访问使用软件的第二用户的账户,进而获取第二用户运行软件时的环境数据以及软件自身的状态数据,然后第一用户根据环境数据和状态数据,对第二用户的软件状态进行复现,并根据复现结果对软件进行维护。通过上述描述可见,当软件运行出现问题时,能够获取到软件在用户端运行时的环境数据和状态数据,并基于环境数据和状态数据复现出软件在使用阶段出现的问题,而无需维护人员通过查看大量的运行日志的方式来发现问题,从而缩短了发现问题所需的时长,有利于提高解决问题的效率。并且,基于用户端的环境数据和状态数据来复现软件出现的问题,使得复现结果对应于用户端的运行环境,便于维护人员针对用户端的运行环境来解决问题,从而提高了解决问题的效率,进而提高了用户体验。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

Claims (11)

1.一种软件的维护方法,其特征在于,包括:
获取维护请求,其中,所述维护请求包括:维护所述软件的第一用户的第一账户信息、以及使用所述软件的第二用户的第二账户信息;
当根据所述第一账户信息和所述第二账户信息,确定出所述第一用户具有访问所述第二用户的账户权限时,获取所述第二用户使用所述软件时、所述软件所处运行环境的环境数据以及所述软件的状态数据;
根据所述环境数据和所述状态数据,对所述软件在所述运行环境中的状态进行复现;根据复现结果,对所述软件进行维护;具体包括:搭建与所述环境数据相对应的虚拟环境;根据所述状态数据,在所述虚拟环境中运行所述软件,以复现所述软件在所述运行环境中的状态,以使所述第一用户根据所述复现结果确定所述软件在所述运行环境中的故障;调整所述软件在所述虚拟环境中的状态参数,以对所述软件的故障进行修复。
2.根据权利要求1所述的方法,其特征在于,在所述对所述软件的故障进行修复之后,还包括:
将所述软件修复后得到的修复数据发送给所述第二用户,以使所述第二用户根据所述修复数据使用所述软件。
3.根据权利要求1所述的方法,其特征在于,当从所述维护请求中解析出第一数据地址时,该方法还包括:
确定所述第一数据地址中是否包括敏感数据的数据地址;
当所述第一数据地址中包括所述敏感数据的数据地址时,过滤所述敏感数据的数据地址,以使数据获取请求不包括所述敏感数据的数据地址,以使管理端返回的所述环境数据和所述状态数据中,不包括所述第二用户的敏感数据。
4.根据权利要求3所述的方法,其特征在于,所述确定所述第一数据地址中是否包括敏感数据的数据地址,包括:
确定地址配置表中是否包括所述第一数据地址,其中,所述地址配置表包括多个第二数据地址;
如果是,将所述维护请求中存在于所述地址配置表中的第一数据地址确定为所述敏感数据的数据地址。
5.根据权利要求1所述的方法,其特征在于,该方法还包括:
当获取到所述环境数据以及所述软件的状态数据时,对所述环境数据以及所述状态数据中包括的敏感数据进行脱敏处理;
根据脱敏处理后的所述环境数据以及所述状态数据,对所述软件在所述运行环境中的状态进行复现。
6.根据权利要求1所述的方法,其特征在于,所述根据所述第一账户信息和所述第二账户信息,确定出所述第一用户具有访问所述第二用户的账户权限,包括:
根据权限配置表,确定所述第一账户信息和所述第二账户信息是否相关联,其中,所述权限配置表包括多个第一账户信息和多个第二账户信息之间的关联关系;
如果是,确定所述第一用户具有访问所述第二用户的账户权限。
7.根据权利要求1所述的方法,其特征在于,所述获取所述第二用户使用所述软件时、所述软件所处运行环境的环境数据以及所述软件的状态数据,包括:
使用所述第二账户信息向所述软件的管理端发送数据获取请求,以获取所述管理端根据所述数据获取请求返回的、与所述第二账户信息对应的所述环境数据和所述状态数据。
8.根据权利要求1所述的方法,其特征在于,
所述环境数据包括以下任意一个或多个:操作系统版本、CPU使用率、运行内存使用率、虚拟内存使用率以及网络状态;
和/或,
所述状态数据包括:用户端本地缓存数据状态和/或软件扩展包状态。
9.一种软件的维护装置,其特征在于,包括请求获取模块、数据获取模块、状态复现模块以及软件维护模块;其中:
所述请求获取模块,用于获取维护请求,其中,所述维护请求包括:维护所述软件的第一用户的第一账户信息、以及使用所述软件的第二用户的第二账户信息;
所述数据获取模块,用于当根据所述请求获取模块获取的所述第一账户信息和所述第二账户信息,确定出所述第一用户具有访问所述第二用户的账户权限时,获取所述第二用户使用所述软件时、所述软件所处运行环境的环境数据以及所述软件的状态数据;
所述状态复现模块,用于根据所述数据获取模块获取到的所述环境数据和所述状态数据,对所述软件在所处环境中的状态进行复现;具体用于:搭建与环境数据相对应的虚拟环境,并根据状态数据,在虚拟环境中运行软件,以复现软件在运行环境中的状态,以使第一用户确定软件在运行环境中的故障;
所述软件维护模块,用于根据所述状态复现模块复现的结果,对所述软件进行维护;具体用于调整所述软件在所述虚拟环境中的状态参数,以对所述软件的故障进行修复。
10.一种维护软件的电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-8中任一所述的方法。
11.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-8中任一所述的方法。
CN202011090513.8A 2020-10-13 2020-10-13 一种软件的维护方法和装置 Active CN113778503B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011090513.8A CN113778503B (zh) 2020-10-13 2020-10-13 一种软件的维护方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011090513.8A CN113778503B (zh) 2020-10-13 2020-10-13 一种软件的维护方法和装置

Publications (2)

Publication Number Publication Date
CN113778503A CN113778503A (zh) 2021-12-10
CN113778503B true CN113778503B (zh) 2024-06-14

Family

ID=78835121

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011090513.8A Active CN113778503B (zh) 2020-10-13 2020-10-13 一种软件的维护方法和装置

Country Status (1)

Country Link
CN (1) CN113778503B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114217803A (zh) * 2021-12-23 2022-03-22 北京达佳互联信息技术有限公司 页面功能问题处理方法、装置及电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108334436A (zh) * 2018-01-31 2018-07-27 平安普惠企业管理有限公司 应用软件的优化方法、装置、设备及计算机可读存储介质
CN108989362A (zh) * 2017-05-31 2018-12-11 北京京东尚科信息技术有限公司 一种静态资源的处理方法和装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8458688B2 (en) * 2009-12-28 2013-06-04 International Business Machines Corporation Virtual machine maintenance with mapped snapshots
US8577960B2 (en) * 2010-07-29 2013-11-05 Sap Ag Providing status information for components in a distributed landscape
CN110196803B (zh) * 2018-02-27 2024-04-16 北京京东尚科信息技术有限公司 一种软件缺陷培训方法和系统
CN110417575A (zh) * 2019-06-17 2019-11-05 平安科技(深圳)有限公司 运维监控平台的告警方法、装置和计算机设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108989362A (zh) * 2017-05-31 2018-12-11 北京京东尚科信息技术有限公司 一种静态资源的处理方法和装置
CN108334436A (zh) * 2018-01-31 2018-07-27 平安普惠企业管理有限公司 应用软件的优化方法、装置、设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN113778503A (zh) 2021-12-10

Similar Documents

Publication Publication Date Title
CN111460129B (zh) 标识生成的方法、装置、电子设备和存储介质
CN110958237A (zh) 一种权限校验的方法和装置
CN109154968B (zh) 用于组织内的安全且高效的通信的系统和方法
CN109522751B (zh) 访问权限控制方法、装置、电子设备及计算机可读介质
CN112825096B (zh) 一种数据脱敏方法和装置
CN112559024A (zh) 一种生成交易码变更列表的方法和装置
CN116303608A (zh) 一种应用服务的数据处理方法和装置
CN113778503B (zh) 一种软件的维护方法和装置
CN113282589A (zh) 一种数据获取方法和装置
CN111953718B (zh) 一种页面调试方法和装置
CN112532734B (zh) 报文敏感信息检测方法和装置
CN112559233B (zh) 识别故障类型的方法、装置、设备和计算机可读介质
CN112732471B (zh) 接口返回数据的纠错方法和纠错装置
CN114372078A (zh) 一种数据安全防护方法和装置
CN112241332B (zh) 一种接口补偿的方法和装置
CN110602074B (zh) 一种基于主从关联的业务身份使用方法、装置及系统
CN109656519B (zh) 一种业务数据自动化接入方法和装置
CN112817603A (zh) 应用程序处理方法、装置、电子设备、系统和存储介质
CN113765866A (zh) 一种登录远程主机的方法和装置
CN105677692A (zh) 实时提供信息查询的信息系统与方法
CN117675846A (zh) 缓存集群维护方法、装置、电子设备和计算机可读介质
CN114301778B (zh) 一种控制访问的方法和装置
CN117149888B (zh) 数据处理的方法、装置、设备和计算机可读介质
CN113760886B (zh) 提供数据服务的方法、装置、设备和计算机可读介质
CN110727739B (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
GR01 Patent grant
GR01 Patent grant