CN115543674A - 进程管理方法、装置、电子设备及存储介质 - Google Patents

进程管理方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN115543674A
CN115543674A CN202211277651.6A CN202211277651A CN115543674A CN 115543674 A CN115543674 A CN 115543674A CN 202211277651 A CN202211277651 A CN 202211277651A CN 115543674 A CN115543674 A CN 115543674A
Authority
CN
China
Prior art keywords
target task
task process
time interval
log information
target
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.)
Pending
Application number
CN202211277651.6A
Other languages
English (en)
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.)
Ecoflow Technology Ltd
Original Assignee
Ecoflow Technology 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 Ecoflow Technology Ltd filed Critical Ecoflow Technology Ltd
Priority to CN202211277651.6A priority Critical patent/CN115543674A/zh
Publication of CN115543674A publication Critical patent/CN115543674A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0715Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a system implementing multitasking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3017Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is implementing multitasking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • G06F11/3093Configuration details thereof, e.g. installation, enabling, spatial arrangement of the probes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请适用于计算机技术领域,提供了一种进程管理方法、装置、电子设备及存储介质,所述方法包括:监听目标任务进程发送的心跳帧;若在第一预设时间间隔内未接收到目标任务进程发送的心跳帧,则关闭所述目标任务进程,释放所述目标任务进程对应的硬件资源,并重启所述目标任务进程。本申请能够在所述目标任务进程处于假死状态后,顺利重启目标任务进程,使目标任务进程恢复正常。

Description

