CN111478798A - 故障处理方法、故障处理的装置和存储介质 - Google Patents
故障处理方法、故障处理的装置和存储介质 Download PDFInfo
- Publication number
- CN111478798A CN111478798A CN202010191916.5A CN202010191916A CN111478798A CN 111478798 A CN111478798 A CN 111478798A CN 202010191916 A CN202010191916 A CN 202010191916A CN 111478798 A CN111478798 A CN 111478798A
- Authority
- CN
- China
- Prior art keywords
- terminal device
- distributed
- information
- service
- fault
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/069—Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0677—Localisation of faults
Abstract
本申请的实施方式提供了一种故障处理方法、故障处理的装置和存储介质。该方法包括判断第一终端设备在执行分布式业务的第一部分业务过程中是否出现故障;在出现故障的情况下,将第一终端设备的调用信息存储在分布式文件系统中,将第一终端设备的分布式业务日志集合存储在分布式文件系统中,第一终端设备的分布式业务日志集合包括第一终端设备在与发生故障的时间相关联的预定时间段内所产生的多个日志。本申请可以使用调用链标识将调用链进行记录,为业务故障的追踪定位提供了主线,提高了对设备发生故障后的定界定位能力。通过由分布式故障触发相关日志的采集,不用设置心跳机制来检测设备的异常状态,减少对正常业务的影响。
Description
技术领域
本申请的一个或多个实施例通常涉及分布式系统的故障处理领域,具体涉及一种终 端设备的故障处理方法、故障处理的装置和存储介质。
背景技术
分布式系统是一个硬件或软件组件分布在不同的网络设备上,彼此之间仅仅通过消息 传递进行通信和协调的系统。现有的分布式网络的故障检测和恢复方法,一般是在指定的 服务器中执行,例如,在分布式系网络的一台指定的服务器上设置分布式故障检测和恢复 相关的功能模块,例如功能模块可能包括故障检测模块、中央控制模块、故障恢复模块、 以及配置中心模块等,故障检测模块对分布式系统中各个服务器的分布式故障进行检测, 并采集服务器故障信息;配置中心模块配置服务器的基础信息并对故障检测模块、中央控 制模块、故障恢复模块等模块进行配置;中央控制模块接收采集的故障信息,并对故障类 型进行分析处理,通过配置中心模块的配置进行告警或者恢复操作的触发。
因此,在现有技术中,分布式网络的故障检测和恢复方法通常在服务器端执行,而非 在终端执行,此外,在分布式网络中,如果该网络的业务模式是主从模式(Master-SlaveMode),那么,通常在主设备中设置中央控制模块接收检测故障信息,如果主设备的中央 控制模块发生故障将无法接收故障信息。进一步地,对于执行分布式业务的终端来说,它 们通常无法在本地准确地获得调用链的信息,这些信息通常需要在服务器端(云端)对业 务日志进行大数据分析后才能得到,由此,在终端很难存储和回溯分布式网络内设备间的 调用链信息,这样导致日志的实时性和准确性比较差。
发明内容
本申请的一些实施方式提供了一种故障处理方法、故障处理的装置和存储介质。以 下从多个方面介绍本申请,以下多个方面的实施方式和有益效果可互相参考。
为了应对上述场景,第一方面,本申请的实施方式提供了一种用于第一终端设备的 故障处理的方法,该方法包括判断第一终端设备在执行分布式业务的第一部分业务过程 中是否出现故障;在出现故障的情况下,将第一终端设备的调用信息存储在分布式文件系统中,其中第一终端设备的调用信息包括第一终端设备被第二终端设备调用的信息以及第一终端设备调用第三终端设备的信息中的至少一个,其中第二终端设备和第三终端设备中的至少一个执行分布式业务的第二和第三部分业务中的至少一个。
从上述第一方面的实施方式中可以看出,本申请的实施方式可以在故障发生时,使 用调用链标识(TraceID)将调用链进行记录,为业务故障的追踪定位提供了主线,提高了对设备的诸如系统、应用等方面发生故障后的定界定位能力。此外,通过由分布式故 障触发相关日志的采集,不用设置心跳机制来检测设备的异常状态,减少对正常业务的 影响。
结合第一方面,在一些实施方式中,还包括:在出现故障的情况下,将第一终端设备的分布式业务日志集合存储在分布式文件系统中,其中第一终端设备的分布式业务日志集合包括第一终端设备在与发生故障的时间相关联的预定时间段内所产生的多个日志,并且其中预定时间段包括发生故障的时间。
本申请的实施方式可以实现在终端侧的分布式业务故障检测及日志自动收集,保证 了分布式业务故障日志的时间顺序,减少上传的日志量,减少了云端分析的难度,从而提高软件的稳定性。
结合第一方面,在一些实施方式中,还包括:在未出现故障的情况下,确定分布式文件系统中是否存在至少部分指示第一终端设备调用第三终端设备的第三终端设备的调用信息;在存在第三终端设备的调用信息的情况下,将第一终端设备的调用信息存储在 分布式文件系统中。
结合第一方面,在一些实施方式中,还包括:在未出现故障的情况下,将第一终端设备执行第一部分业务所产生的第一终端设备的分布式业务日志集合存储在分布式文件系统中。
结合第一方面,在一些实施方式中,分布式文件系统至少由执行分布式业务的多个 终端设备共享,其中多个终端设备包括第一终端设备,第二终端设备和/或第三终端设备。
结合第一方面,在一些实施方式中,多个分布式业务日志集合中的每个分布式业务 日志和/或调用信息包括标识分布式业务的标识信息。
结合第一方面,在一些实施方式中,调用信息还包括执行分布式业务的多个终端设 备的数量,并且第一终端设备在执行第一部分业务的情况下,将数量加1。
结合第一方面,在一些实施方式中,基于分布式文件系统中的调用信息,确定分布式业务的调用链信息,其中调用链信息指示执行分布式业务的多个终端设备之间的调用顺序;以及将调用链信息存储在分布式文件系统中。
本申请的实施方式通过在终端侧设备间进行了日志关联,提高了日志收集的时效性 和可靠性,减少了故障日志的大小,减少了对系统资源的消耗,尤其提高了诸如第三方应用开发者的商用用户对故障的定界定位效率,降低了研发成本。
结合第一方面,在一些实施方式中,至少部分地基于执行分布式业务的多个终端设 备中的每个终端设备的设备基础信息、每个终端设备的故障率、每个终端设备与多个终端设备通信的故障率中的至少一个,在多个终端设备中选出预备日志收集设备。
结合第一方面,在一些实施方式中,将表示选出的预备日志收集设备的信息存储在 分布式文件系统中。
结合第一方面,在一些实施方式中,在出现故障的情况下,根据每个终端设备选出的预备日志收集设备,选出最终日志收集设备用于收集与故障相关的分布式业务日志集合。
结合第一方面,在一些实施方式中,在第一终端设备为最终日志收集设备的情况下, 从分布式文件系统获取每个终端设备的分布式业务日志集合并发送到服务器。
结合第一方面,在一些实施方式中,将每个终端设备的分布式业务日志集合发送到 服务器,还包括:根据调用链信息的调用顺序,将每个终端设备的分布式业务日志集合发送到服务器。
结合第一方面,在一些实施方式中,在第一终端设备为最终日志收集设备的情况下, 将调用链信息发送到服务器。
第二方面,本申请的实施方式提供了一种用于第一终端设备的故障处理的方法,方 法包括:判断第一终端设备在执行分布式业务的第一部分业务过程中是否出现故障;在出现故障的情况下,将第一终端设备的调用信息存储在分布式文件系统中,其中第一终 端设备的调用信息包括第一终端设备被第二终端设备调用的信息以及第一终端设备调用 第三终端设备的信息中的至少一个,其中第二终端设备和第三终端设备中的至少一个执 行分布式业务的第二和第三部分业务中的至少一个;以及至少部分地基于执行分布式业 务的多个终端设备中的每个终端设备的设备基础信息、每个终端设备的故障率、每个终 端设备与多个终端设备通信的故障率中的至少一个,在多个终端设备中选出预备日志收 集设备。
从上述第二方面的实施方式中可以看出,本申请的实施方式可以在故障发生时,使 用调用链标识(TraceID)将调用链进行记录,为业务故障的追踪定位提供了主线,提高了对设备的诸如系统、应用等方面发生故障后的定界定位能力。此外,通过由分布式故 障触发相关日志的采集,不用设置心跳机制来检测设备的异常状态,减少对正常业务的 影响。
结合第二方面,在一些实施方式中,将表示选出的预备日志收集设备的信息存储在 分布式文件系统中。
结合第二方面,在一些实施方式中,根据每个终端设备选出的预备日志收集设备,选出最终日志收集设备用于收集与故障相关的分布式业务日志集合。
结合第二方面,在一些实施方式中,在第一终端设备为最终日志收集设备的情况下, 从分布式文件系统获取每个终端设备的分布式业务日志集合并发送到服务器。
第三方面,本申请的实施方式提供一种用于第一终端设备的故障处理的装置,装置 包括:故障检测模块,用于判断第一终端设备在执行分布式业务的第一部分业务过程中是否出现故障;故障分析模块,用于在出现故障的情况下,将第一终端设备的调用信息 存储在分布式文件系统中,其中第一终端设备的调用信息包括第一终端设备被第二终端 设备调用的信息以及第一终端设备调用第三终端设备的信息中的至少一个,其中第二终 端设备和第三终端设备中的至少一个执行分布式业务的第二和第三部分业务中的至少一个。
从上述第三方面的实施方式中可以看出,本申请的实施方式可以在故障发生时,使 用调用链标识(TraceID)将调用链进行记录,为业务故障的追踪定位提供了主线,提高了对设备的诸如系统、应用等方面发生故障后的定界定位能力。此外,通过由分布式故 障触发相关日志的采集,不用设置心跳机制来检测设备的异常状态,减少对正常业务的 影响。
第四方面,本申请提供了一种计算机可读存储介质,该存储介质可以是非易失性的。 该存储介质中包含指令,该指令在执行后实施如前述任意一个方面或实施方式所描述的 方法。
附图说明
图1示出了本申请实施方式提供的一种示例性的分布式系统的示意图。
图2示出了示例性的分布式系统中的终端设备的模块示意图。
图3描述根据本申请实施方式的终端设备的各功能模块之间的示例性的信息的交互 示意图。
图4描述根据本申请实施方式的终端设备的各功能模块之间的另一示例性的数据的 交互示意图。
图5描述根据本申请实施方式的终端设备的各功能模块之间的另一示例性的数据的 交互示意图。
图6描述根据本申请实施方式的终端设备的故障处理方法的流程示意图。
图7示出根据本申请实施例的故障处理设备的模块示意图。
具体实施方式
以下由特定的具体实施例说明本申请的实施方式,本领域技术人员可由本说明书所 揭示的内容轻易地了解本申请的其他优点及功效。虽然本申请的描述将结合较佳实施例 一起介绍,但这并不代表此发明的特征仅限于该实施方式。恰恰相反,结合实施方式作发明介绍的目的是为了覆盖基于本申请的权利要求而有可能延伸出的其它选择或改造。为了提供对本申请的深度了解,以下描述中将包含许多具体的细节。本申请也可以不使 用这些细节实施。此外,为了避免混乱或模糊本申请的重点,有些具体细节将在描述中 被省略。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以 相互组合。
此外,各种操作将以最有助于理解说明性实施例的方式被描述为多个离散操作;然 而,描述的顺序不应被解释为暗示这些操作必须依赖于顺序。特别是,这些操作不需要按呈现顺序执行。
在附图中,以特定布置和/或顺序示出一些结构或方法特征。然而,应该理解,可以不需要这样的特定布置和/或排序。在一些实施例中,这些特征可以以不同于说明性附图中所示的方式和/或顺序来布置。另外,在特定图中包含结构或方法特征并不意味着暗示在所有实施例中都需要这样的特征,并且在一些实施例中,可以不包括这些特征或者可 以与其他特征组合。
除非上下文另有规定,否则术语“包含”,“具有”和“包括”是同义词。短语“A/B” 表示“A或B”。短语“A和/或B”表示“(A和B)或者(A或B)”。
应当理解的是,虽然在这里可能使用了术语“第一”、“第二”等等来描述各个单元或是数据,但是这些单元或数据不应当受这些术语限制。使用这些术语仅仅是为了将一 个特征与另一个特征进行区分。举例来说,在不背离示例性实施例的范围的情况下,第 一特征可以被称为第二特征,并且类似地第二特征可以被称为第一特征。
应注意的是,在本说明书中,相似的标号和字母在下面的附图中表示类似项,因此, 一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请的实施方 式作进一步地详细描述。
如本文所使用的,术语“模块或单元”可以指或者包括专用集成电路(ASIC)、电子电路、执行一个或多个软件或固件程序的处理器(共享的、专用的或组)和/或存储器(共 享的、专用的或组)、组合逻辑电路、和/或提供所描述的功能的其他合适的组件,或者 可以是专用集成电路(ASIC)、电子电路、执行一个或多个软件或固件程序的处理器(共 享的、专用的或组)和/或存储器(共享的、专用的或组)、组合逻辑电路、和/或提供所 描述的功能的其他合适的组件的一部分。
图1为本申请实施方式提供的一种示例性的分布式系统1的示意图,该系统1可以包括云端14和多个终端设备12a-12f。如图1所示,终端设备12a-12c通过网络16分别 与云端14通信地耦连,此外,终端设备12a、12d、12e和12f通过网络16彼此通信地 耦连。在图1和其余的附图中,引用编号之后的字母,例如“12a”,表示对具有该特定 引用编号的元素的引用。文本中没有后续字母的引用编号,例如“12”,表示对带有该引 用编号的元素的实施方式的总体引用。
终端设备是指任何一种具有计算处理能力的设备、器械或者机器,在本申请实施例 中可以为具有数据处理能力,或者具有功能外设的终端设备。终端设备12a-12f包括但不局限于,膝上型设备、台式机、手持PC、个人数字助理、嵌入式处理器、数字信号处 理器(Digital Signal Processor,简称DSP)、图形设备、视频游戏设备、机顶盒、微控制 器、蜂窝电话、便携式媒体播放器、手持设备、可穿戴设备(例如,显示眼镜或护目镜, 头戴式显示器(Head-Mounted Display,简称HMD),手表,头戴设备,臂带,珠宝等), 虚拟现实(VirtualReality,简称VR)和/或增强现实(Augment Reality,简称AR)设备, 物联网(Internet ofThings,IoT)设备,智能摄像头,智能音响系统,车载信息娱乐设 备,流媒体客户端设备,电子书阅读设备,POS机,电动车辆的控制系统,以及各种其 他电子设备。一般地,能够包含本文中所公开的处理器和/或其它执行逻辑的多个装置和 电子设备一般都是合适的。
网络16可以包括通过无线、电线、光缆、无线电频率(Radio Frequency,RF)等作为数据传输介质的各种网络,例如,局域网(Local Area Network,LAN),广域网(Wide AreaNetwork,WAN)。
在图1所示的分布式系统1可能应用的典型场景中,终端设备12a-12f可以是用户的智能家居系统中的各种设备,例如,用户的个人计算机(Personal Computer,PC)、智 能手机、智能电视、智能摄像头、智能手表、无线耳塞、智能机顶盒和智能音箱等,这 些设备可以通过用户ID相互关联,并且关联后的各个设备可以通过蓝牙、无线网络WIFI、 近场通信(Near Field Communication,NFC)等方式建立通信连接。例如,终端设备12a、 12d、12e和12f之间可以通过WIFI和/或蓝牙建立通信连接。
以下参考图1简单介绍分布式业务和分布式业务的调用链的一些示例。
例如,在分布式系统1中,一个典型的分布式业务可以通过不同终端设备的应用以及服务之间的配合来执行。假设终端设备12a为智能手机,终端设备12d为智能电视, 并且终端设备12f为智能音箱,那么分布式业务例如为,用户希望在终端设备12a上发 起视频播放的业务,用户可以选择让终端设备12d执行对该视频的图像播放,并且让终 端设备12f执行对该视频的音频的播放。也就是说,用户的分布式业务可以通过调度多 个设备或多个服务来实施。在一些情况下,分布式业务可以被简化或拆分为多个简单的 元能力(即,单一的功能或最小的服务),每个元能力仅仅关注业务中的一种任务,多个 元能力之间的任务可以是互相独立的,也可以是相互关联的。以上述业务为例,视频播 放的业务可以通过多个简单的元能力来配合执行,例如,启动视频播放业务的元能力A、 视频图像播放的元能力B和音频播放的元能力C相互配合。
在另一些情况下,元能力还可以是应用的微型接口,例如,小程序等,元能力可以在设备被调用时,安装在被调用的设备上。还以上述业务为例,视频播放的业务由一指 定应用进行,例如,在终端设备12a上启动应用“K歌”播放音乐视频,那么启动视频 播放业务的元能力A为该“K歌”应用的一个元能力,终端设备12a调用终端设备12d 播放视频图像播放时,如果终端设备12d上没有“K歌”的视频图像播放的元能力B, 则终端设备12a的“K歌”应用将“K歌”的视频图像播放的元能力B传送到终端设备 12d,终端设备12d安装并执行该元能力B,如果终端设备12d上已有“K歌”的视频图 像播放的元能力B,则终端设备12d可以响应终端设备12a的调用来执行元能力B,同 理,在执行上述分布式业务时,如果终端设备12f不具有“K歌”应用的音频播放的元 能力C,终端设备12a也可以向终端设备12f传送“K歌”的音频播放的元能力C,如 果终端设备12f具有“K歌”应用的音频播放的元能力C,则终端设备12f执行元能力C。
在一些实施方式中,每个元能力可以由分布式系统1中的一个或多个提供元能力对 应功能的设备来执行。例如,在上述分布式业务中,为了完成用户的业务,用户可以手动选择要执行各个元能力的设备,例如,终端设备12a(智能手机)可以执行启动视频 播放业务,终端设备12d(智能电视)可以执行视频图像播放,以及终端设备12f(智能 音箱)可以执行音频播放。在一些其他实施方式中,分布式系统1的各个终端设备12a-12f 可以自动发现组网内其他各个终端设备的可执行的元能力,因此,当用户选择终端设备 12a执行启动视频播放业务后,终端设备12d和终端设备12f可以被自动地确定。
在由多个终端设备执行分布式业务的情况下,在执行分布式业务时的多个终端设备 之间的元能力的执行顺序可以通过调用链来反映。在一种可能的情况下,假如终端设备12f(智能音箱)与终端设备12d(智能电视)连接,但未与终端设备12a(智能手机) 连接,调用链可以如下:用户向终端设备12a发起请求来执行视频播放业务,终端设备 12a根据请求提供启动视频播放业务的元能力A,并调用终端设备12d提供视频图像播 放的元能力B,并且终端设备12d调用终端设备12f提供视频的音频播放的元能力C。
应理解,上述业务、元能力以及调用链仅仅作为示例,不应构成具体限定。
在分布式系统1的运行过程中可能出现各种故障,从分布式系统1的各个终端设备的角度来看,每个终端设备可以检测的故障可以基本包括以下几类:终端设备的可靠性 故障、分布式网络故障、分布式存储故障、分布式调度故障和分布式业务故障等。终端 设备的可靠性故障包括设备不开机故障、设备重启故障、进程崩溃故障、应用卡死故障、 系统服务卡死故障、资源泄露故障等。分布式网络故障涉及终端设备之间的网络连接, 例如,终端设备12a向终端设备12d发起的RPC(Remote procedure call,远程过程调用), PRC的执行结果有三种状态:“成功”、“失败”、“超时(未知)”,这些称之为分布式系 统的三态。分布式网络故障指RPC请求失败或者超时。分布式存储故障通常涉及数据的 一致性和可用性问题。分布式调度故障通常涉及能力管理服务(AbilityManagerService) 在业务能力发现和路由方面发生的问题。分布式业务故障的具体故障类型由元能力定义。
为了便于在分布式业务执行过程中对上述可能出现的故障进行跟踪定位,在分布式 业务的调用链的每个节点,例如,终端设备12a、12d和12f,均会生成调用链信息。调 用链信息中可以包括多个字段,例如,调用链标识(TraceID)、节点(终端设备)数量 和业务名称等。其中,调用链标识(TraceID)是调用链的唯一标识,也可以是该分布式 业务的唯一标识,例如,调用链标识(TraceID)也可以作为一项分布式业务的唯一标识 写入诸如故障日志、业务日志、终端设备日志等的分布式业务的数据文件中。节点数量 包括当前节点在内的被调用的节点的数量,可以用于确定各节点的调用关系。上述调用 链信息的字段的表示方法仅仅作为一个示例,在其他的实施方式中,调用链信息的字段 也可以包括其他字段,例如,还可以包括其他用于表示调用关系的字段,这样的字段可 以包括用于表示调用当前节点的上一个节点(父节点)的标识,和/或当前节点调用的下 一个节点(子节点)的标识的字段,在此不作具体限定。
以上述分布式业务为例,终端设备12a的调用链信息的调用链标识为TraceID 1,并 且节点数量为1。终端设备12d的调用链信息的调用链标识为TraceID 1,并且节点数量为2。终端设备12f的调用链信息的调用链标识为TraceID 1,并且节点数量为3。在一 些实施方式中,对于一个分布式业务的调用链来说,每个节点的调用链信息中的调用链 标识保持不变,节点数量根据终端设备的调用顺序依次增加。由此,调用链信息不仅可 以唯一标识分布式业务,还可以记录执行分布式业务的终端设备的调用数量和调用关系, 例如,当前执行分布式业务中的任务的终端设备和启动分布式业务的终端设备之间共跨 越了几个终端设备,在串行的调用链中,根据节点数量也可以确定各个终端设备之间的 调用关系。在具有分支的调用链中,可以可选地或附加地包括用于表示调用当前节点的 上一个节点(父节点)的标识,和/或当前节点调用的下一个节点(子节点)的标识的一 个或多个字段。
应理解,在其他分布式业务中,各个节点的调用链信息与上述示例类似,在此不再一一列举出来。而且,上述调用链信息仅仅是一种示例,不应构成具体限定。
调用链信息的传输方式可以有多种,例如,调用链信息可以承载在分布式业务的各 种日志中,也可以承载于分布式系统1中各设备之间发送的报文中。作为一个示例,调用链信息可以通过例如TSL(Thread Local Storage,线程局部存储)在线程之间传输, 通过IPC(Inter-Process Communication,进程间通信)在进程之间,以及通过RPC在设 备之间传输。具体而言,在不同应用场景和通信实体之间,调用链信息可以利用各种通 信协议进行传输,例如,对于通信实体为设备之间和进程之间来说,在APP、框架服务、 native服务之间可以通过类binder调用传输调用链信息,在部分系统服务、HAL之间, 例如rild,可以通过通信封装socket传输调用链信息。对于通信实体为进程内的线程之 间,在APP内部、服务内部的线程之间可通过诸如handler消息、Task传输调用链信息。 对于通信实体为内核态,在HAL和驱动之间可以通过syscal,在系统调用时,内核态可 以访问进程用户地址空间,因此从线程上下文可以获取调用链信息。上述举例仅作为可 能的示例,不应构成具体限定。
在本申请的各个实施方式中,各个终端设备可以根据调用链信息还原调用链,并根 据调用链对故障进行定位。以图1所示的分布式系统1为例,当故障发生后,终端设备12a-12f中的任意一个可以进行本设备的故障相关的日志采集,以及对调用链上其他终端设备的故障关联日志收集,统一收集故障的关联日志信息,例如,发生了什么业务故障, 在什么时间,以及在哪个设备节点上发生该故障等等。以下参考图2具体描述终端设备 对故障信息的收集。
如图2所示,在本申请的各个实施方式中,分布式系统1的终端设备12可以包括分布式调度服务20、分布式故障检测器21、故障日志引擎22、分布式故障分析器23、分 布式故障收集器24、分布式文件系统26和应用管理服务28。在一些可选实施方式中, 上述各个模块可以相互合并,例如,故障日志引擎22可以合并到分布式故障分析器23 中,上述模块仅作为可能的示例以便清楚地描述各种实施方式,不应构成具体限定。在 一个或多个实施方式中,分布式故障分析器23可以进一步包括历史回溯单元231、设备 选择单元232和日志生成单元233。
在图2中,分布式文件系统26可以用于存储各种与分布式故障相关的数据,这些数据例如包括,分布式业务故障日志261、分布式调度故障日志262、分布式存储故障日志263、分布式网络故障日志264、分布式故障历史记录265和分布式调度历史记录266等。 分布式文件系统26虽然示意性地显示在终端设备12的外部,但是可以理解,在分布式 系统1中,分布式文件系统26的存储介质可以包括每个终端设备12的部分或全部存储 空间,例如,每个终端设备12可以在各自存储器中提供符合分布式存储协议的存储空间, 从而组成分布式文件系统26的部分或全部的存储空间,在分布式文件系统26中,每个 终端设备12在各自的为分布式文件系统26提供的存储空间写入的数据可以共享给其他 终端设备12,例如,各个终端设备12可以访问其他终端设备12在分布式文件系统26 写入的数据。
以下结合图1中所描述的示例场景对图2中各终端设备在分布式故障处理的相关方 面进行说明,对于分布式业务的其他方面在此仅作简要描述。
用户在终端设备12a启动视频播放业务后,假如用户选择将视频播放业务作为分布 式业务启动,例如,选择终端设备12d和终端设备12f分别进行视频和音频播放任务, 或者终端设备12a自动将视频播放业务作为分布式业务启动,则终端设备12a的诸如应 用管理服务28a会生成与调用链信息a相关的数据,例如,TraceID等。终端设备12a 的分布式调度服务20a会生成和保存调用链信息a,其中包括TraceID、节点数量和/或其 他字段,并将调用链信息a向下一个调用的终端设备发送,例如,发送给终端设备12d, 在另一些示例中,分布式调度服务20a还可以为视频播放业务增加分布式业务标记和业 务名称等。终端设备12d的应用管理服务28d接收到终端设备12a传输的调用链信息a 后,终端设备12d的分布式调度服务20d更新调用链信息a中的部分信息来生成和保存 调用链信息d,在调用链信息d中,调用链标识为调用链信息a中的TraceID,调用链信 息d的其他字段的值可以根据调用链信息a中对应字段的值进行更新,例如,调用链信 息d的节点数量可以在调用链信息a的节点数量上增加一,在其他示例中,如果调用链 信息a中包括诸如表示调用当前节点的上一个节点的标识,和/或当前节点调用的下一个 节点的标识的字段,那么表示调用当前节点的上一个节点的标识的字段的内容可以更新 为终端设备12a的设备ID、MAC地址等,表示当前节点调用的下一个节点的标识的字 段中的内容可以更新为终端设备12f的设备ID、MAC地址等。之后,分布式调度服务 20d传输该调用链信息d到终端设备12f,终端设备12f的应用管理服务28f接收到调用 链信息d后,由于,终端设备12f是分布式业务的最终节点,因此终端设备12f的分布 式调度服务20f没有工作,因此,应用管理服务28f可以更新调用链信息d中的部分信 息来生成并保存调用链信息f,调用链信息f的具体更新过程参考上述终端设备12d的调 用链信息d的更新过程,在此不再赘述。
在终端设备12a、12d和12f执行上述分布式业务的过程中,当其中任一终端设备12出现诸如前述描述的各类故障时,发生故障的终端设备12的分布式故障检测器21会 检测到故障事件,并将检测到的故障事件的信息发送给故障日志引擎22。故障日志引擎 22根据发送的故障事件生成故障日志,故障日志引擎22还可以根据终端设备12的指令 对发送来的故障事件进行流量控制,避免终端设备12处理大量的故障事件,以便确保终 端设备12的正在执行的前台业务能够获得足够的计算资源,故障日志引擎22还可以对 发送的故障事件进行脱敏处理来提高终端设备12的安全性。故障日志引擎22生成的故 障日志中可以包括调用链标识(TraceID)、该故障事件的故障类型,发生故障的原因, 发生故障的子系统和/或模块,以及发生该故障的时间等,可以理解,故障日志中可以包 括更少或者更多信息,此处不作限定。在一些实施方式中,故障日志引擎22可以将故障 日志存储在分布式文件系统26中,例如,根据故障事件的类型,故障事件的故障日志可 以作为分布式业务故障日志261、分布式调度故障日志262、分布式存储故障日志263 和/或分布式网络故障日志264等来存储。还可以理解,故障日志可以包括一个或多个不 同的日志,这些日志可以记录与发生的故障事件相关联的各种故障信息。此外,故障日 志还可以被其他终端设备12访问。
在一些实施方式中,发生故障的终端设备12的分布式故障分析器23可以向分布式调度服务20获取调用链信息的部分或全部信息。具体而言,分布式故障分析器23中的 历史回溯单元231会订阅故障日志引擎22生成的通知消息,故障日志引擎22生成故障 日志并将该故障日志存储在分布式文件系统26后,将通知消息发送给历史回溯单元231, 历史回溯单元231接收到该通知消息后,向分布式调度服务20获取调用链信息的部分或 全部信息。可选地或附加地,该通知消息还可以包括分布式故障分析器23需要的故障日 志的指定信息,例如,故障类型、故障事件发生的时间等。在可选的实施方式中,历史 回溯单元231在收到故障日志引擎22生成的通知消息后,还可以根据通知消息中包含的 故障类型来确定是否进行调用链的回溯和相关故障日志和业务日志的收集,例如,可以 只有当发生用户会感知到的诸如系统死机、网络超时等故障时,才进行调用链的回溯和 相关故障日志和业务日志的收集。
作为一个示例,分布式故障分析器23中的历史回溯单元231会向分布式调度服务20查询调用链信息。在另一些实施方式中,如果发生故障的终端设备12是调用链的最 终节点,则分布式故障分析器23可以向应用管理服务28获取调用链信息的部分或全部 信息。作为一个示例,分布式故障分析器23中的历史回溯单元231会向应用管理服务 28查询调用链信息。每个终端设备12的历史回溯单元231可以将各自终端设备12的调 用链信息存储在分布式文件系统26中,例如作为分布式调度历史记录266存储。每个终 端设备12的历史回溯单元231还可以在分布式调度历史记录266中根据TraceID查询其 他终端设备12的历史回溯单元231存储的调用链信息,并且通过查询到的调用链信息, 生成调用链的调用记录。
在一个可选的实施方式中,以终端设备12f发生故障为例,在故障发生后,终端设备12f的历史回溯单元231f将自身设备的调用链信息f作为分布式调度历史记录266的 一个新的记录存储在分布式文件系统26中,其他未发生故障的终端设备12a和终端设备 12d查询调用链信息f中的TraceID和诸如节点数量、父节点标识和/或子节点标识等, 来确定调用终端设备12f的上级终端设备,并以此类推,直到确定发起分布式业务的终 端设备,从而实现从故障的终端设备到分布式业务的终端设备之间的调用链的回溯。作 为一个示例,假设调用链信息f的TraceID的值为“1234”,节点数量的值为3,在调用 链信息f被存储为分布式调度历史记录266后,终端设备12a和终端设备12d分别根据 调用链信息f的TraceID和节点数量查询各自的调用链信息a和调用链信息d,其中,假 设调用链信息a的TraceID的值为“1234”,节点数量的值为1,调用链信息d的TraceID 的值为“1234”,节点数量的值为2,那么终端设备12d的历史回溯单元231d可以确定 终端设备12d为终端设备12f的上级终端设备,历史回溯单元231d将调用链信息d作为 分布式调度历史记录266的一个新的记录存储。之后,终端设备12a查询已存储在分布 式调度历史记录266的调用链信息d后,那么终端设备12a的历史回溯单元231a可以确 定终端设备12a为终端设备12d的上级终端设备,而终端设备12a为分布式业务的发起 设备,因此,分布式业务的调用链的回溯完成,终端设备12a将调用链信息a存储在分 布式调度历史记录266后,还可以在分布式调度历史记录266中存储一个用于表示终端 设备12a、12d和12f之间调用顺序的调用链信息adf,即,调用顺序是终端设备12a→终 端设备12d→终端设备12f。
继续参考图2,发生故障的终端设备12的分布式故障分析器23还可以获取故障日志的部分或全部信息。在一些实施方式中,分布式故障分析器23中的日志生成单元233 在故障日志引擎22生成故障日志并将该故障日志存储在分布式文件系统26后,从分布 式文件系统26中获取故障日志引擎22存储的故障日志。例如,历史回溯单元231在收 到故障日志引擎22生成的通知消息后,还可以指示日志生成单元233,从分布式文件系 统26中获取故障日志引擎22存储的故障日志。
分布式故障分析器23的日志生成单元233可以根据故障日志引擎22的故障日志生成分布式业务日志集合。在一些实施方式中,日志生成单元233可以从故障日志引擎22 获取故障事件发生的时间,或者日志生成单元233可以根据TraceID从分布式文件系统 26中查询已存储的故障日志,并从故障日志中获取故障事件发生的时间。
日志生成单元233可以根据预先设定的时间阈值并结合故障事件发生的时间来确定 时间区间,并收集该时间区间内需要获取的各自终端设备12的分布式业务日志,并在分布式文件系统26中生成获取的分布式业务日志的分布式业务日志集合。例如,预先设定 的时间阈值可以是30秒到10分钟之间的任意时间长度,举例来说,以时间阈值为1分 钟为例,那么时间区间可以是将故障事件发生的时间点包括在内的1分钟的时间长度, 诸如,故障事件发生的时间点为1分钟时间区间的起始点、结束点、以及时间区间内的 任意点。在确定时间区间之后,日志生成单元233收集该时间区间内终端设备12的部分 或全部的业务日志。对于发生故障的终端设备12的日志生成单元233而言,该日志生成 单元233将收集的发生故障的终端设备12的业务日志存储在分布式文件系统中的故障日 志所存储的文件目录下,这些业务日志和故障日志构成了故障的终端设备12的分布式业 务日志集合的至少一部分。对于回溯的调用链上其他未发生故障的终端设备12的日志生 成单元233而言,每个未发生故障的终端设备12的日志生成单元233根据TraceID从分 布式文件系统26中查询该TraceID对应的调用链的故障终端设备已存储的故障日志,并 从查询到的故障日志中获取故障事件发生的时间。之后,每个未发生故障的终端设备12 的日志生成单元233确定时间区间,并收集该时间区间内需要获取的各自终端设备12 的分布式业务日志,并将收集的业务日志存储在分布式文件系统中的故障日志所存储的 文件目录下,这些收集的业务日志构成了每个未发生故障的终端设备12的分布式业务日 志集合的至少一部分。
分布式故障分析器23的设备选择单元232用于对回溯的调用链上的每个终端设备12进行评估,从该回溯的调用链上的终端设备12中确定一个终端设备12来收集该回溯 的调用链上的每个终端设备12的分布式业务日志集合。在终端设备12在加入调用链时, 终端设备12的设备管理服务(未示出)会将自身的设备基础信息写入分布式文件系统 26的预定文件目录中,设备基础信息可以包括:CPU信息、RAM信息、ROM信息、网 络连接信息、操作系统信息和设备功能信息等。设备管理服务还可以获取当前调用链上 所有设备的设备基础信息,其中设备管理服务是本领域技术人员可知的现有的功能模块, 在此不具体描述。每个终端设备12的设备选择单元232通过设备管理服务查询当前调用 链上所有设备的设备基础信息,以及根据每个终端设备12自身的故障率和/或其他终端 设备通信的故障率等,诸如利用拜占庭算法等确定在调用链上计算能力、自身故障率和 网络稳定性最佳的终端设备12。如果调用链上所有终端设备所确定的最佳的终端设备12 相同,则该最佳设备为预备收集日志集合的设备,如果调用链上所有终端设备所确定的 最佳的终端设备12不相同,则每个终端设备12的设备选择单元232重新确定最佳的终 端设备12,直到调用链上所有终端设备所确定的最佳的终端设备12相同,该最佳设备 为收集分布式业务日志集合的终端设备,该终端设备将用于收集全部分布式业务日志集 合的信息会写入分布式文件系统26中,每个终端设备12可以查看该信息,确定自身是 否为分布式业务日志集合的收集设备。
作为日志收集设备的终端设备12的分布式故障收集器24用于从分布式文件系统26 收集分布式业务日志集合,并将这些日志集合传送给用于日志分析和管理的云端服务器。 如图2所示,图2中假设终端设备12a为收集分布式业务日志集合的终端设备,则分布式故障收集器24a从分布式文件系统26获取每个终端设备的分布式业务日志集合,并将 这些分布式业务日志集合发送到服务器。在一些实施方式中,分布式故障收集器24a可 以根据调用链信息adf中记录的调用顺序,将每个终端设备的分布式业务日志集合按照 该顺序发送到服务器。在另一些实施方式中,分布式故障收集器24a还可以将调用链信 息adf和每个终端设备的分布式业务日志集合都发送到服务器。在可选的或附加的实施 方式中,分布式故障收集器24a还可以在发送分布式业务日志集合时将每个终端设备12 的其他非分布式业务的故障信息发送到服务器,例如,如果在日志生成单元233确定的 时间区间内,回溯的调用链上的终端设备12发生了诸如设备可靠性基础故障,该故障的 信息也可以通过分布式故障收集器24a发送给服务器。
根据上述实施方式,分布式系统可以在故障发生时,使用调用链标识(TraceID)将调用链进行记录,为业务故障的追踪定位提供了主线,提高了对设备的诸如系统、应用 等方面发生故障后的定界定位能力。此外,通过由分布式故障触发相关日志的采集,不 用设置心跳机制来检测设备的异常状态,减少对正常业务的影响。进一步地,在上述各 种实施方式中,分布式系统可以实现在终端侧的分布式业务故障检测及日志自动收集, 保证了分布式业务故障日志的时间顺序,减少上传的日志量,减少了云端分析的难度, 从而提高软件的稳定性。此外,通过在终端侧设备间进行了日志关联,提高了日志收集 的时效性和可靠性,减少了故障日志的大小,减少了对系统资源的消耗,尤其提高了诸 如第三方应用开发者的商用用户对故障的定界定位效率,降低了研发成本。
以下参考图3-图5描述根据本申请实施方式的终端设备12的各功能模块之间的一些可能的数据交互过程的示意图。在一些实施方式中,图1和图2所示的终端设备12 的各个功能模块可以执行数据交互过程中的一个或多个交互过程,其中,数据交互过程 中的某个或某一些交互过程可以由特定角色的终端设备12执行,例如,一个或多个交互 过程可以由发起分布式业务的终端设备12执行,一个或多个交互过程可以由发生故障的 终端设备12执行,还有一个或多个交互过程可以由作为调用链的最终节点的终端设备 12执行,可以理解,在分布式业务的执行过程中,每个终端设备12可以动态地具备一 个或多个角色。参考图1和图2的说明,在以下的描述中,仍假设终端设备12a是代表 用于发起分布式业务,以及收集所有设备的分布式业务日志集合的终端设备,终端设备 12d代表调用链中任一中间节点的终端设备,以及终端设备12f是代表调用链中最终节 点的、发生故障的终端设备。对于上述系统和设备实施方式中未描述的内容,可以参见 下述实施方式;同样地,对于下述实施方式中未描述的内容,可参见上述系统和设备实 施方式。
图3示出了终端设备12a的示例性的数据交互过程300。每个终端设备12在加入调用链时,设备管理服务会将自身的设备基础信息写入分布式文件系统26的预定文件目录中,因此,终端设备12a的设备管理服务可以发送设备自身的设备基础信息到分布式文 件系统26中(301)。终端设备12a在启动分布式业务后,应用管理服务28a可以将自身 生成的该分布式业务的调用链标识(TraceID)发送到分布式调度服务20a(302)。
在分布式业务执行过程中,历史回溯单元231a可以向分布式文件系统26查询是否有其他终端设备12的调用链信息(303),如果有其他终端设备12的调用链信息,意味 可能其他终端设备发生了故障。在查询到有其他终端设备的调用链信息后,历史回溯单 元231a向分布式调度服务20a查询终端设备12a的调用链信息a(304),并将查询到的 调用链信息a发送到分布式文件系统26中(305)。而后,如在图2部分所描述的,历史 回溯单元231a根据各个终端设备12的调用链信息,确定终端设备12a是调用链的起始 节点(发起分布式业务的终端设备),那么历史回溯单元231a生成回溯的调用链信息adf 后,306:发送回溯的调用链信息adf到分布式文件系统26。
在分布式文件系统26中存储了调用链信息adf之后,历史回溯单元231a向日志生成单元233a发送收集终端设备12a的分布式业务日志的指令(307)。也就是说,在故障 发生后,如果调用链没有回溯完成,例如,仅从终端设备12f回溯到终端设备12f的上 级调用设备(终端设备12d),还没有回溯到调用链的起始节点(终端设备12a),以及分 布式文件系统26中也没有存储回溯的调用链信息adf的情况下,各个终端设备12可以 不执行分布式业务日志收集的任务。在日志生成单元233a在收到来自历史回溯单元231a 的指令后,日志生成单元233a收集终端设备12a的分布式业务日志,具体参见图2部分 的相应描述,此处不再赘述。之后日志生成单元233a在308:发送终端设备12a的分布 式业务日志到分布式文件系统26。
在日志生成单元233a开始收集终端设备12a自身的分布式业务日志之后,设备选择 单元232在309:向分布式文件系统26查询回溯的调用链上的所有终端设备12的设备 基础信息,并部分地根据这些设备基础信息利用诸如拜占庭算法等方法对这些终端设备 12进行评估,确定终端设备12a在调用链上的所有终端设备12中最合适收集分布式业 务日志集合的收集设备,并310:发送对分布式业务日志集合的收集设备的评估结果到 分布式文件系统26。
对于最后一个发送评估结果的终端设备12,假设为终端设备12a,还需要检查所有终端设备12的评估结果是否相同,即所有终端设备12是否对收集设备的选择达成共识, 如果评估结果相同,那么设备选择单元232a在311:发送已确定的收集设备的信息到分 布式文件系统26中。设备选择单元232a可以定期,例如每隔10秒左右,在312:从分 布式文件系统26中查询已确定的分布式业务日志集合的收集设备的信息,如果分布式业 务日志集合的收集设备是终端设备12a,则在所有终端设备12各自的分布式业务日志集 合都存储到分布式文件系统26之后,设备选择单元232a在313:向分布式故障日志收 集器24a发送收集各个终端设备的分布式业务日志集合的指令。分布式故障日志收集器 24a在接收到来自设备选择单元232a的指令后,在314:从分布式文件系统26收集各个 终端设备12的分布式业务日志集合,在分布式业务日志集合收集完成后,在315:将收 集到的分布式业务日志集合发送到服务器端。
可以理解,上述301-315的顺序并非固定不变的,在实际应用中,301-315顺序也可以进行调整。此外,一个或多个交互过程可以被重新排序,省略或添加。
图4示出了终端设备12d的示例性的数据交互过程400。在图4中,对于与图3中 所示的交互类似的部分,在此不再赘述。以下将详细描述与数据交互300不同的部分。
如图4所示,终端设备12d代表调用链中任一中间节点的终端设备,对于终端设备12d而言,在终端设备12d加入调用链时,设备管理服务可以发送设备自身的设备基础 信息到分布式文件系统26中(401)。在终端设备12a调用终端设备12d时,402:应用 管理服务28d将从终端设备12a传输来的TraceID发送到分布式调度服务20d。
在分布式业务执行过程中,历史回溯单元231d可以向分布式文件系统26查询是否有其他终端设备12的调用链信息(403),如果有其他终端设备12的调用链信息,意味 可能其他终端设备发生了故障。在查询到有其他终端设备的调用链信息后,历史回溯单 元231d向分布式调度服务20d查询终端设备12d的调用链信息d(404),并将查询到的 调用链信息d发送到分布式文件系统26中(405)。
历史回溯单元231d在406:从分布式文件系统26查询回溯的调用链信息adf。在查询到分布式文件系统26中存储了调用链信息adf之后,历史回溯单元231d向日志生成 单元233d发送收集终端设备12d的分布式业务日志的指令(407)。之后日志生成单元 233d在408:发送终端设备12d的分布式业务日志到分布式文件系统26。
在日志生成单元233d开始收集终端设备12d自身的分布式业务日志之后,设备选择 单元232d在409:向分布式文件系统26查询回溯的调用链上的所有终端设备12的设备基础信息,并部分地根据这些设备基础信息利用诸如拜占庭算法等方法对这些终端设备12进行评估,确定终端设备12d认为的在调用链上的所有终端设备12中最合适收集分 布式业务日志集合的收集设备,并410:发送对分布式业务日志集合的收集设备的评估 结果到分布式文件系统26。终端设备12d的设备选择单元232d会在411:从分布式文件 系统26中查询已确定的分布式业务日志集合的收集设备的信息。如果终端设备12d是确 定的收集设备,则终端设备12d继续执行图3中313-315所描述的部分,如果终端设备 12d不是确定的收集设备,则终端设备12d的分布式业务日志收集工作结束。
可以理解,上述401-411的顺序并非固定不变的,在实际应用中,401-411顺序也可以进行调整。此外,一个或多个交互过程可以被重新排序,省略或添加。
图5示出了终端设备12f的示例性的数据交互过程500。在图5中,对于与图3和 图4中所示的交互类似的部分,在此不再赘述。以下将详细描述与数据交互300和400 不同的部分。
如图5所示,终端设备12f是代表调用链中最终节点的、发生故障的终端设备。对于终端设备12f而言,在终端设备12f加入调用链时,设备管理服务可以发送设备自身 的设备基础信息到分布式文件系统26中(501)。在终端设备12d调用终端设备12f时, 应用管理服务28d将从终端设备12的传输来的调用链信息d更新为调用链信息f。
在分布式业务执行过程中,当终端设备12f发生故障时,分布式故障检测器21f在502:将检测到的故障事件的信息发送到故障日志引擎22f。故障日志引擎22f根据故障 事件的信息生成故障日志,在503:发送故障日志到分布式文件系统26。在故障日志写 入分布式文件系统26后,故障日志引擎22f在504:发送通知消息给历史回溯单元231f。 历史回溯单元231f接收通知消息后,可以在505:向日志生成单元233f发送查询故障日 志的指示,以及历史回溯单元231f还可以在507:向应用管理服务28f查询调用链信息 f。日志生成单元233f接收来自历史回溯单元231f的指示后,在506:向分布式文件系 统26查询故障日志的信息,这些信息可以在收集分布式业务日志时时使用。
历史回溯单元231f将查询到的调用链信息f发送到分布式文件系统26中(508)。历史回溯单元231f在509:从分布式文件系统26查询回溯的调用链信息adf。在查询到 分布式文件系统26中存储了调用链信息adf之后,历史回溯单元231f向日志生成单元 233f发送收集终端设备12f的分布式业务日志的指令(510)。日志生成单元233f根据已 查询到的故障日志的信息,按照确定的时间区间收集分布式业务日志,之后日志生成单 元233f在511:发送收集到的终端设备12f的分布式业务日志到分布式文件系统26。
在日志生成单元233f开始收集终端设备12f自身的分布式业务日志之后,设备选择 单元232f在512:向分布式文件系统26查询回溯的调用链上的所有终端设备12的设备基础信息,并部分地根据这些设备基础信息利用诸如拜占庭算法等方法对这些终端设备12进行评估,确定终端设备12f在调用链上的所有终端设备12中最合适收集分布式业 务日志集合的收集设备,并在513:发送对分布式业务日志集合的收集设备的评估结果 到分布式文件系统26。终端设备12f的设备选择单元232f会在514:从分布式文件系统 26中查询已确定的分布式业务日志集合的收集设备的信息。如果终端设备12f是确定的 收集设备,则终端设备12f继续执行图3中313-315所描述的部分,如果终端设备12f 不是确定的收集设备,则终端设备12f的分布式业务日志收集工作结束。
根据上述实施方式,分布式系统可以在故障发生时,使用调用链标识(TraceID)将调用链进行记录,为业务故障的追踪定位提供了主线,提高了对设备的诸如系统、应用 等方面发生故障后的定界定位能力。此外,通过由分布式故障触发相关日志的采集,不 用设置心跳机制来检测设备的异常状态,减少对正常业务的影响。进一步地,在上述各 种实施方式中,分布式系统可以实现在终端侧的分布式业务故障检测及日志自动收集, 保证了分布式业务故障日志的时间顺序,减少上传的日志量,减少了云端分析的难度, 从而提高软件的稳定性。此外,通过在终端侧设备间进行了日志关联,提高了日志收集 的时效性和可靠性,减少了故障日志的大小,减少了对系统资源的消耗,尤其提高了诸 如第三方应用开发者的商用用户对故障的定界定位效率,降低了研发成本。
图6示出了根据本申请的一个实施例的终端设备的故障处理方法的流程。在一些实 施方式中,该方法的部分或全部可以在如图1中所示的设备12上实施。
对于上述方法和示例场景的实施方式中未描述的内容,可以参见下述方法实施方式; 同样地,对于下述方法实施方式中未描述的内容,可参见上述方法和示例场景的实施方 式。例如,图6所示的故障处理方法是对图2-图5中所示的终端设备(的进一步说明, 在前述各实施方式中已描述的内容,以下将简略描述或不再赘述。
如图6所示,在601:判断设备在执行分布式业务的第一部分业务过程中是否出现故障。如果终端设备是故障的,例如终端设备12f。
那么,在602a:将调用信息存储在分布式文件系统中。例如,终端设备12f是代表调用链中最终节点的、发生故障的终端设备。对于终端设备12f而言,在终端设备12f 加入调用链时,设备管理服务可以发送设备自身的设备基础信息到分布式文件系统26 中(501)。在终端设备12d调用终端设备12f时,应用管理服务28d将从终端设备12的 传输来的调用链信息d更新为调用链信息f。历史回溯单元231f还可以向应用管理服务 28f查询调用链信息f。历史回溯单元231f将查询到的调用链信息f发送到分布式文件系 统26中。
在603a:基于分布式文件系统中的调用信息,确定分布式业务的调用链信息。历史回溯单元231f根据调用链信息f,从确定分布式业务的回溯的调用链信息adf,即调用 链中最终节点是终端设备12f。
在604a:将调用链信息存储在分布式文件系统中。作为一个示例,终端设备12f将已确定的调用链信息adf存储在分布式文件系统中。
在605a:将分布式业务日志集合存储在分布式文件系统中。例如,在查询到分布式文件系统26中存储了调用链信息adf之后,终端设备12f的历史回溯单元231f向日志 生成单元233f发送收集终端设备12f的分布式业务日志的指令,日志生成单元233f根据 已查询到的故障日志的信息,按照确定的时间区间收集分布式业务日志,之后日志生成 单元233f发送收集到的终端设备12f的分布式业务日志到分布式文件系统26。
在606a:在多个终端设备中选出预备日志收集设备。作为一个示例,在日志生成单元233f开始收集终端设备12f自身的分布式业务日志之后,设备选择单元232f向分布式 文件系统26查询回溯的调用链上的所有终端设备12的设备基础信息,并部分地根据这 些设备基础信息利用诸如拜占庭算法等方法对这些终端设备12进行评估,确定调用链上 的所有终端设备12中最合适收集分布式业务日志集合的收集设备。
在607a:将表示选出的预备日志收集设备的信息存储在分布式文件系统中。终端设 备12f发送对分布式业务日志集合的收集设备的评估结果到分布式文件系统26。
如图6所示,在601:判断设备在执行分布式业务的第一部分业务过程中是否出现故障。如果终端设备是非故障的,例如,非故障终端设备可以是如图3和图4中示出了 终端设备12a和12d,以下以终端设备12a为例进行说明。
在602b:将调用信息存储在分布式文件系统中。例如,终端设备12a在启动分布式业务后,应用管理服务28a可以将自身生成的该分布式业务的调用链标识(TraceID)发 送到分布式调度服务20a。
在603b:基于分布式文件系统中的调用信息,确定分布式业务的调用链信息。例如, 历史回溯单元231a根据各个终端设备12的调用链信息,确定终端设备12a是调用链的起始节点(发起分布式业务的终端设备)。
在604b:将调用链信息存储在分布式文件系统中。例如,历史回溯单元231a生成回溯的调用链信息adf后,发送回溯的调用链信息adf到分布式文件系统26。
在605b:将分布式业务日志集合存储在分布式文件系统中。例如,在查询到有其他终端设备的调用链信息后,历史回溯单元231a向日志生成单元233a发送收集终端设备 12a的分布式业务日志的指令。作为一个示例,每个终端设备根据调用链信息的调用顺 序,将每个终端设备的分布式业务日志集合发送到服务器。
在606b:在多个终端设备中选出预备日志收集设备。例如,终端设备12的设备选择单元232向分布式文件系统26查询回溯的调用链上的所有终端设备12的设备基础信 息,并部分地根据这些设备基础信息利用诸如拜占庭算法等方法对这些终端设备12进行 评估,确定终端设备12a在调用链上的所有终端设备12中最合适收集分布式业务日志集 合的收集设备。
在607b:将表示选出的预备日志收集设备的信息存储在分布式文件系统中。例如,在确定终端设备12a在调用链上的所有终端设备12中最合适收集分布式业务日志集合的收集设备后,发送对分布式业务日志集合的收集设备的评估结果到分布式文件系统26。
在608b:根据每个终端设备选出的预备日志收集设备,选出最终日志收集设备用于 收集与故障相关的分布式业务日志集合。例如,对于最后一个发送评估结果的终端设备12,假设为终端设备12a,还需要检查所有终端设备12的评估结果是否相同,即所有终 端设备12是否对收集设备的选择达成共识,如果评估结果相同,那么设备选择单元232a 发送已确定的收集设备的信息到分布式文件系统26中。
在609b:在设备为最终日志收集设备的情况下,从分布式文件系统获取每个终端设 备的分布式业务日志集合并发送到服务器。例如,如果分布式业务日志集合的收集设备是终端设备12a,则在所有终端设备12各自的分布式业务日志集合都存储到分布式文件 系统26之后,设备选择单元232a向分布式故障日志收集器24a发送收集各个终端设备 的分布式业务日志集合的指令。分布式故障日志收集器24a在接收到来自设备选择单元 232a的指令后,从分布式文件系统26收集各个终端设备12的分布式业务日志集合,在 分布式业务日志集合收集完成后,将收集到的分布式业务日志集合发送到服务器端。
根据上述实施方式,分布式系统可以在故障发生时,使用调用链标识(TraceID)将调用链进行记录,为业务故障的追踪定位提供了主线,提高了对设备的诸如系统、应用 等方面发生故障后的定界定位能力。此外,通过由分布式故障触发相关日志的采集,不 用设置心跳机制来检测设备的异常状态,减少对正常业务的影响。进一步地,在上述各 种实施方式中,分布式系统可以实现在终端侧的分布式业务故障检测及日志自动收集, 保证了分布式业务故障日志的时间顺序,减少上传的日志量,减少了云端分析的难度, 从而提高软件的稳定性。此外,通过在终端侧设备间进行了日志关联,提高了日志收集 的时效性和可靠性,减少了故障日志的大小,减少了对系统资源的消耗,尤其提高了诸 如第三方应用开发者的商用用户对故障的定界定位效率,降低了研发成本。
现在参考图7,所示为根据本申请的一个实施例的分布式故障检测设备700的框图。 设备700可以包括一个或多个处理器702,与处理器702中的至少一个连接的系统控制逻辑708,与系统控制逻辑708连接的系统内存704,与系统控制逻辑708连接的非易失 性存储器(NVM)706,以及与系统控制逻辑708连接的网络接口710。
处理器702可以包括一个或多个单核或多核处理器。处理器702可以包括通用处理器和专用处理器(例如,图形处理器,应用处理器,基带处理器等)的任何组合。在本 文的实施例中,处理器702可以被配置为执行根据如图2-7所示的各种实施例的一个或 多个实施例。
在一些实施例中,系统控制逻辑708可以包括任意合适的接口控制器,以向处理器702中的至少一个和/或与系统控制逻辑708通信的任意合适的设备或组件提供任意合适的接口。
在一些实施例中,系统控制逻辑708可以包括一个或多个存储器控制器,以提供连接到系统内存704的接口。系统内存704可以用于加载以及存储数据和/或指令。在一些 实施例中设备700的内存704可以包括任意合适的易失性存储器,例如合适的动态随机 存取存储器(DRAM)。
NVM/存储器706可以包括用于存储数据和/或指令的一个或多个有形的、非暂时性的计算机可读介质。在一些实施例中,NVM/存储器706可以包括闪存等任意合适的非 易失性存储器和/或任意合适的非易失性存储设备,例如HDD(Hard Disk Drive,硬盘驱 动器),CD(Compact Disc,光盘)驱动器,DVD(Digital Versatile Disc,数字通用光盘) 驱动器中的至少一个。
NVM/存储器706可以包括安装在设备700的装置上的一部分存储资源,或者它可以由设备访问,但不一定是设备的一部分。例如,可以经由网络接口710通过网络访问 NVM/存储708。
特别地,系统内存704和NVM/存储器706可以分别包括:指令720的暂时副本和 永久副本。指令720可以包括:由处理器702中的至少一个执行时导致设备700实施如 图4所示的方法的指令。在一些实施例中,指令720、硬件、固件和/或其软件组件可另 外地/替代地置于系统控制逻辑708,网络接口710和/或处理器702中。
网络接口710可以包括收发器,用于为设备700提供无线电接口,进而通过一个或多个网络与任意其他合适的设备(如前端模块,天线等)进行通信。在一些实施例中, 网络接口710可以集成于设备700的其他组件。例如,网络接口710可以集成于处理器702的,系统内存704,NVM/存储器706,和具有指令的固件设备(未示出)中的至少 一种,当处理器702中的至少一个执行所述指令时,设备700实现图2-7所示的各种实 施例的一个或多个实施例。
网络接口710可以进一步包括任意合适的硬件和/或固件,以提供多输入多输出无线 电接口。例如,网络接口710可以是网络适配器,无线网络适配器,电话调制解调器和/或无线调制解调器。
在一个实施例中,处理器702中的至少一个可以与用于系统控制逻辑708的一个或多个控制器的逻辑封装在一起,以形成系统封装(SiP)。在一个实施例中,处理器702 中的至少一个可以与用于系统控制逻辑708的一个或多个控制器的逻辑集成在同一管芯 上,以形成片上系统(SoC)。
设备700可以进一步包括:输入/输出(I/O)设备712。I/O设备712可以包括用户 界面,使得用户能够与设备700进行交互;外围组件接口的设计使得外围组件也能够与 设备700交互。在一些实施例中,设备700还包括传感器,用于确定与设备700相关的 环境条件和位置信息的至少一种。
在一些实施例中,用户界面可包括但不限于显示器(例如,液晶显示器,触摸屏显示器等),扬声器,麦克风,一个或多个相机(例如,静止图像照相机和/或摄像机),手 电筒(例如,发光二极管闪光灯)和键盘。
在一些实施例中,外围组件接口可以包括但不限于非易失性存储器端口、音频插孔 和电源接口。
在一些实施例中,传感器可包括但不限于陀螺仪传感器,加速度计,近程传感器,环境光线传感器和定位单元。定位单元还可以是网络接口710的一部分或与网络接口710交互,以与定位网络的组件(例如,全球定位系统(GPS)卫星)进行通信。
本申请的各方法实施方式均可以以软件、磁件、固件等方式实现。
可将程序代码应用于输入指令,以执行本文描述的各功能并生成输出信息。可以按 已知方式将输出信息应用于一个或多个输出设备。为了本申请的目的,处理系统包括具有诸如例如数字信号处理器(DSP)、微控制器、专用集成电路(ASIC)或微处理器之类 的处理器的任何系统。
程序代码可以用高级程序化语言或面向对象的编程语言来实现,以便与处理系统通 信。在需要时,也可用汇编语言或机器语言来实现程序代码。事实上,本文中描述的机制不限于任何特定编程语言的范围。在任一情形下,该语言可以是编译语言或解释语言。
至少一个实施例的一个或多个方面可以由存储在计算机可读存储介质上的表示性指 令来实现,指令表示处理器中的各种逻辑,指令在被机器读取时使得该机器制作用于执 行本文所述的技术的逻辑。被称为“IP核”的这些表示可以被存储在有形的计算机可读存 储介质上,并被提供给多个客户或生产设施以加载到实际制造该逻辑或处理器的制造机 器中。
在一些情况下,指令转换器可用来将指令从源指令集转换至目标指令集。例如,指令转换器可以变换(例如使用静态二进制变换、包括动态编译的动态二进制变换)、变形、仿真或以其它方式将指令转换成将由核来处理的一个或多个其它指令。指令转换器可以用软件、硬件、固件、或其组合实现。指令转换器可以在处理器上、在处理器外、或者 部分在处理器上且部分在处理器外。
以上所述,仅为本申请实施例的具体实施方式,但本申请实施例的保护范围并不局 限于此,任何在本申请实施例揭露的技术范围内的变化或替换,都应涵盖在本申请实施例的保护范围之内。因此,本申请实施例的保护范围应以所述权利要求的保护范围为准。
Claims (20)
1.一种用于第一终端设备的故障处理的方法,其特征在于,所述方法包括:
判断所述第一终端设备在执行分布式业务的第一部分业务过程中是否出现所述故障;
在出现所述故障的情况下,将所述第一终端设备的调用信息存储在分布式文件系统中,其中所述第一终端设备的所述调用信息包括所述第一终端设备被第二终端设备调用的信息以及所述第一终端设备调用第三终端设备的信息中的至少一个,其中所述第二终端设备和第三终端设备中的至少一个执行所述分布式业务的第二和第三部分业务中的至少一个。
2.如权利要求1所述的方法,其特征在于,还包括:
在出现所述故障的情况下,将所述第一终端设备的分布式业务日志集合存储在分布式文件系统中,其中所述第一终端设备的所述分布式业务日志集合包括所述第一终端设备在与发生所述故障的时间相关联的预定时间段内所产生的多个日志,并且其中所述预定时间段包括发生所述故障的所述时间。
3.如权利要求1或2所述的方法,其特征在于,还包括:
在未出现所述故障的情况下,
确定所述分布式文件系统中是否存在至少部分指示所述第一终端设备调用所述第三终端设备的所述第三终端设备的调用信息;
在存在所述第三终端设备的所述调用信息的情况下,将所述第一终端设备的所述调用信息存储在所述分布式文件系统中。
4.如权利要求2所述的方法,其特征在于,还包括:
在未出现所述故障的情况下,将所述第一终端设备执行所述第一部分业务所产生的所述第一终端设备的分布式业务日志集合存储在所述分布式文件系统中。
5.如权利要求1-4中任一项所述的方法,其特征在于,所述分布式文件系统至少由执行所述分布式业务的多个终端设备共享,其中所述多个终端设备包括所述第一终端设备,所述第二终端设备和/或所述第三终端设备。
6.如权利要求1-4中任一项所述的方法,其特征在于,所述多个分布式业务日志集合中的每个分布式业务日志和/或所述调用信息包括标识所述分布式业务的标识信息。
7.如权利要求6所述的方法,其特征在于,所述调用信息还包括执行所述分布式业务的多个终端设备的数量,并且所述第一终端设备在执行所述第一部分业务的情况下,将所述数量加1。
8.如权利要求6所述的方法,其特征在于,还包括:
基于所述分布式文件系统中的所述调用信息,确定所述分布式业务的调用链信息,其中所述调用链信息指示执行所述分布式业务的所述多个终端设备之间的调用顺序;以及
将所述调用链信息存储在所述分布式文件系统中。
9.如权利要求1-8所述的方法,其特征在于,还包括:
至少部分地基于执行所述分布式业务的多个终端设备中的每个终端设备的设备基础信息、所述每个终端设备的故障率、所述每个终端设备与所述多个终端设备通信的故障率中的至少一个,在所述多个终端设备中选出预备日志收集设备。
10.如权利要求9所述的方法,还包括:将表示选出的所述预备日志收集设备的信息存储在所述分布式文件系统中。
11.如权利要求9或10所述的方法,其特征在于,在出现所述故障的情况下,根据所述每个终端设备选出的所述预备日志收集设备,选出最终日志收集设备用于收集与所述故障相关的所述分布式业务日志集合。
12.如权利要求11所述的方法,其特征在于,还包括:
在所述第一终端设备为所述最终日志收集设备的情况下,
从所述分布式文件系统获取所述每个终端设备的所述分布式业务日志集合并发送到服务器。
13.如权利要求11所述的方法,其特征在于,所述将所述每个终端设备的所述分布式业务日志集合发送到服务器,还包括:根据所述调用链信息的所述调用顺序,将所述每个终端设备的所述分布式业务日志集合发送到所述服务器。
14.如权利要求11所述的方法,其特征在于,还包括:
在所述第一终端设备为所述最终日志收集设备的情况下,将所述调用链信息发送到所述服务器。
15.一种用于第一终端设备的故障处理的方法,其特征在于,所述方法包括:
判断所述第一终端设备在执行分布式业务的第一部分业务过程中是否出现所述故障;
在出现所述故障的情况下,将所述第一终端设备的调用信息存储在分布式文件系统中,其中所述第一终端设备的所述调用信息包括所述第一终端设备被第二终端设备调用的信息以及所述第一终端设备调用第三终端设备的信息中的至少一个,其中所述第二终端设备和第三终端设备中的至少一个执行所述分布式业务的第二和第三部分业务中的至少一个;以及
至少部分地基于执行所述分布式业务的多个终端设备中的每个终端设备的设备基础信息、所述每个终端设备的故障率、所述每个终端设备与所述多个终端设备通信的故障率中的至少一个,在所述多个终端设备中选出预备日志收集设备。
16.如权利要求15所述的方法,还包括:将表示选出的所述预备日志收集设备的信息存储在所述分布式文件系统中。
17.如权利要求15或16所述的方法,其特征在于,根据所述每个终端设备选出的所述预备日志收集设备,选出最终日志收集设备用于收集与所述故障相关的分布式业务日志集合。
18.如权利要求17所述的方法,其特征在于,还包括:
在所述第一终端设备为所述最终日志收集设备的情况下,
从所述分布式文件系统获取所述每个终端设备的所述分布式业务日志集合并发送到服务器。
19.一种用于第一终端设备的故障处理的装置,其特征在于,所述装置包括:
故障检测模块,用于判断所述第一终端设备在执行分布式业务的第一部分业务过程中是否出现所述故障;
故障分析模块,用于在出现所述故障的情况下,将所述第一终端设备的调用信息存储在分布式文件系统中,其中所述第一终端设备的所述调用信息包括所述第一终端设备被第二终端设备调用的信息以及所述第一终端设备调用第三终端设备的信息中的至少一个,其中所述第二终端设备和第三终端设备中的至少一个执行所述分布式业务的第二和第三部分业务中的至少一个。
20.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有指令,该指令在计算机上执行时使所述计算机执行根据权利要求1-18中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010191916.5A CN111478798B (zh) | 2020-03-18 | 2020-03-18 | 故障处理方法、故障处理的装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010191916.5A CN111478798B (zh) | 2020-03-18 | 2020-03-18 | 故障处理方法、故障处理的装置和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111478798A true CN111478798A (zh) | 2020-07-31 |
CN111478798B CN111478798B (zh) | 2021-12-24 |
Family
ID=71747535
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010191916.5A Active CN111478798B (zh) | 2020-03-18 | 2020-03-18 | 故障处理方法、故障处理的装置和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111478798B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112887123A (zh) * | 2021-01-06 | 2021-06-01 | 新浪网技术(中国)有限公司 | 一种基于调用链的业务报警方法、系统及装置 |
WO2022063032A1 (zh) * | 2020-09-28 | 2022-03-31 | 华为技术有限公司 | 一种面向分布式系统的故障信息关联上报方法及相关设备 |
CN114302249A (zh) * | 2020-09-22 | 2022-04-08 | 华为云计算技术有限公司 | 一种传输链信息生成方法及装置 |
CN114647531A (zh) * | 2022-05-19 | 2022-06-21 | 武汉四通信息服务有限公司 | 故障解决方法、故障解决系统、电子设备及存储介质 |
CN115174249A (zh) * | 2022-07-18 | 2022-10-11 | 湖北天融信网络安全技术有限公司 | 安全日志的处理方法及电子设备、存储介质 |
CN115460071A (zh) * | 2022-07-27 | 2022-12-09 | 荣耀终端有限公司 | 故障定位方法及装置 |
CN115834699A (zh) * | 2021-09-16 | 2023-03-21 | 广州汽车集团股份有限公司 | 一种服务调用链跟踪实现方法及系统 |
CN115988438A (zh) * | 2022-12-14 | 2023-04-18 | 中国联合网络通信集团有限公司 | 呼叫业务数据处理方法、装置、设备及存储介质 |
CN116662129A (zh) * | 2022-11-02 | 2023-08-29 | 荣耀终端有限公司 | 日志获取方法、装置、芯片、电子设备及介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107622084A (zh) * | 2017-08-10 | 2018-01-23 | 深圳前海微众银行股份有限公司 | 日志管理方法、系统以及计算机可读存储介质 |
CN109981349A (zh) * | 2019-02-27 | 2019-07-05 | 华为技术有限公司 | 调用链信息查询方法以及设备 |
US20190354422A1 (en) * | 2018-05-16 | 2019-11-21 | Nec Laboratories America, Inc. | Joint semantic and format similarity for large scale log retrieval |
CN110502494A (zh) * | 2019-08-30 | 2019-11-26 | 北京思维造物信息科技股份有限公司 | 日志处理方法、装置、计算机设备及存储介质 |
-
2020
- 2020-03-18 CN CN202010191916.5A patent/CN111478798B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107622084A (zh) * | 2017-08-10 | 2018-01-23 | 深圳前海微众银行股份有限公司 | 日志管理方法、系统以及计算机可读存储介质 |
US20190354422A1 (en) * | 2018-05-16 | 2019-11-21 | Nec Laboratories America, Inc. | Joint semantic and format similarity for large scale log retrieval |
CN109981349A (zh) * | 2019-02-27 | 2019-07-05 | 华为技术有限公司 | 调用链信息查询方法以及设备 |
CN110502494A (zh) * | 2019-08-30 | 2019-11-26 | 北京思维造物信息科技股份有限公司 | 日志处理方法、装置、计算机设备及存储介质 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114302249A (zh) * | 2020-09-22 | 2022-04-08 | 华为云计算技术有限公司 | 一种传输链信息生成方法及装置 |
WO2022063032A1 (zh) * | 2020-09-28 | 2022-03-31 | 华为技术有限公司 | 一种面向分布式系统的故障信息关联上报方法及相关设备 |
CN114363144A (zh) * | 2020-09-28 | 2022-04-15 | 华为技术有限公司 | 一种面向分布式系统的故障信息关联上报方法及相关设备 |
CN114363144B (zh) * | 2020-09-28 | 2023-06-27 | 华为技术有限公司 | 一种面向分布式系统的故障信息关联上报方法及相关设备 |
CN112887123A (zh) * | 2021-01-06 | 2021-06-01 | 新浪网技术(中国)有限公司 | 一种基于调用链的业务报警方法、系统及装置 |
CN115834699A (zh) * | 2021-09-16 | 2023-03-21 | 广州汽车集团股份有限公司 | 一种服务调用链跟踪实现方法及系统 |
CN114647531A (zh) * | 2022-05-19 | 2022-06-21 | 武汉四通信息服务有限公司 | 故障解决方法、故障解决系统、电子设备及存储介质 |
CN114647531B (zh) * | 2022-05-19 | 2022-07-29 | 武汉四通信息服务有限公司 | 故障解决方法、故障解决系统、电子设备及存储介质 |
CN115174249A (zh) * | 2022-07-18 | 2022-10-11 | 湖北天融信网络安全技术有限公司 | 安全日志的处理方法及电子设备、存储介质 |
CN115460071A (zh) * | 2022-07-27 | 2022-12-09 | 荣耀终端有限公司 | 故障定位方法及装置 |
CN115460071B (zh) * | 2022-07-27 | 2023-09-29 | 荣耀终端有限公司 | 故障定位方法及装置 |
CN116662129A (zh) * | 2022-11-02 | 2023-08-29 | 荣耀终端有限公司 | 日志获取方法、装置、芯片、电子设备及介质 |
CN115988438A (zh) * | 2022-12-14 | 2023-04-18 | 中国联合网络通信集团有限公司 | 呼叫业务数据处理方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111478798B (zh) | 2021-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111478798B (zh) | 故障处理方法、故障处理的装置和存储介质 | |
EP3451175A1 (en) | Chatbot version comparision | |
CN104821954A (zh) | 一种跨平台远程过程调用方法 | |
CN111064626B (zh) | 配置更新方法、装置、服务器及可读存储介质 | |
CN111597065B (zh) | 用于采集设备信息的方法和装置 | |
CN113110939A (zh) | 运行数据的处理方法、装置、计算机设备及存储介质 | |
CN110968331A (zh) | 应用程序运行的方法和装置 | |
CN113076253A (zh) | 一种测试方法和测试装置 | |
CN111651232A (zh) | 一机多控方法、装置、系统及电子设备 | |
CN114328097A (zh) | 一种文件监控方法、装置、电子设备和存储介质 | |
CN117041111A (zh) | 车云功能测试方法、装置、电子设备及存储介质 | |
CN114567571B (zh) | 性能测试方法、装置、电子设备和计算机可读存储介质 | |
CN113395319B (zh) | 网络故障感知的方法、系统、电子设备及存储介质 | |
CN111198853A (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
CN109739756A (zh) | 移动终端应用测试的方法及设备 | |
CN110806967A (zh) | 一种单元测试方法和装置 | |
CN115269331A (zh) | 面向微服务组的服务拓扑监控方法及相关设备 | |
CN114020565A (zh) | 日志智能采集处理方法、装置、电子设备及存储介质 | |
CN109756393B (zh) | 信息处理方法、系统、介质和计算设备 | |
JP2012146288A (ja) | コンテンツ提供装置及び方法 | |
CN112416698A (zh) | 监控系统的扩展方法及装置、存储介质及电子设备 | |
CN111258873A (zh) | 测试方法及装置 | |
CN105812433B (zh) | 一种云适配处理方法、装置、终端及云服务器 | |
CN110191141B (zh) | 服务调用信息处理方法、装置及计算机系统 | |
CN116701134B (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 |