用户系统中的问题管理的制作方法

    专利查询2022-08-22  98



    1.本发明涉及数字计算机系统领域,更具体地,涉及一种问题管理方法。


    背景技术:

    2.问题管理可以包括诊断通过问题管理过程标识的问题的根本原因并且确定对那些问题的解决所需的活动。然而,问题管理还负责确保通过适当的控制过程来实现解决方案。


    技术实现要素:

    3.不同实施例提供了如独立权利要求的主题所描述的问题管理方法、计算机系统和计算机程序产品。在从属权利要求中描述了有利的实施例。如果本发明的实施例不相互排斥,则它们可以自由地彼此组合。
    4.在一个方面,本发明涉及一种计算机实现的方法,包括:检测用户系统中的错误;根据所检测到的错误提供(或接收)经签名的包(package),包至少包括脚本(脚本可以被命名为校正脚本或诊断脚本);由用户系统使用包的签名验证包的真实性;以及如果包是真实的,则由用户系统执行脚本。
    5.在另一方面,本发明涉及一种包括计算机可读存储介质的计算机程序产品,计算机可读存储介质具有随其体现的计算机可读程序代码,计算机可读程序代码被配置为实现根据前述实施例的方法的所有步骤。
    6.在另一方面,本发明涉及一种计算机系统,其包括处理器和计算机可读存储介质,计算机可读存储介质具有随其体现的计算机可读程序代码,计算机可读程序代码被配置为执行一种方法,方法包括:检测用户系统中的错误;根据所检测的错误提供(或接收)签名包,签名包至少包括脚本;由用户系统使用包的签名验证包的真实性;以及如果包是真实的,则由用户系统执行脚本。
    附图说明
    7.在本发明的以下实施例中,仅以举例的方式,参考附图更详细地解释了本发明的实施例,在附图中:
    8.图1示出了根据本主题的实例的服务系统。
    9.图2示出了根据本主题的示例的服务系统。
    10.图3是根据本主题的示例的问题管理方法的流程图。
    11.图4是根据本主题的示例的用于修复用户系统中检测到的错误的流程图。
    12.图5a、图5b描绘了根据本主题的示例的用于修复用户系统中检测到的错误的流程图。
    13.图6表示适于实现如本公开中所涉及的一个或多个方法步骤的计算机化系统。
    具体实施方式
    14.本发明的各种实施例的描述将出于说明的目的而呈现,但不旨在是详尽的或限于所公开的实施例。在不背离所描述的实施例的范围和精神的情况下,许多修改和变化对本领域的普通技术人员而言将是明显的。选择在此使用的术语以最佳地解释实施例的原理、实际应用或在市场上找到的技术上的技术改进,或使得本领域普通技术人员能够理解在此公开的实施例。
    15.用户系统可以由服务提供方提供。用户系统的用户(例如,客户)可以通过预定义的服务接口例如使用工作站与用户系统进行交互。服务接口可以实现对用户系统的受限访问。用户系统可以具有多个功能。服务接口可以实现对用户系统的最小数量的功能的访问,例如,一个或两个功能。例如,服务接口可以是用于跟踪/日志文件收集的通用接口,例如,用户可以仅监测用户系统的输出/日志。因此,第一个问题可能是服务接口不足以处理用户系统中的特定问题——更不用说解决问题。
    16.用户系统可以是装置(appliance)。该装置可以例如是诸如ibm db2数据库系统的存储设备。然而,该装置可能是复杂的,因为它可以由彼此交互的许多部件组成。在不同实施例中,该装置可以是由软件、硬件或软件和硬件两者构成的任何适合的计算机系统。这可能是第二问题的来源,因为装置的行为可能由于部件之间的相关性或其他类型的交互而难以建模或预测。因此,理解和修复用户系统中的错误或问题可能是非常消耗资源的任务,特别是如果它不是由服务提供方(例如,装置的制造商或经授权的服务提供方)执行的话。检测到的错误可以是用户系统中的缺陷或故障,其导致用户系统产生不正确的或非预期的结果,或以非预期的方式表现。检测到的错误可以是例如软件和/或硬件错误。
    17.本主题可以通过提供服务提供方的问题管理系统来解决这些问题,问题管理系统创建和提供用于修复所检测到的错误的包。用户系统因此可以使用所提供的包来修复错误,而不必在用户系统中本地找到校正。在另一示例中,执行所提供的包中的预定义命令的脚本可以使得能够标识一个或多个根本原因,特别是对于基于硬件的错误。包可被称为“服务包”。服务包可以收集诊断数据。例如,如果硬件具有问题,则服务包可以执行缩小可能原因的脚本以找到故障的根本原因。
    18.然而,因为该服务包不需要由该装置的制造商或一个经授权的服务提供方来运行,所以如果不控制一个所提供的服务包的执行(例如,在一个未经授权的装置上运行),则该提供的服务包可能被误用。为此,本主题可以使用签名来控制服务包的提供和脚本的执行,例如,用户系统只能在脚本访问公钥时执行脚本。另外,通过对包签名,可以保证仅由服务提供方提供的脚本可以在用户系统上被执行。签名可以是数字签名。数字签名可以是用于验证包的真实性的数学方案。签名可以例如使用公共-私有对密钥方案来生成。
    19.所提供的服务包的脚本可以被命名为校正脚本或诊断脚本。它可以提供纠正检测到的错误或执行检测到的错误的诊断以便标识根本原因的能力。例如,使用服务包来收集关于检测到的错误的更多诊断信息可能是足够的,然后支持工程师可以使用该服务包来创建包括用于校正检测到的错误的实际步骤的另一服务包。在这种情况下,该方法还包括在执行校正脚本时,接收关于检测到的错误的诊断信息,以及基于所收集的信息提供另一服务包。用户系统可以再次验证新提供的服务包的签名,并且可以执行新提供的服务包的新脚本。
    20.本主题可以实现问题/服务请求的短周转时间。此外,当装置的制造商或授权的服务提供方尝试解决由用户报告的问题时,服务提供方可以采用屏幕共享会话。这些会话用于收集特定问题的信息并将该信息上传到问题管理系统,或例如通过应用软件更新包来应用工作范围/修复。本文实施例的优点在于无需采用屏幕共享方法。当问题由问题管理系统分析/修复时,用户可以使用用户系统(装置),因为当问题由在后台运行的服务包的脚本分析时,用户系统未被阻挡(例如,由支持工程师经由屏幕共享会话使用用户的工作站进行分析)。
    21.根据一个实施例,服务包包括元数据。元数据包括最大执行计数,其中响应于确定脚本在用户系统上的先前执行的数量小于最大执行计数而执行脚本的执行。该实施例可以使得能够设置脚本可被执行多少次(例如,一次或x次)的数量,以防止重新执行和对于选择情况的数据泄露。
    22.包的签名指示由问题管理系统提供的元数据和脚本的内容。即,元数据和/或脚本的任何改变可导致包的非认证。脚本的执行可以使用元数据来执行,例如,元数据支持脚本的一个或多个变量的初始化。用于执行包的验证的相同元数据被用于执行脚本。如果用户系统中的元数据已改变,则可不执行脚本。例如,由于元数据是被签名的数据的一部分,因此它在不破坏签名的情况下不能被篡改。用户系统可以检测这样的非法或未授权活动,并且作为响应,用户系统简单地不执行脚本。
    23.根据一个实施例,其中签名包是从被配置为远程地连接到用户系统的问题管理系统接收的,其中,确定脚本在用户系统上的先前执行数量小于最大执行计数包括:由用户系统确定脚本在用户系统上的先前执行的数量小于最大执行计数;以及由问题管理系统确定脚本在用户系统上的先前执行的数量小于最大执行计数。
    24.例如,可以由用户系统和问题管理系统两者来执行脚本的先前执行的数量小于最大执行计数的检查,并且仅当两个检查都成功时,可以执行脚本。如果在用户系统或问题管理系统上检查失败,则方法包括:由用户系统退出检查错误并向问题管理系统回报检查错误。该实施例可以进一步改进对脚本执行的控制,因为其要求两个系统必须同意脚本已被执行的次数,例如,这可以防止用户系统在没有问题管理系统的同意的情况下执行包。
    25.脚本的先前执行的数量可以不同方式来确定。例如,可以使用保存用户系统中执行历史的日志来确定用户系统中的所述数量。问题管理系统还可以使用其自己的日志(例如,记录所提供的包的日志)来确定所述数量。
    26.根据一个实施例,用户系统和问题管理系统包括指示脚本的先前执行的数量的执行计数器。该方法还包括在脚本的执行成功的情况下递增执行计数器。例如,在从用户系统接收到指示脚本执行成功的报告时,可以在问题管理系统中递增执行计数器。如果用户系统被配置为自动报告执行结果,则这可能是特别有利的。
    27.在另一示例中,每当问题管理系统提供具有相同脚本的包时,执行计数器可以在问题管理系统中和在用户系统中递增。这可能是有利的,因为问题管理系统不依赖于用户系统的报告来对执行数量进行计数。这可以例如防止误用情况,其中用户系统(知道计数检查特征)可能不发送报告以便能够通过利用相同的现有计数来进一步执行包(超出允许的执行数量)。
    28.根据一个实施例,数据包包括元数据。元数据包括用户系统的唯一标识符,其中响
    应于确定用户系统具有该唯一标识符而执行脚本的执行。唯一标识符可以例如是用户系统的序列号。以此方式,签署的包可以被定制成仅在一个特定机器上运行,而不在其他机器上运行。
    29.根据一个实施例,错误的检测包括:由用户系统的监测单元自动检测错误或由用户系统的用户检测错误;以及将检测到的错误提供给问题管理系统,其中由问题管理系统来执行签名包的提供。
    30.根据一个实施例,用户系统可以使用以下三种执行方法之一调度脚本的执行:在确定包是真实的之后立即执行脚本,或者在预定义的维护时间窗中执行脚本;或者在接收到用户批准执行脚本之后,执行脚本。由此,脚本被提供以使得脚本的应用是可定制的,例如,使得用户可以选择执行脚本的时隙。
    31.该实施例可以实现多个调度策略。例如,如果客户在其配置中将执行策略设置为“立即”,则用户系统的调度器将在脚本已经被提交之后立即执行脚本。如果客户在其配置中将执行策略设置为“批准”,则他需要批准每个脚本的执行。将向顾客通知提交给他的系统的每个新脚本,以便他能够及时行动。如果客户在其配置中将执行策略设置为“维护窗口”,则他可以在其配置中定义维护窗口。脚本将仅在维护窗口中被执行。如果不存在维护窗口,但是存在排队用于执行的脚本,则可以不执行它们。客户可能首先必须定义新的维护窗口。这些情况将被通知客户。
    32.根据一个实施例,该方法还包括:提供关于脚本的执行结果的报告,并以完整性保护的方式将其与包组合。在一个示例中,用户系统的用户可以将执行结果从用户系统传递到他的工作站以便创建报告,并且可以将报告从工作站上传到问题管理系统。在另一示例中,报告可以由用户系统经由用户系统和问题管理系统之间的直接安全连接来创建和由用户系统发送到问题管理系统。报告可以或可以不被用户审阅。例如,执行结果可以保存在档案文件中。该档案文件可以由用户在将其提交给问题管理系统之前审阅,以检查在档案中不包含敏感数据。
    33.根据一个实施例,提供签名包包括以下之一:经由在用户系统和问题管理系统之间建立的安全连接向用户系统发送服务包,或者从问题管理系统向用户系统下载服务包。例如,当要执行脚本时,用户系统的用户可以将服务包下载到用户的工作站,然后将其从工作站传送到用户系统。
    34.根据一个实施例,自动地执行该方法。这可以及时修复检测到的错误,而不依赖于用户干预。例如,可以由用户系统自动地检测错误,并且可以由用户系统自动地向问题管理系统发送指示检测到的错误的支持请求。问题管理系统可以在接收到支持请求时自动创建包并将其提供给用户系统。例如,问题管理系统可以使用历史文件,该历史文件包括先前检测到的错误和相关联的脚本之间的映射。该文件可以由问题管理系统用于通过标识对应于文件中检测到的错误的条目和相关联的脚本来创建脚本。该服务包可以例如基于具有由特定的(一组)(多个)服务包解决的类似问题的其他用户系统的装置来得出。
    35.脚本的自动执行可以由问题管理系统触发。用户系统的用户可以通过支持从问题管理系统到脚本应当被执行的用户系统的直接通信来允许这种自动执行。
    36.在另一示例中,脚本的手动执行可以允许用户审核执行什么以及审核什么将被发送到问题管理系统。
    37.根据一个实施例,脚本是未加密的。该方法还包括:分析脚本,用于将脚本执行的一个或多个操作记录在审计日志中,以及提供审计日志,用于使得能够检查对用户系统执行的操作。这可以允许用户调查脚本。例如,可以请求用户向审计机构(例如,税务机构)提供审计日志以用于审计已经被应用到用户系统的脚本。
    38.服务包可以仅在用户系统的用户的用户认证时提供。问题管理系统可以在提供包之前检查用户系统的用户的真实性。根据一个实施例,该方法包括从用户系统的用户接收指示检测到的错误的支持请求,并且认证用户,其中如果用户被认证,则提供包。
    39.图1示出了根据本主题的示例的服务系统100。服务系统100包括问题管理系统101和一个或多个计算机系统(或用户系统)102a-n。问题管理系统101可以被配置成经由一个或多个网络103与计算机系统102a-n中的每一个通信。为了简化描述,仅示出了一个网络;然而,问题管理系统101可以经由多于一个的网络连接到计算机系统102a-n,例如,问题管理系统101可以经由相应的网络连接到计算机系统102a-n中的每一个。例如,网络103可以包括但不限于线缆网络、光纤网络、混合光纤同轴电缆网络、无线网络(例如,wi-fi和/或移动电话网络)、卫星网络、互联网、内联网、局域网、任何其他合适的网络和/或这些网络的任何组合。
    40.如图所示,用户105a-n可以分别与计算机系统102a-n(例如,计算机系统600的实例)相关联。用户105a-n可以包括观看者、所有者、技术支持人员等。用户105a-n可以使用工作站(未示出)以便与计算机系统102a-n和问题管理系统101交互或通信。每个计算机系统102a-n可以包括装置104a-n。装置104可以是硬件-软件装置。例如,装置104a-n可以是ibm db2分析加速器。用户105a-n可以仅通过提供的服务接口与装置104a-n进行交互,例如,用户不能访问装置本身。这些服务接口可能不足以处理特定问题——更不用说解决问题。例如,该装置可能不会为最终用户(顾客)提供打开可以用于问题分析和修复的外壳(shell)的可能性。因此,用户105a-n可能需要牵涉装置104a-n的创建者/生产者或经授权的服务提供方,因为只有非常有限的预先提供的通用服务接口(诸如跟踪/日志文件集合)对终端用户是可用的。
    41.问题管理系统101为计算机系统102a-n提供支持。问题管理系统101可以远离计算机系统102a-n,通过网络103可访问。当错误在计算机系统102a-n上发生时,问题管理系统101可以处理错误处理的至少一部分。问题管理系统101可以在错误发生在计算机系统102a-n上时提供对错误的描述和对错误的补救。该补救可以根据问题管理方法来提供,例如,如参见图2所描述的。为此,问题管理系统101可以由可以服务于特定实现方式的计算设备(例如,服务器、计算机系统600的一个或多个实例)的任何组合来实现。
    42.问题管理系统101可以包括问题检测模块110、支持模块111和存储系统112,它们选择性地和通信地彼此耦合。问题检测模块110可以被配置成从计算机系统102a-n接收(例如检测)支持请求。支持请求可以被自动地提供或可以在计算机系统102a-n中发生错误时由用户105a-n提供。
    43.支持模块111可以被配置成执行一个或多个支持会话管理操作,如可以服务于特定实现。例如,支持模块111可以响应于由问题检测模块110接收到的支持请求,处理包括在支持请求中的信息,打开与支持请求相关联的支持票,并且向支持请求分配与支持票相关联的唯一票标识符。例如,支持模块111可以使用票券标识符来建立到计算机系统的远程控
    制会话。
    44.存储系统112可以被配置为存储表示由支持模块111生成的一个或多个票标识符的票标识符数据113和包括关于计算机系统102a-n中检测到的错误的信息的问题管理记录(pmr)114。
    45.图2是示出根据本主题的示例的用于支持计算机系统的问题管理方法的服务系统200的框图。图2示出了在图1的问题管理系统与计算机系统102a-n之一之间执行的问题管理方法的示例。
    46.服务系统200可以包括问题管理系统201和计算机系统202。问题管理系统201类似于图1的问题管理系统101,并且计算机系统202类似于图1的计算机系统102a-n。计算机系统202包括装置204。例如,装置204可以是db2系统。装置204可以由监测单元221自动监测或可以通过用户205的帮助监测。因此,可以在步骤b1或步骤a1中分别自动地或手动地检测装置204中的错误或问题。如果监测单元221检测到错误,则调用中心单元220可以从监测单元221接收错误的指示。一旦接收到该指示,调用中心单元222就可以自动打开(步骤b2)问题管理系统201中的问题管理记录。这可以例如通过在步骤b2中向问题管理系统201发送支持请求来执行。如果手动地检测到错误,则用户205可以打开(步骤a2)问题管理系统201中的问题管理记录。这可以例如通过在步骤a2例如经由接口录入对问题管理系统201的支持请求来执行。在接收到支持请求时,问题管理系统201可以自动创建问题管理记录214。如所示,问题管理记录214可以包括指示设备204的信息、问题的描述、诊断信息以及例如提供的签名的服务包(包括一个或多个服务命令),以解决该问题。问题管理系统201的支持工程师216可以分析(步骤c1)问题管理记录214的数据,并且可以(在步骤c2)相应地提供服务包。在另一示例中,服务包可以由问题管理系统201自动创建。服务包可以包括元数据和有效负载。有效负载可以包括要执行的脚本(命名为校正脚本)和包含校正脚本为了修复错误和/或收集关于错误的诊断信息而需要的附加信息的一个或多个资源文件。元数据可以包括指示服务包的创建者的信息、计算机系统202的序列号、校正脚本的最大执行计数,例如,使用一次性密码、要执行的校正脚本的名称、包含执行结果的文件的名称以及指示数据包的内容的签名。可以将服务包提供给用户205或提供给计算机系统202的服务命令调度和执行引擎223。如果服务包被提供给用户205,则用户205可以通过服务命令调度和执行引擎223触发(步骤c3a)校正脚本的执行。如果服务包被提供给服务命令调度和执行引擎223,则这可以自动地触发(步骤c3b)服务命令调度和执行引擎223以调度校正脚本的执行。校正或诊断脚本可以在步骤c4中执行在装置上,例如,以便修复所检测到的错误。校正脚本的执行结果可以用于更新(步骤c5)pmr 214并填充计算机系统202的审计日志文件224。审计日志文件224也可以被存储在问题管理系统201中。审计日志文件224可包含完整的服务包(元数据和有效负载),其提交服务包以供执行(当使用自动方法时,其可能仅在客户系统上已知),完整执行结果、校正脚本被提交用于执行的时间、执行开始的时间,执行完成的时间、关于执行调度策略的配置细节、谁审核并批准执行结果以及何时(如果需要批准),问题管理系统201中的脚本的日志创建以及设备204上的脚本的日志执行。
    47.图3是根据本主题的示例的用于用户系统的问题管理方法的流程图。出于解释的目的,图3中所描述的方法可以在图1-图2中所展示的系统中实现,但不限于此实现方式。
    48.可以在用户系统202中的步骤301中检测错误。所检测到的错误可以例如具有一个
    或多个预定义的错误码,诸如db2错误码。错误可以例如与由用户系统202提供的错误描述相关联。例如,如果某人正在锁定该装置正在使用的数据,则该错误描述可以指示不可用的资源。错误可以由用户系统202使用监测单元221自动地检测,并且可以被报告给问题管理系统201。在另一示例中,错误可意由用户205例如使用其工作站上的服务接口来检测,其中服务接口显示由监测单元221监测的结果。用户205可以使用工作站向问题管理系统201报告错误。
    49.响应于检测到错误,问题管理系统201可以在步骤303中向用户系统202提供签名包。签名包可以称为真实服务包。包可以包括至少一个校正脚本(包括一个或多个服务命令),当在用户系统202上执行时,校正脚本可以例如修复检测到的错误。在一个示例中,包可以被提供有使得能够执行校正脚本的受控执行的附加信息。例如,包可包括元数据和有效负载。有效负载包括校正脚本。有效负载可以例如还包括一个或多个资源文件,该一个或多个资源文件包含要执行的校正脚本可能需要的附加信息。元数据可以指示创建者(例如,创建服务命令的支持工程师216)、用户系统202的序列号、最大执行计数(例如,用于执行校正脚本的一次性密码)、校正脚本的名称、包含执行结果的文件的名称和签名。通过对包签名来获得签名。
    50.在一个示例中,校正脚本可以由问题管理系统自动确定,例如使用已知错误和相关联的校正脚本之间的映射。映射可以例如将错误码与校正脚本映射,该校正脚本可以例如分别修复具有错误码的问题。问题管理系统可以能够基于其他用户的经验来维护纠正动作的历史。这些校正动作可以用于提供校正脚本。
    51.用户系统202可以在步骤305中验证具有签名的校正脚本的真实性。如果脚本是真实的(查询步骤307),则用户系统202可以在步骤309中执行校正脚本;否则,可以不执行校正脚本,并且可以在步骤311中向问题管理系统报告检查错误。
    52.校正脚本的执行可以成功或不成功。如果不成功,则用户系统202可以向问题管理系统201发送报告错误。作为响应,问题管理系统201可以例如发送具有另一校正脚本的另一签名包,并且步骤305至309可以与该另一服务包重复。
    53.步骤305至309的执行可以由问题管理系统201控制,例如,问题管理系统201可以经由问题管理系统201与用户系统202之间的直接连接来触发步骤305至309的执行,例如通过向用户系统发送控制命令,并且在接收到控制命令时,用户系统可以调度步骤305至309的执行,例如根据“立即”策略或“维护窗口”策略。这可能是有利的,因为问题管理系统201可以控制何时调度校正脚本的执行。
    54.在执行(成功或不成功)之后,执行结果可以由用户系统202收集。可以在包的元数据中定义正在收集的数据。此外,脚本执行的返回代码以及在脚本执行期间写到stdout和stderr的所有内容可被捕捉、写入文件并被包括在执行结果中。执行结果可以被保存在档案文件中。这个文件可以由用户审阅以在向问题管理系统提交档案之前检查没有敏感数据被包含在档案中。当使用图3的方法的自动执行时,客户/用户205可以在将数据提交给问题管理系统之前决定是否审阅数据。如果这被设置,则可以通知客户执行结果可用于审阅和批准。如果他批准,则数据可以经由安全连接被自动上传到问题管理系统。当使用手动执行时,客户的责任是将执行结果手动上传到问题管理系统。在这种情况下,他有可能检查包含在档案文件中的数据。如果他批准,他将数据上传到问题管理系统。
    55.图4是根据本主题的示例的用于修复或诊断在用户系统中检测到的错误的流程图。出于解释的目的,图4中所描述的方法可以在图1-图2中所展示的系统中实现,但不限于此实现方式。图4的方法可以实现校正脚本的自动执行。校正脚本可以支持修复或诊断检测到的错误。用户系统的用户可以通过支持从问题管理系统到应当执行纠正脚本的用户系统的直接通信来允许这种自动执行。在这种情况下,问题管理系统可以触发图4的方法的以下动作序列。
    56.在步骤401,问题管理系统201请求在用户系统202上执行校正脚本。在步骤403,问题管理系统201建立到用户系统202的安全连接。在步骤405中,问题管理系统201将包括校正脚本的签名包传送到用户系统202。在步骤407中,问题管理系统201触发在用户系统202上执行校正脚本,例如问题管理系统201触发图4的方法的剩余步骤的执行。用户系统202在步骤409验证包的签名。如果(查询步骤411)它有效,则用户系统202在该过程中继续步骤413,如果没有,则它退出并在步骤429向问题管理系统201报告错误。在步骤413,用户系统202验证包中的序列号并将其与用户系统的序列号相比较。如果(查询步骤415)比较成功,则其继续到步骤417的过程,如果不成功,则其退出并在步骤429向问题管理系统201报告错误。在步骤417,用户系统202检查此特定校正脚本之前是否已经执行。除此之外,问题管理系统201检查此校正脚本之前是否已经在用户系统202上执行。用户系统202和问题管理系统201可以检查是否已经达到(存储在用户系统202和问题管理系统201中的)最大执行数量。如果(查询步骤417)此检查在用户系统202或问题管理系统201上失败,则在步骤429用户系统202退出并把错误报告回问题管理系统201。如果(查询步骤417)否,该过程继续到步骤421。在步骤421中,用户系统202调度校正脚本以便执行。在成功执行的情况下(查询步骤423),用户系统202可以在步骤425中向问题管理系统201报告执行结果,并且用户系统202和问题管理系统201可以在步骤427中将该纠正脚本的执行计数器增加一。例如,在执行不成功的情况下,可以在步骤429中报告错误。
    57.图5a、图5b描绘了根据本主题的示例的用于修复或诊断在用户系统中检测到的错误的流程图。出于解释的目的,在图5a、图5b中描述的方法可以在图1-图2中示出的系统中实现,但不限于此实现。
    58.在步骤501中,问题管理系统201通过将签名的包附加到问题管理系统201并将请求执行的消息附加到客户205,来请求校正脚本的手动执行。校正脚本可以支持修复或诊断检测到的错误。在步骤503,客户将包下载到他的工作站。在步骤505中,客户将包从他的工作站传送到用户系统202,脚本应当在用户系统202中执行。在步骤507中,客户例如通过在服务接口中从用户系统上的可用脚本列表中选择脚本并且通过点击执行按钮,来调度脚本的执行。这个步骤507可以包括用于指定执行调度的方式,例如,在维护时段内即时地或未来地。
    59.用户系统202在步骤509中验证包的签名。如果(查询步骤511)它是有效的,则用户系统202在该过程中继续步骤513,如果不是,则它退出并且在步骤531中向问题管理系统201回报错误。在步骤513,用户系统202验证数据包中的序列号并将其与用户系统的序列号相比较。如果(查询步骤515)比较成功,则其继续到步骤517的过程,如果不成功,则其退出并且在步骤531中将错误报告回问题管理系统201。在步骤517,用户系统202检查之前是否已经执行过该特定的校正脚本。除此之外,问题管理系统201检查此校正脚本之前是否已经
    在用户系统202上执行。用户系统202和问题管理系统201现在可以检查是否已经达到(存储在用户系统202和问题管理系统201中的)最大执行数量。如果(查询步骤517)此检查在用户系统202或问题管理系统201上失败,则在步骤531中用户系统202退出并把错误报告回问题管理系统201。如果(查询步骤517)否,则该过程继续步骤521。
    60.用户系统在步骤521中调度脚本以供执行,并且将执行结果保存在本地。在成功执行的情况下(查询步骤523),用户系统可以在步骤529中将该脚本的执行计数器增加一。在步骤525中,客户将执行结果从用户系统202传递到他的工作站。在步骤527,客户从他的工作站传递执行结果,并将执行结果上传到问题管理系统201。问题管理系统201可以保存执行结果。问题管理系统201可以将该脚本的执行计数器增加一。例如,在不成功的执行的情况下,在步骤531中可报告错误。
    61.图6表示适用于实现如本公开中所涉及的方法步骤的至少一部分的一般计算机化系统600。
    62.应当理解,本文所述的方法至少部分是非交互式的,并且通过诸如服务器或嵌入式系统的计算机化系统自动进行。然而,在示例性实施例中,本文描述的方法可以在(部分)交互式系统中实现。这些方法可以进一步在软件612、622(包括固件622)、硬件(处理器)605或其组合中实现。在示例性实施例中,本文描述的方法以软件实现为可执行程序,并且由专用或通用数字计算机(诸如,个人计算机、工作站、小型计算机或大型计算机)执行。最通用的系统600因此包括通用计算机601。
    63.在示例性实施例中,就硬件架构而言,如图6所示,计算机601包括处理器605、耦合到存储器控制器615的存储器(主存储器)610、以及经由本地输入/输出控制器635通信地耦合的一个或多个输入和/或输出(i/o)设备(或外围设备)10、645。如本领域已知的,输入/输出控制器635可以是但不限于一个或多个总线或其他有线或无线连接。输入/输出控制器635可具有为简单起见而省略的额外元件,例如控制器、缓冲器(高速缓冲存储器)、驱动器、中继器和接收器,以实现通信。进一步,本地接口可以包括地址、控制和/或数据连接以实现前述组件之间的适当通信。如本文所述,i/o设备10、645通常可包括本领域已知的任何通用密码卡或智能卡。
    64.处理器605是用于执行软件(特别是存储在存储器610中的软件)的硬件设备。处理器605可以是任何定制的或可商购的处理器、中央处理单元(cpu)、与计算机601相关联的若干处理器中的辅助处理器、基于半导体的微处理器(以微芯片或芯片组的形式)、或通常用于执行软件指令的任何设备。
    65.存储器610可包括易失性存储器元件(例如,随机存取存储器(ram,诸如dram、sram、sdram等))和非易失性存储器元件(例如,rom、可擦除可编程只读存储器(eprom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom))中的任何一个或组合。注意,存储器610可以具有分布式架构,其中不同组件位于彼此远程,但是可以由处理器605访问。
    66.存储器610中的软件可包括一个或多个单独的程序,每个程序包括用于实现逻辑功能(尤其是本发明的实施例中所涉及的功能)的可执行指令的有序列表。在图6的实例中,存储器610中的软件包含例如指令612。管理数据库如数据库管理系统的指令。
    67.存储器610中的软件通常还应包括合适的操作系统(os)411。os611本质上控制其
    他计算机程序的执行,诸如用于实现本文所描述的方法的可能的软件612。
    68.本文所述的方法可呈源程序612、可执行程序612(目标代码)、脚本或包括待执行的一组指令612的任何其他实体的形式。当源程序时,则需要经由编译器、汇编器、解释器等来翻译程序,该编译器、汇编器、解释器等可以或可以不包括在存储器610内,以便结合os 611适当地操作。此外,这些方法可以被编写为具有数据和方法的类的面向对象的编程语言,或者具有例程、子例程和/或函数的过程编程语言。
    69.在示例性实施例中,常规键盘650和鼠标655可以耦合到输入/输出控制器635。诸如i/o设备645的其他输出设备可以包括输入设备,例如但不限于打印机、扫描仪、话筒等。最后,i/o设备10、645可以还包括传送输入和输出两者的设备,例如但不限于网络接口卡(nic)或调制器/解调器(用于访问其他文件、设备、系统或网络)、射频(rf)或其他收发器、电话接口、桥接器、路由器等。i/o设备10、645可以是本领域中已知的任何通用密码卡或智能卡。系统600可进一步包含耦合到显示器630的显示控制器625。在示例性实施例中,系统600可进一步包含用于耦合到网络665的网络接口。网络665可以是用于经由宽带连接在计算机601与任何外部服务器、客户端等之间通信的基于ip的网络。网络665在计算机601与外部系统30之间发射和接收数据,数据可以涉及以执行本文中所论述的方法的部分或全部步骤。在示例性实施例中,网络665可以是由服务提供方管理的管理的ip网络。网络665可以例如使用无线协议和技术(诸如wifi、wimax等)以无线方式实现。网络665还可以是分组交换网络,诸如局域网、广域网、城域网、互联网网络或其他类似类型的网络环境。网络665可为固定无线网络、无线局域网w(lan)、无线广域网(wwan)、个域网(pan)、虚拟专用网(vpn)、内联网或其他合适的网络系统,并且包括用于接收和发射信号的设备。
    70.如果计算机601是pc、工作站、智能设备等,则存储器610中的软件还可以包括基本输入输出系统(bios)622。bios是在启动时初始化和测试硬件、启动os611并且支持硬件设备之间的数据传送的基本软件例程的集合。bios被存储在rom中,使得当计算机601被激活时可以执行bios。
    71.当计算机601在操作中时,处理器605被配置为执行存储在存储器610内的软件612,向和从存储器610传送数据,并且通常根据软件来控制计算机601的操作。在此描述的方法和os 611整体或部分地(但典型地后者)由处理器605读取、可能缓存在处理器605内并且然后执行。
    72.当在软件612中实现本文描述的系统和方法时,如图6所示,方法可以被存储在任何计算机可读介质(例如存储装置620)上,以供任何计算机相关系统或方法使用或结合任何计算机相关系统或方法使用。存储器620可包括磁盘存储器,例如hdd存储器。
    73.本发明可以是任何可能的集成技术细节水平的系统、方法和/或计算机程序产品。计算机程序产品可包含上面具有计算机可读程序指令的计算机可读存储介质(或多个介质),计算机可读程序指令用于致使处理器执行本发明的方面。
    74.计算机可读存储介质可以是可以保留和存储指令以供指令执行设备使用的有形设备。计算机可读存储介质可以是例如但不限于电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或前述各项的任何合适的组合。计算机可读存储介质的更具体例子的非穷举列表包括以下:便携式计算机盘,硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或闪存),静态随机存取存储器(sram)、便携式致
    密盘只读存储器(cd-rom),数字通用盘(dvd)、记忆棒、软盘、机械编码设备(诸如穿孔卡片)或具有记录在其上的指令的凹槽中的凸起结构),以及上述的任意合适的组合。如本文中所使用的计算机可读存储介质不应被解释为瞬态信号本身,诸如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,通过光纤电缆的光脉冲)、或通过导线传输的电信号。
    75.本文所述的计算机可读程序指令可从计算机可读存储介质下载到相应的计算/处理设备,或经由网络(例如,互联网、局域网、广域网和/或无线网络)下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或网络接口从网络接收计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
    76.用于执行本发明的操作的计算机可读程序指令可以是汇编指令,指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据,集成电路的配置数据,或以一种或多种编程语言的任何组合编写的源代码或目标代码,包括面向对象的smalltalk、c 等编程语言,以及过程式编程语言,例如“c”编程语言或类似的编程语言。计算机可读程序指令可完全在用户”的计算机上执行、部分在用户”的计算机上执行、作为独立软件包执行、部分在用户”的计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在后一种情形中,远程计算机可以通过任何类型的网络(包括局域网(lan)或广域网(wan))连接到用户的计算机,或者可以连接到外部计算机(例如,通过使用互联网服务提供方的互联网)。在一些实施例中,电子电路(包括例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla))可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令以使电子电路个性化,以便执行本发明的方面。
    77.本文中参考根据本发明的实施例的方法、设备(系统)和计算机程序产品的流程图说明和/或框图描述本发明的方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令来实现。
    78.这些计算机可读程序指令可以被提供给计算机的处理器或其他可编程数据处理装置以产生机器,使得指令经由计算机或其他可编程数据处理装置的处理器执行,创建用于实现在流程图和/或方框图的一个或多个方框中指定的功能/动作的装置。这些计算机可读程序指令还可存储在可指导计算机的计算机可读存储介质中,可编程数据处理装置,和/或以特定方式起作用的其他设备,使得具有存储在其中的指令的计算机可读存储介质包括制品,该制品包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各方面的指令。
    79.计算机可读程序指令还可以加载到计算机、其他可编程数据处理装置上,或使得在计算机上执行一系列操作步骤的其他装置,其他可编程装置或其他设备,以产生计算机实现的过程,使得在计算机上执行的指令,其他可编程装置或其他设备实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
    80.附图中的流程图和框图图示了根据本发明的不同实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。对此,流程图或框图中的每个方框可以代表模块、段或指令的一部分,其包括用于实现规定的逻辑功能的一个或多个可执行指令。在一些替
    代实施例中,框中所标注的功能可以不以图中所标注的次序发生。例如,取决于所涉及的功能,连续示出的两个框实际上可以作为一个步骤完成、同时执行、基本同时地、以部分或全部时间上重叠的方式执行,或者这些框有时可以以相反的顺序执行。还将注意的是,框图和/或流程图中的每个框、以及框图和/或流程图中的框的组合可以由基于专用硬件的系统来实现,基于专用硬件的系统执行指定的功能或动作或执行专用硬件与计算机指令的组合。

    技术特征:
    1.一种用于用户系统的问题管理方法,所述方法包括:检测所述用户系统中的错误;由所述用户系统根据所检测的所述错误来接收签名包,所述签名包至少包括校正脚本或诊断脚本;由所述用户系统使用所述包的签名来验证所述包的真实性;以及如果所述包是真实的,则由所述用户系统执行所述脚本。2.根据权利要求1所述的方法,其中所述包包括元数据,所述元数据包括最大执行计数;并且其中响应于确定所述脚本在所述用户系统上的先前执行的数量小于所述最大执行计数,所述脚本的所述执行被执行。3.根据权利要求2所述的方法,其中所述签名包从问题管理系统被接收,所述问题管理系统被配置为远程连接到所述用户系统,并且其中确定所述脚本在所述用户系统上的先前执行的所述数量小于所述最大执行计数包括:由所述用户系统确定所述脚本在所述用户系统上的先前执行的所述数量小于所述最大执行计数;以及由所述问题管理系统确定所述脚本在所述用户系统上的先前执行的所述数量小于所述最大执行计数。4.根据权利要求3所述的方法,其中所述用户系统和所述问题管理系统包括指示所述脚本的先前执行的所述数量的执行计数器,所述方法还包括在所述脚本的所述执行成功的情况下递增所述执行计数器。5.根据权利要求1所述的方法,其中所述包包括元数据,所述元数据包括所述用户系统的唯一标识符,并且其中所述脚本的所述执行响应于确定所述用户系统具有所述唯一标识符而被执行。6.根据权利要求1所述的方法,其中检测所述错误还包括:由所述用户系统的监测单元自动检测所述错误或者由所述用户系统的用户检测所述错误;以及向问题管理系统提供检测到的所述错误,其中所述签名包的所述提供响应于由所述问题管理系统对检测到的所述错误的所述接收而被执行。7.根据权利要求1所述的方法,其中所述脚本的执行在以下情况下被执行:紧接在确定所述包是真实的之后;在预定义的维护时间窗中;或者在接收到用户批准对所述脚本的执行之后。8.根据权利要求1所述的方法,还包括:经由在所述用户系统和所述问题管理系统之间的所建立的安全连接,将所述服务包发送到所述用户系统;或者将所述服务包从所述问题管理系统下载到所述用户系统。9.根据权利要求1所述的方法,所述方法被自动地执行。10.根据权利要求1所述的方法,其中所述脚本是未加密的,所述方法还包括:分析所述脚本,以用于将由所述脚本执行的一个或多个操作记录在审计日志中;以及提供所述审计
    日志,以用于支持对在所述用户系统上执行的操作的检查。11.根据权利要求1所述的方法,所述方法包括:从所述用户系统的用户接收指示检测到的所述错误的支持请求,认证所述用户,其中如果所述用户被认证,则所述包由问题管理系统提供。12.根据权利要求1所述的方法,其中所述用户系统包括装置数据库系统。13.根据权利要求1所述的方法,其中所述包的签名使用公共-私有对密钥方案来验证。14.一种包括计算机可读存储介质的计算机程序产品,所述计算机可读存储介质包括具有随其体现的计算机可读程序代码,所述计算机可读程序代码被配置为执行根据权利要求1至13中任一项所述的方法的步骤。15.一种计算机系统,包括处理器和计算机可读存储介质,所述计算机可读存储介质具有随其体现的计算机可读程序代码,所述计算机可读程序代码被配置为执行根据权利要求1至13中任一项所述的方法的步骤。16.一种计算机系统,包括用于执行根据权利要求1至13中任一项所述的方法的步骤的部件。

    技术总结
    本公开的实施例涉及用户系统中的问题管理。本公开涉及一种用于用户系统的问题管理方法。一种方法可以包括检测用户系统中的错误。可根据检测到的错误来提供签名包,其中该包至少包括脚本。用户系统可以使用包的签名来验证包的真实性,并且如果包是真实的,则可以执行脚本。脚本。脚本。


    技术研发人员:S
    受保护的技术使用者:国际商业机器公司
    技术研发日:2021.10.12
    技术公布日:2022/5/25
    转载请注明原文地址:https://tc.8miu.com/read-10703.html

    最新回复(0)