进程管理方法、装置、电子设备及存储介质
技术领域
本申请属于计算机技术领域,尤其涉及一种进程管理方法、装置、电子设备及存储介质。
背景技术
随着计算机技术的发展,应用***也变得越来越成熟。应用***中包含若干任务进程,只有在各个任务进程是健康运行的状态下,应用***才能够正常执行任务。因此,有必要对任务进程的运行状态进行监控。
然而,在对任务进程的运行状态进行监控过程中,当任务进程处于假死状态时,容易出现假死的任务进程无法恢复正常的问题。
发明内容
本申请实施例提供了一种进程管理方法、进程管理装置、电子设备及存储介质,以解决状态异常的任务进程处于假死状态时无法恢复正常的问题。
本申请实施例第一方面提供一种进程管理方法,所述方法包括:
监听目标任务进程发送的心跳帧;
若在第一预设时间间隔内未接收到目标任务进程发送的心跳帧,则关闭所述目标任务进程,释放所述目标任务进程对应的硬件资源,并重启所述目标任务进程。
本申请实施例第二方面还提供一种进程管理装置,所述装置包括:
心跳监听模块,用于监听目标任务进程发送的心跳帧;
资源释放模块,用于在第一预设时间间隔内未接收到目标任务进程发送的心跳帧时,关闭所述目标任务进程,释放所述目标任务进程对应的硬件资源,并重启所述目标任务进程。
本申请实施例第三方面还提供一种电子设备,所述电子设备包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如上述进程管理方法。
本申请实施例第四方面还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述进程管理方法。
由于任务进程处于假死状态时会继续占用硬件资源,使得电子设备在重启任务进程时,会因为无法抢占硬件资源而导致任务进程重启失败。因此,本申请实施例提供的进程管理方法中,在对第一预设时间间隔内未发送心跳帧的目标任务进程进行重新启动时,先关闭目标任务进程,释放目标任务进程占用的硬件资源,然后再重新启动所述目标任务进程,从而使目标任务进程可以顺利重启,恢复正常。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的进程管理方法的流程示意图;
图2是本申请一实施例提供的故障日志信息获取的流程示意图;
图3是本申请实施例提供的进程管理***的结构示意图;
图4是本申请一实施例提供的监听主管理节点的流程示意图;
图5是本申请实施例提供的进程管理装置的结构示意图;
图6是本申请实施例提供的电子设备的结构示意图。
具体实施方式
为了能够更清楚地理解本申请的上述目的、特征和优点,下面结合附图和具体实施例对本申请进行详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本申请,所描述的实施例是本申请一部分实施例,而不是全部的实施例。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请。
相关技术中,当监听不到功能模块执行任务的心跳数据时,尤其是该功能模块处于假死状态时,该功能模块会继续占据硬件资源,从而导致电子设备在重新启动该功能模块时无法抢占硬件资源而重启失败。
为解决上述问题,本申请实施例提供的进程管理方法可以由电子设备中的进程管理装置执行。进程管理装置可以监听各个功能模块在各自目标任务进程的心跳帧,在心跳帧异常时释放目标任务进程对应的硬件资源,并重启目标任务进程,以保证各功能模块在运行异常时能正常重启。其中,电子设备可以是自移动设备或其他可以进行通信监测的设备。示例性的,自移动设备可以是包含自移动辅助功能的设备。其中,自移动辅助功能可以是车载终端实现,相应的自移动设备可以是具有该车载终端的车辆。自移动设备还可以是半自移动设备或者完全自主移动设备。例如,割草机、扫地机、具有导航功能的机器人等。
上述进程管理装置可以由电子设备中的实体结构实现,或者,也可以由电子设备的软件功能实现。当上述进程管理装置由软件功能实现时,上述进程管理装置可以理解为在电子设备的处理器中运行的特定的进程(或者也可以称呼为节点),上述特定的进程可以用于管理处理器中运行的其他任务进程。为了便于说明,在后续的描述中,可以将电子设备中的进程管理装置称呼为主管理节点。
下面以自移动设备为电子设备,并作为具体的执行主体来对本申请实施例提出的进程管理方法进行详细介绍。图1是本申请一实施例提供的进程管理方法的流程示意图。如图1所示,所述进程管理方法可以包括如下步骤,根据不同的需求,该流程图中步骤的顺序可以改变,某些可以省略:
S11,监听目标任务进程发送的心跳帧。
在本申请的至少一实施例中,目标任务进程可以是指目标功能模块执行目标任务的程序进程。目标功能模块可以是自移动设备的其中一个功能模块,目标任务可以是目标功能模块的任务。其中,每个功能模块可以包括至少一个任务。对于每一任务,均存在与之对应的任务进程,即在各自的进程中执行相应的任务。
在一实施例中,当自移动设备为割草机时,割草机中的功能模块可以包括但不限于回充模块、作业模块、建图模块等。
回充模块可以包括回充控制任务和充电任务等;作业模块可以包括割草任务、落叶收集任务、植物防护剂喷洒任务等;建图模块可以包括定位任务和地图构建任务等。其中,回充控制任务是指控制自移动设备返回到充电桩上进行充电的任务。充电任务是指自移动设备与充电桩连接后进行充电的任务。割草任务是指在指定区域内进行割草的任务。落叶收集任务是指在指定区域对落叶或者指定垃圾进行收集的任务。植物防护剂喷洒任务是指在指定区域内对草进行喷洒植物防护剂等的任务。定位任务是指自移动设备接收定位信号的任务。地图构建任务是指构建区域所在的地图的任务。
各任务模块在各自的任务进程中执行相应的任务,例如,回充控制任务对应的任务进程为回充控制进程,通过回充控制进程控制自移动设备返回到充电桩上进行充电。充电任务对应的任务进程为充电进程,通过充电进程控制自移动设备与充电桩连接后进行充电。割草任务对应的任务进程为割草进程,通过割草进程控制自移动设备在指定区域内进行割草。落叶收集任务对应的任务进程为落叶收集进程,通过落叶收集进程控制自移动设备在指定区域对落叶或者指定垃圾进行收集。植物防护剂喷洒任务对应的任务进程为植物防护剂喷洒进程,通过植物防护剂喷洒进程在指控制自移动设备在指定区域内对草进行喷洒植物防护剂。定位任务对应的任务进程为定位进程,通过定位进程控制自移动设备接收定位信号。地图构建任务对应的任务进程为地图构建进程,通过地图构建进程构建区域所在的地图。
在一实施例中,自移动设备的主管理节点可以与多个功能模块对应的任务进程建立心跳连接,建立了心跳连接的任务进程向上述主管理节点发送心跳帧,主管理节点通过心跳帧监测任务进程是否存在异常。其中,心跳帧是指利用TCP(Transmission ControlProtocol,传输控制协议)协议或其他类型的传输协议,定时向外发送的帧数据。
在一实施例中,电子设备中可以设有计时器,主管理节点可以使用计时器记录各个任务进程发送相邻的心跳帧的时间间隔。当主管理节点接收到任务进程发送的心跳帧时,重置该任务进程对应的计时器,并调用计时器开始计时处理,检测再次接收到该任务进程发送的心跳帧所需的时间间隔。
上述计时器可以为软件计时器,也可以为硬件计时器,在此不做限制。在一实施例中,计时器的数量可以为1个,也即若干个任务进程通过1个计时器完成计时操作,每个任务进程与计时器记录的时间间隔间存在第一映射关系,通过查询第一映射关系,能够得到每个任务进程对应的时间间隔。示例性地,当一个计时器C0分别记录任务进程c01,任务进程c02,…,任务进程c0n各自对应的时间间隔s1,s2,…,sn时,第一映射关系可以表示为(c01,s1),(c02,s2),……,(c0n,sn),通过查询上述任务进程所在的第一映射关系即可以知道任务进程对应的时间间隔。在其他实施例中,计时器的数量为多个,也即对于每个任务进程,均设置对应的计时器用于记录时间间隔。任务进程与计时器间存在第二映射关系,通过查询第二映射关系,能够得到每个任务进程对应的计时器,从而得到计时器记录的时间间隔。示例性地,当多个计时器Cn分别记录各自对应的任务进程的时间间隔时,可以使计时器C1记录任务进程c11的时间间隔s1,计时器C2记录任务进程c22的时间间隔s2,…,计时器Cn记录任务进程cnn的时间间隔sn,第二映射关系可以表示为(c11,s1),(c22,s2),……,(cnn,sn),通过查询上述任务进程所在的第二映射关系即可以知道任务进程对应的时间间隔。
S12,若在第一预设时间间隔内未接收到目标任务进程发送的心跳帧,则关闭目标任务进程,释放目标任务进程对应的硬件资源,并重启目标任务进程。
在本申请的至少一实施例中,若在第一预设时间间隔内未接收到目标任务进程发送的心跳帧,则表示目标任务进程出现了异常状态,主管理节点可以对目标任务进程执行重启操作。
在对目标任务进程执行重启操作之前,主管理节点可以先关闭目标任务进程,并释放目标任务进程对应的硬件资源。然后,主管理节点再重启该目标任务进程。过释放硬件资源后再重新启动目标任务进程,能够在重启目标任务进程时抢占硬件资源,从而使目标任务进程可以顺利重启,恢复正常。
上述第一预设时间间隔可以根据实际需求进行设置。例如,上述第一预设时间间隔可以设置为3秒、5秒、7秒等时间间隔。本申请实施例对第一预设时间间隔的具体设置方式不予限制。
在一实施例中,目标任务进程与硬件资源间存在对应关系,通过查询对应关系,能够得到目标任务进程对应的硬件资源。
在一些实施方式中,在监听目标任务进程发送的心跳帧之后,还包括:
若在第二预设时间间隔内未接收到目标任务进程发送的心跳帧,则广播异常通知信息;第二预设时间间隔小于或等于第一预设时间间隔,异常通知信息用于指示目标任务进程出现了异常状况。
其中,第二预设时间间隔为预先设置的用于评估任务进程是否存在异常的时间间隔,例如,第二预设时间间隔可以设置为1秒、2秒、3秒等时间间隔。
第一预设时间间隔为预先设置的用于评估是否需要重启任务进程的时间间隔,所以,第一预设时间间隔应当比第二时间间隔大。例如,假设第一预设时间间隔设置为5秒,则第二预设时间间隔可以设置为2秒、3秒等小于5秒的时间间隔。
若主管理节点在第二预设时间间隔内接收到目标任务进程发送的心跳帧,则表示目标任务进程正常运行;若主管理节点在第二预设时间间隔内未接收到目标任务进程发送的心跳帧,则表示目标任务进程可能存在异常,主管理节点可以广播异常通知信息至其余功能模块对应任务进程。异常通知信息可以用于指示目标任务进程出现异常状况,例如,异常通知信息可以表现为“任务进程A存在异常状况”、特定的字符串或其他形式,本申请实施例对异常通知信息的具体内容不予限制。
示例性地,以自移动设备为割草机为例,割草机中的功能模块可以包括但不限于回充模块、作业模块、建图模块等,回充模块可以包括回充控制任务和充电任务等,作业模块可以包括割草任务、落叶收集任务、植物防护剂喷洒任务等,建图模块可以包括定位任务和地图构建任务等。对应的任务进程包括回充控制进程、充电进程、割草进程、落叶收集进程、植物防护剂喷洒进程、定位进程与地图构建进程。
当回充控制进程在第二预设时间间隔内未向主管理节点发送心跳帧时,主管理节点可以确定回充控制进程存在异常,主管理节点可以生成“回充控制进程存在异常状况”的异常通知信息,并将该异常通知信息广播至各个任务进程。
在本申请实施例中,在广播异常通知信息之后,还包括:
若在第一预设时间间隔内接收到目标任务进程发送的心跳帧,则广播恢复通知信息;恢复通知信息用于指示目标任务进程恢复了正常状况。
其中,第一预设时间间隔为预先设置的用于评估是否需要重启目标任务进程的时间间隔,例如,第一预设时间间隔可以设置为3秒、5秒、7秒等时间间隔。若存在异常状况的目标任务进程在第一预设时间间隔重新向主管理节点发送心跳帧,则表示目标任务进程在出现了短暂的异常后,恢复了正常状况,主管理节点可以广播恢复通知信息至其余任务进程,恢复通知信息可以为“任务进程A恢复正常状况”。
示例性地,以自移动设备为割草机为例,当定位进程出现异常状况时,主管理节点可以广播异常通知信息“定位进程存在异常状况”至其余任务进程。此时,其余任务进程,如割草进程,可以暂时采用环境特征与历史地图的匹配情况完成定位功能;当定位进程恢复正常状况时,主管理节点可以广播恢复通知信息“定位进程恢复正常状况”至其余任务进程,此时,其余任务进程可以继续利用定位进程接收到的定位信号完成作业过程中需结合使用的定位功能。本申请实施例通过主管理节点对恢复正常状况的目标任务进程进行广播处理,能够及时让其余任务进程复位各自的状态,继续互相配合完成相应功能,保证功能运行的稳定性。
在本申请的至少一实施例中,自移动设备中包含的多个任务进程间可能存在关联状态,存在关联状态的任务进程间的运行状况彼此存在影响,不存在关联状态的任务进程间的运行状况不存在相互影响。关联状态可以为预先设置的。
以自移动设备为割草机为例,割草机中包含的任务进程可以包括回充控制进程、充电进程、割草进程、落叶收集进程、植物防护剂喷洒进程、定位进程与地图构建进程等进程。其中,回充控制进程与充电进程关联,割草进程、落叶收集进程以及植物防护剂喷洒进程均与定位进程彼此关联,定位进程与地图构建进程关联。当回充控制进程存在异常状况时,会影响到充电进程的正常运行,而不会影响到割草进程、落叶收集进程、植物防护剂喷洒进程、定位进程与地图构建进程等进程的正常运行。当割草进程存在异常状况时,会影响到落叶收集进程以及植物防护剂喷洒进程的正常运行,而不会影响到回充控制进程、充电进程、定位进程与地图构建进程的正常运行。当定位进程存在异常状况时,会影响到地图构建进程的正常运行,而不会影响到回充控制进程、充电进程、割草进程、落叶收集进程与植物防护剂喷洒进程的正常运行。
可选地,在广播异常通知信息之后,还包括:
检测是否存在与目标任务进程关联的其余任务进程;
若存在与目标任务进程关联的关联任务进程,则中断关联任务进程的运行;
若不存在与目标任务进程关联的关联任务进程,则保持其余任务进程的运行。
其中,任务进程间的关联状态可以为预先设置的,通过查询关联状态,能够得到与目标任务进行关联的关联任务进程。举例来说,当回充控制进程处于异常状态时,需广播异常通知信息至充电进程、割草进程、落叶收集进程、植物防护剂喷洒进程、定位进程与地图构建进程,仅中断关联的充电进程的运行,无需中断割草进程、落叶收集进程、植物防护剂喷洒进程、定位进程与地图构建进程的运行。本申请实施例通过确定任务进程间的关联状态,并在目标任务进程处于异常状态时,仅中断与之关联的关联任务进程的运行,保持不关联的其余任务进程的运行,以最大程度保证自移动设备的运行。
其中,主管理节点中断与目标任务进程相关联的关联任务进程的运行,可以是主管理节点通过相应的控制指令控制关联任务进程停止运行,或者,也可以是关联任务进程接收到上述广播异常通知信息后停止运行。
在本申请一些实施方式中,在重启目标任务进程之后,还包括:
若在第三预设时间间隔内未接收到目标任务进程发送的心跳帧,则返回执行关闭目标任务进程,释放目标任务进程对应的硬件资源,并重启目标任务进程的步骤。
其中,在重启目标任务进程之后,通过监听在第三预设时间间隔内是否接收到目标任务进程发送的心跳帧以检测目标任务进程是否顺利重启。
若在第三预设时间间隔内接收到目标任务进程发送的心跳帧,则主管理节点可以确定目标任务进程已顺利重启,重启后的目标任务进程处于正常状况。
若在第三预设时间间隔内未接收到目标任务进程发送的心跳帧,则主管理节点可以确定目标任务进程重启失败或重启后的目标任务进程处于异常状况。此时,主管理节点可以再次执行关闭目标任务进程,释放目标任务进程对应的硬件资源,并重启目标任务进程的步骤,直至重启后的目标任务进程处于正常状况。
第三预设时间间隔为预先设置的用于评估重启后的目标任务进程是否正常的时间间隔,例如,第三预设时间间隔可以为3秒、5秒、10秒等时间间隔。
在本申请一些实施方式中,在重启目标任务进程之后,还包括:
若在第三预设时间间隔内接收到目标任务进程发送的心跳帧,则广播恢复通知信息;恢复通知信息用于指示目标任务进程恢复了正常状况。
其中,若在第三预设时间间隔内接收到目标任务进程发送的心跳帧,则确定重启后的目标任务进程处于正常状况。此时,主管理节点可以生成恢复通知信息,并将生成的恢复通知信息广播至其余任务进程。
在一实施例中,在广播恢复通知信息之后,所述方法还包括:确定与目标任务进程关联的关联任务进程;重新运行关联任务进程。
在目标任务进程恢复正常后,主管理节点可以重新运行与目标任务进程相关联的关联任务进程。其中,主管理节点重新运行与目标任务进程相关联的关联任务进程可以是主管理节点通过相应的控制指令控制关联任务进程重新运行,或者,也可以是关联任务进程接收到上述广播恢复通知信息后重新运行。
在一实施例中,若在第一预设时间间隔内未接收到目标任务进程发送的心跳帧,则确定目标任务进程处于异常状态,需要对目标任务进程进行故障分析,减少后续目标任务进程由于相同故障重新处于异常状态。通过分析目标任务进程对应的故障日志信息对目标任务进程进行故障分析。由于目标任务进程在执行目标任务时会产生大量日志信息,需要对大量日志信息进行定位并选取一定数量的日志信息作为故障日志信息,能够提高故障分析的效率。
在本申请一些实施方式中,在第一预设时间间隔内未接收到目标任务进程发送的心跳帧之后,还包括:
从目标任务进程对应的日志信息中,获取最新的、预设数量的日志信息作为故障日志信息。
其中,日志信息可以存储于预设数据库中,预设数据库中存储每个任务进程对应的日志信息,任务进程与日志信息间存在对应关系,通过查询该对应关系,能够得到目标任务进程对应的日志信息。
在一些实施例中,主管理节点可以获取目标任务进程对应的日志信息,确定日志信息对应的时间戳信息,以时间戳信息最新的日志信息为起点,选取预设数量的日志信息作为故障日志信息。
预设数据库中记录的日志信息携带对应的时间戳信息,时间戳信息用于标识日志信息产生的时间,时间戳最新的日志信息为最新产生的日志。预设数量为预先设置的选取日志信息的数量。
示例性地,每个任务进程均存在对应的日志目录,通过查询日志目录,能够得到每个任务进程对应的日志信息。在目标任务进程刚出现异常状况时,异常状况相关的信息通常记录在最新的日志信息中。因此,在进行故障分析时,不用将目标任务进程相关的所有日志信息都作为故障日志信息进行分析。一般对目标任务进程进行故障分析时仅需从日志信息的底部向上截取部分日志信息(例如1-2万行日志信息)作为故障日志信息即可。
由于日志信息的数量庞大,因此,从目标任务进程对应的日志信息中截取最新的、预设数量的日志信息作为故障日志信息,可以极大地缩小故障排查的搜索范围,提高排查效率。
在本申请一些实施方式中,参考图2,图2是本申请一实施例提供的故障日志信息获取的流程示意图,在第一预设时间间隔内未接收到目标任务进程发送的心跳帧之后,所述方法还包括:
S121,从目标任务进程对应的日志信息中,确定包含预设状态标识的日志信息;
S122,获取包含预设状态标识的日志信息的时间戳,并将最早的时间戳对应的日志信息确定为目标日志信息;
S123,选取目标日志信息及目标日志信息之后的日志信息作为故障日志信息。
其中,预设状态标识为预先设置的用于表示日志信息存在异常的状态标识,例如,预设状态标识可以为“logger.error”。当目标任务进程发生异常时,日志信息中会存在报错信息,该报错信息可以按照预设状态标识的形式存在,通过确定日志信息中包含预设状态标识的日志信息,能够得到故障日志信息。每个日志信息均携带对应的时间戳信息,时间戳信息用于标识日志产生的时间。
主管理节点可以获取包含预设状态标识的日志信息的时间戳,并将最早的时间戳对应的日志信息确定为目标日志信息,最早的时间戳对应的日志信息可以理解为目标任务进程刚出现异常时对应的日志信息。然后,主管理节点可以将目标日志信息之后的日志信息都作为故障日志信息,以便排查目标任务进程出现异常状况的原因。
由于日志信息的数量庞大,因此,根据预设状态标识,可以从目标任务进程对应的日志信息中精确地截取到与异常状况相关的日志信息作为故障日志信息,缩小故障排查的搜索范围,提高排查效率。
本申请实施例提供的上述进程管理方法,在对第一预设时间间隔内未发送心跳帧的目标任务进程进行重新启动时,通过释放硬件资源后再重新启动目标任务进程,能够在任务进程处于假死状态后,顺利重启目标任务进程,使得目标任务进程恢复正常。
请参阅图3,图3是本申请实施例提供的进程管理***的结构示意图。进程管理***40用于监测自移动设备中的各个任务进程是否能够正常运行。在一实施例中,进程管理***40包含主管理节点41、从管理节点42以及目标任务进程50,主管理节点41与从管理节点42均可以为电子设备30,目标任务进程50可以是功能模块对应的任务进程。主管理节点41用于执行进程管理方法,主管理节点41用于监测自移动设备的功能模块中的目标任务进程50是否能够正常运行(详见上述方法实施例中的相关描述)。从管理节点42用于监测主管理节点41是否能够正常运行。
上述从管理节点可以是专门用于监测主管理节点是否能够正常运行的节点(或者也可以称呼为进程),或者,上述从管理节点也可以是上述目标任务进程50中的一个任务进程。
示例性地,电子设备可以从上述目标任务进程50中确定一任务进程作为从管理节点。比如,电子设备可以将状态机进程作为从管理节点。主管理节点可以通过监听各目标任务进程(包括状态机进程)的心跳帧以确定各目标任务进程是否发生异常状况。状态机进程可以监听主管理节点的心跳帧以确定主管理节点是否发生异常状态,从而实现主管理节点和从管理节点的双向监听。
可以理解的是,当从管理节点对主管理节点进行管理时,从管理节点可以视为上述方法实施例中的主管理节点,主管理节点可以视为上述方法实施例中的目标任务进程,从管理节点可以执行上述方法实施例中主管理节点所执行的各个步骤以实现相应的功能。
示例性地,参考上述方法实施例中的S11和S12,从管理节点可以执行如图4所示的步骤,包括:
S21,监听主管理节点发送的心跳帧。
S22,若在第四预设时间间隔内未接收到主管理节点发送的心跳帧,则关闭主管理节点,释放主管理节点对应的硬件资源,并重启主管理节点。
上述第四预设时间间隔可以根据实际需求进行设置。例如,上述第四时间间隔可以设置为3秒、5秒、7秒等时间间隔。
本申请实施例通过构建从管理节点,从管理节点用于监测主管理节点是否能够正常运行,并在主管理节点处于异常状态时,及时重启主管理节点,减少因主管理节点出现异常导致的进程管理失败的问题,从而提高进程管理的效率。
请参阅图5,图5是本申请实施例提供的进程管理装置的结构示意图。在一些实施例中,所述进程管理装置20可以包括多个由计算机程序段所组成的功能模块。所述进程管理装置20中的各个程序段的计算机程序可以存储于电子设备30的存储器中,并由至少一个处理器所执行,以执行(详见图1描述)进程管理的功能。
本实施例中,所述进程管理装置20根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:心跳监听模块201与资源释放模块202。本申请所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。在本实施例中,关于各模块的功能将在后续的实施例中详述。
所述心跳监听模块201可以用于监听目标任务进程发送的心跳帧。
所述资源释放模块202可以用于在第一预设时间间隔内未接收到目标任务进程发送的心跳帧时,关闭所述目标任务进程,释放所述目标任务进程对应的硬件资源,并重启所述目标任务进程。
请参阅图6,图6是本申请实施例提供的电子设备30的结构示意图。在本申请较佳实施例中,所述电子设备30包括存储器31、至少一个处理器32、至少一条通信总线33及收发器34。
本领域技术人员应该了解,图6示出的电子设备的结构并不构成本申请实施例的限定,既可以是总线型结构,也可以是星形结构,所述电子设备30还可以包括比图示更多或更少的其他硬件或者软件,或者不同的部件布置。
在一些实施例中,所述电子设备30是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路、可编程门阵列、数字处理器及嵌入式设备等。所述电子设备30还可包括客户设备,所述客户设备包括但不限于任何一种可与客户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、数码相机等。
需要说明的是,所述电子设备30仅为举例,其他现有的或今后可能出现的电子产品如可适应于本申请,也应包含在本申请的保护范围以内,并以引用方式包含于此。
在一些实施例中,所述存储器31中存储有计算机程序,所述计算机程序被所述至少一个处理器32执行时实现如所述的进程管理方法中的全部或者部分步骤。所述存储器31包括只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable Read-OnlyMemory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子擦除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
进一步地,所述计算机可读存储介质可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序等;存储数据区可存储根据电子设备30的使用所创建的数据等。
在一些实施例中,所述至少一个处理器32是所述电子设备30的控制核心(ControlUnit),利用各种接口和线路连接整个电子设备30的各个部件,通过运行或执行存储在所述存储器31内的程序或者模块,以及调用存储在所述存储器31内的数据,以执行电子设备30的各种功能和处理数据。例如,所述至少一个处理器32执行所述存储器中存储的计算机程序时实现本申请实施例中所述的进程管理方法的全部或者部分步骤;或者实现进程管理装置的全部或者部分功能。所述至少一个处理器32可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。
在一些实施例中,所述至少一条通信总线33被设置为实现所述存储器31以及所述至少一个处理器32等之间的连接通信。
尽管未示出,所述电子设备30还可以包括给各个部件供电的电源(比如电池),优选的,电源可以通过电源管理装置与所述至少一个处理器32逻辑相连,从而通过电源管理装置实现管理充电、放电、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述电子设备30还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
上述以软件功能模块的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机,电子设备,或者网络设备等)或处理器(processor)执行本申请各个实施例所述方法的部分。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,既可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或,单数不排除复数。说明书中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本申请的技术方案而非限制,尽管参照较佳实施例对本申请进行了详细说明,本领域的普通技术人员应当理解,可以对本申请的技术方案进行修改或等同替换,而不脱离本申请技术方案的精神和范围。

