【技术实现步骤摘要】
本主题一般地涉及用于远程地监视多个分布式设备以识别导致在分布式设备中的一个或多个分布式设备处发生的事件的动作序列的装置和方法。
技术介绍
能够执行程序代码的设备(诸如IoT设备、服务器、台式计算机、膝上型计算机、移动电话、平板计算机等)能够记录设备在事件(例如错误)发生时的时刻的状态。然而,错误经常由长序列的不寻常动作造成。为了修复程序代码并预防错误的未来的发生,开发者必须从错误发生时的设备状态的记录向后进行工作以寻找错误的根本原因。这是困难的处理,其有时只有通过在实验室中多次再现错误条件才是可能的。
技术实现思路
根据第一技术,提供了用于监视多个分布式设备处的事件的计算机实现的方法。每个分布式设备可操作来执行程序代码。该方法包括:检测所述多个分布式设备中的一个分布式设备处的事件;生成第一状态记录,所述第一状态记录定义当所述事件发生时所述多个分布式设备中的所述一个分布式设备的状态;基于所述第一状态记录确定第一日志记录条件,所述第一日志记录条件定义将生成第二状态记录的分布式设备的状态;以及将所述第一日志记录条件传送到所述多个分布式设备中的至少一个分布式设备。根据第二技术,提供了包括用于执行本文中所描述的方法的程序代码的计算机程序产品。根据第三技术,提供了用于监视多个分布式设备处的事件的装置。每个分布式设备可操作来执行程序代码。所述装置包括:状态记录模块,其可操作来接收来自所述多个分布式设备中的至少一个分布式设备的第一状态记录,所述第一状态记录定义当事件在所述多个分布式设备中的所述至少一个分布式设备处发生时所述多个分布式设备中的所述至少一个分布式设备的状态;日志 ...
【技术保护点】
一种用于监视多个分布式设备处的事件的计算机实现的方法,每个分布式设备可操作来执行程序代码,所述方法包括:检测所述多个分布式设备中的一个分布式设备处的事件;生成第一状态记录,所述第一状态记录定义当所述事件发生时所述多个分布式设备中的所述一个分布式设备的状态;基于所述第一状态记录确定第一日志记录条件,所述第一日志记录条件定义第二状态记录将被生成的分布式设备的状态;以及将所述第一日志记录条件传送到所述多个分布式设备中的至少一个分布式设备。
【技术特征摘要】
2015.09.16 GB 1516427.01.一种用于监视多个分布式设备处的事件的计算机实现的方法,每个分布式设备可操作来执行程序代码,所述方法包括:检测所述多个分布式设备中的一个分布式设备处的事件;生成第一状态记录,所述第一状态记录定义当所述事件发生时所述多个分布式设备中的所述一个分布式设备的状态;基于所述第一状态记录确定第一日志记录条件,所述第一日志记录条件定义第二状态记录将被生成的分布式设备的状态;以及将所述第一日志记录条件传送到所述多个分布式设备中的至少一个分布式设备。2.如权利要求1所述的计算机实现的方法,还包括:当所述多个分布式设备中的至少一个分布式设备的所述状态对应于所述第一日志记录条件时,生成所述第二状态记录;检测所述多个分布式设备中的所述至少一个分布式设备处的所述事件;基于所述第二状态记录确定第二日志记录条件,所述第二日志记录条件定义第三状态记录将被生成的分布式设备的状态,所述第二日志记录条件放宽在所述第一日志记录条件中定义的所述分布式设备的所述状态;以及将所述第二日志记录条件传送到所述多个分布式设备中的至少一个分布式设备。3.如权利要求1所述的计算机实现的方法,还包括:当所述多个分布式设备中的至少一个分布式设备的所述状态对应于所述第一日志记录条件时,生成所述第二状态记录;确定所述事件将不会在所述多个分布式设备中的所述至少一个分布式设备处发生;丢弃所述第二状态记录;基于所述第一状态记录确定第三日志记录条件,所述第三日志记录条件定义第四状态记录将被生成的分布式设备的状态,所述第三日志记录条件缩窄在所述第一日志记录条件中定义的所述分布式设备的所述状态;以及将所述第三日志记录条件传送到所述多个分布式设备中的至少一个分布式设备。4.如权利要求2所述的计算机实现的方法,还包括:当所述多个分布式设备中的至少一个分布式设备的所述状态对应于所述第二日志记录条件时,生成所述第三状态记录;确定所述事件将不会在所述多个分布式设备中的所述至少一个分布式设备处发生;丢弃所述第三状态记录;基于所述第二状态记录确定第四日志记录条件,所述第四日志记录条件定义第五状态记录将被生成的分布式设备的状态,所述第四日志记录条件缩窄在所述第二日志记录条件中定义的所述分布式设备的所述状态;以及将所述第四日志记录条件传送到所述多个分布式设备中的至少一个分布式设备。5.如权利要求3或4所述的计算机实现的方法,其中,确定所述事件将不会在所述多个分布式设备中的所述至少一个分布式设备处发生包括:确定预定时间段已经过去并且所述事件尚未在所述多个分布式设备中的所述至少一个分布式设备处发生。6.如权利要求3至5中任意一项所述的计算机实现的方法,还包括:当确定所述事件将不会在所述多个分布式设备中的所述至少一个分布式设备处发生时使计数器递增。7.如权利要求1至6中任意一项所述的计算机实现的方法,还包括:确定预定时间段已经过去并且在所述第一、第二、第三或第四日志记录条件中的任意一个中定义的分布式设备的状态尚未被满足;基于所述确定在所述第一、第二、第三或第四日志记录条件中的任意一个中定义的分布式设备的状态尚未被满足来确定第五日志记录条件,所述第五日志记录条件定义第六状态记录将被生成的分布式设备的状态,所述第五日志记录条件放宽尚未被满足的在所述第一、第二、第三或第四日志记录条件中的所述任意一个中定义的所述分布式设备的所述状态;以及将所述第五日志记录条件传送到所述多个分布式设备中的至少一个分布式设备。8.如权利要求1至7中任意一项所述的计算机实现的方法,还包括:将所述状态记录传送到用户。9.如权利要求1至8中任意一项所述的计算机实现的方法,还包括:将由用户定义的日志记录条件传送到所述多个分布式设备中的至少一个分布式设备。10.如权利要求1至9中任意一项所述的计算机实现的方法,还包括:将程序代码更新传送到所述多个分布式设备中的至少一个分布式设备。11.如权利要求1至10中任意一项所述的计算机实现的方法,其中,所述事件包括所述多个分布式设备中的所述至少一个分布式设备处的所述程序代码中的错误。12.如权利要求1至11中任意一项所述的计算机实现的方法,其中,所述状态记录包括以下各项中的一个或多个:g.所述分布式设备处的函数的调用栈、函数的调用栈的一部分或者函数的多于一个调用栈;h.所述分布式设备处的调用栈上的函数的参数值;i.关于所述分布式设备的内部状态的日志记录信息;j.关于所述分布式设备的外部环境的日志记录信息;k.从与所述分布式设备通信的服务器接收到的最后的数据;以及l.存储在所述分布式设备处的存储设备中的关于所述分布式设备的状态的信息。13.如权利要求1至12中任意一项所述的计算机实现的方法,其中,用户定义所述状态记录的内容。14.如权利要求1至13中任意一项所述的计算机实现的方法,其中,在所述多个分布式设备处检测到一个或多个不同事件。15.如权利要求1至14中任意一项所述的计算机实现的方法,还包括:基于相同状态记录确定两个或更多个不同的第一、第二、第三、第四或第五日志记录条件;以及将所述两个或更多个不同的第一、第二、第三、第四或第五日志记录条件传送到所述多个分布式设备中的至少一个分布式设备。16.如权利要求1至15中任意一项所述的计算机实现的方法,其中,被传送了所述第一、第二、第三、第四或第五日志记录条件的所述多个分布式设备中的所述至少一个分布式设备可操作来执行与所述多个分布式设备中的检测到所述事件的所述一个分布式设备相同的程序代码。17.一种包括用于执行权利要求1至16中任意一项所述的方法的程序代码的计算机程序产品。18.一种用于监视多个分布式设备处的事件的装置,每个分布式设备可操作来执行程序代码,所述装置包括:状态记录模块,可操作来接收来...
【专利技术属性】
技术研发人员:J·克罗斯比,M·常,
申请(专利权)人:阿姆IP有限公司,
类型:发明
国别省市:英国;GB
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。