Claims (10)

1.一种进程管理方法,其特征在于,所述方法包括:
监听目标任务进程发送的心跳帧;
若在第一预设时间间隔内未接收到所述目标任务进程发送的心跳帧,则关闭所述目标任务进程,释放所述目标任务进程对应的硬件资源,并重启所述目标任务进程。
2.如权利要求1所述的方法,其特征在于,在所述监听目标任务进程发送的心跳帧之后,还包括:
若在第二预设时间间隔内未接收到所述目标任务进程发送的心跳帧,则广播异常通知信息;所述第二预设时间间隔小于或等于所述第一预设时间间隔,所述异常通知信息用于指示所述目标任务进程出现了异常状况。
3.如权利要求2所述的方法,其特征在于,在所述广播异常通知信息之后,还包括:
若在第一预设时间间隔内接收到所述目标任务进程发送的心跳帧,则广播恢复通知信息;所述恢复通知信息用于指示所述目标任务进程恢复了正常状况。
4.如权利要求1所述的方法,其特征在于,在所述重启所述目标任务进程之后,还包括:
若在第三预设时间间隔内未接收到所述目标任务进程发送的心跳帧,则返回执行关闭所述目标任务进程,释放所述目标任务进程对应的硬件资源,并重启所述目标任务进程的步骤。
5.如权利要求1所述的方法,其特征在于,在所述重启所述目标任务进程之后,还包括:
若在第三预设时间间隔内接收到所述目标任务进程发送的心跳帧,则广播恢复通知信息;所述恢复通知信息用于指示所述目标任务进程恢复了正常状况。
6.如权利要求1所述的方法,其特征在于,在所述在第一预设时间间隔内未接收到目标任务进程发送的心跳帧之后,还包括:
从所述目标任务进程对应的日志信息中,获取最新的、预设数量的日志信息作为故障日志信息。
7.如权利要求1所述的方法,其特征在于,在所述在第一预设时间间隔内未接收到目标任务进程发送的心跳帧之后,所述方法还包括:
从所述目标任务进程对应的日志信息中,确定包含预设状态标识的日志信息;
获取所述包含预设状态标识的日志信息的时间戳,并将最早的时间戳对应的日志信息确定为目标日志信息;
选取所述目标日志信息及所述目标日志信息之后的日志信息作为故障日志信息。
8.一种进程管理装置,其特征在于,所述装置包括:
心跳监听模块,用于监听目标任务进程发送的心跳帧;
资源释放模块,用于在第一预设时间间隔内未接收到所述目标任务进程发送的心跳帧时,关闭所述目标任务进程,释放所述目标任务进程对应的硬件资源,并重启所述目标任务进程。
9.一种电子设备,其特征在于,所述电子设备包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如权利要求1至7中任意一项所述的进程管理方法。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任意一项所述的进程管理方法。
CN202211277651.6A 2022-10-19 2022-10-19 进程管理方法、装置、电子设备及存储介质 Pending CN115543674A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211277651.6A CN115543674A (zh) 2022-10-19 2022-10-19 进程管理方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211277651.6A CN115543674A (zh) 2022-10-19 2022-10-19 进程管理方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN115543674A true CN115543674A (zh) 2022-12-30

Family

ID=84736225

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211277651.6A Pending CN115543674A (zh) 2022-10-19 2022-10-19 进程管理方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN115543674A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117593172A (zh) * 2024-01-16 2024-02-23 北京趋动智能科技有限公司 进程管理方法、装置、介质及设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117593172A (zh) * 2024-01-16 2024-02-23 北京趋动智能科技有限公司 进程管理方法、装置、介质及设备
CN117593172B (zh) * 2024-01-16 2024-04-23 北京趋动智能科技有限公司 进程管理方法、装置、介质及设备

Similar Documents

Publication Publication Date Title
CN110287081A (zh) 一种服务监控***和方法
CN111611114B (zh) 综合航空电子phm***
WO2016188100A1 (zh) 信息***故障场景信息收集方法及***
CN114328102B (zh) 设备状态监控方法、装置、设备及计算机可读存储介质
CN102141947A (zh) 一种对采用嵌入式操作***的计算机应用***中异常任务的处理方法及***
CN101197621A (zh) 一种对网管***故障进行远程诊断定位的方法及其***
CN115543674A (zh) 进程管理方法、装置、电子设备及存储介质
CN111143167B (zh) 用于多平台的告警归并方法及装置、设备、存储介质
CN113946499A (zh) 一种微服务链路跟踪及性能分析方法、***、设备及应用
CN110611597A (zh) 一种基于单向网闸环境的跨域运维***
CN110971439A (zh) 策略决策方法及装置、***、存储介质、策略决策单元及集群
CN115002166A (zh) 基于物联网的电池智能监控、租赁管理***及方法
CN114064217B (zh) 一种基于OpenStack的节点虚拟机迁移方法及装置
CN116560893B (zh) 一种计算机应用程序运行数据故障处理***
CN107797856B (zh) 基于windows服务的计划任务管控方法、装置及存储介质
CN112149975B (zh) 一种基于人工智能的apm监控***及监控方法
CN112286762A (zh) 基于云环境的***信息分析方法、装置、电子设备及介质
CN109655647B (zh) 一种电能表的异常事件记录方法
US9465621B2 (en) Priority activation of metrology driver in boot sequence
US9027035B2 (en) Non real-time metrology data management
CN115037652A (zh) 一种套保***后台模块运行监控***
CN109978503A (zh) 基于微服务的数据处理方法
CN114745409A (zh) 一种智慧物联网设备远程控制方法
CN115687036A (zh) 日志采集方法、装置及日志***
CN113824601A (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