系统日志处理方法及其装置与流程

文档序号:32481131发布日期:2022-12-09 22:42阅读:58来源:国知局
系统日志处理方法及其装置与流程

1.本公开涉及车辆技术领域,尤其涉及一种系统日志处理方法、装置、电子设备及存储介质。


背景技术:

2.基于现有的整车电子电气架构(electrical electronic architecture,ee),有多达几十个电子控制单元(electronic control unit,ecu)分别负责不同的功能实现,通过总线通信(can)或以太网等方式相互通信、协作实现整车功能。为了解决分布式的这些问题,可以把很多功能相似的ecu功能集成整合到一个比ecu性能更强的处理器硬件平台上,该处理器硬件平台可以作为汽车的域控制器(domain control unit,dcu)。
3.在实车测试或车辆出售后,还是会出现一些偶发问题。可能需要多个域控制器和/或ecu的配合解决,如果此时域控制器和/或ecu功能出现异常,只能依靠诊断信息查找问题,无法查到根本原因,会给车辆的运行带来安全隐患。
4.公开内容
5.本公开旨在至少在一定程度上解决相关技术中的技术问题之一。
6.为此,本公开的一个目的在于提出一种系统日志处理方法。
7.本公开的第二个目的在于提出一种系统日志处理装置。
8.本公开的第三个目的在于提出一种电子设备。
9.本公开的第四个目的在于提出一种非瞬时计算机可读存储介质。
10.本公开的第五个目的在于提出一种车辆。
11.为达上述目的,本公开第一方面实施方式提出了一种系统日志处理方法,由服务集群中的主域控制器执行,所述主域控制器为所述服务集群中得票数量最多的域控制器,包括:接收电子控制单元ecu发送的日志数据;基于日志数据,生成目标日志文件;将目标日志文件发送给服务集群中至少一个从域控制器进行保存。
12.根据本公开的一个实施方式,接收电子控制单元ecu发送的日志数据,包括:响应于ecu为以太网通信的第一ecu,接收第一ecu发送的日志数据;或者响应于ecu为以总线通信的第二ecu,接收第二ecu所属域控制器发送的日志数据。
13.根据本公开的一个实施方式,将目标日志文件发送给服务集群中至少一个从域控制器保存,包括:从服务集群中从域控制器中,选取目标从域控制器;将目标日志文件发送给目标从域控制器保存。
14.根据本公开的一个实施方式,从服务集群中从域控制器中,选取目标从域控制器,还包括:获取从域控制器的属性信息和/或状态信息;基于属性信息和/或状态信息对从域控制器进行排序,并按照排序确定目标从域控制器,其中目标从域控制器的数量大于预设数量。
15.根据本公开的一个实施方式,从服务集群中从域控制器中,选取目标从域控制器,还包括:选取得票数量大于得票阈值的从域控制器作为目标从域控制器。
16.根据本公开的一个实施方式,基于电子控制单元ecu发送的日志数据,还包括:基于日志数据按照预设的数据排列顺序生成目标日志文件
17.根据本公开的一个实施方式,方法还包括:响应于存在多个得票数量最多的域控制器,确定下属ecu数量最多的域控制器为主域控制器。
18.为达上述目的,本公开第一方面实施方式提出了一种系统日志处理方法,由服务集群中的从域控制器执行,包括:接收以总线通信的第二ecu发送的日志数据,并将日志数据上报给主域控制器;接收主域控制器基于日志数据生成的目标日志文件。
19.根据本公开的一个实施方式,方法还包括:接收主域控制器发送的心跳信号;响应于接收心跳信号超时,重新进行选举投票。
20.为达上述目的,本公开第二方面实施例提出了一种系统日志处理装置,由服务集群中的主域控制器执行,主域控制器为服务集群中得票数量最多的域控制器,包括:接收模块,用于接收电子控制单元ecu发送的日志数据;生成模块,用于基于日志数据,生成目标日志文件;保存模块,用于将目标日志文件发送给服务集群中至少一个从域控制器进行保存。
21.为达上述目的,本公开第二方面实施例提出了一种系统日志处理装置,由服务集群中的从域控制器执行,包括:第一收取模块,用于接收以总线通信的第二ecu发送的日志数据,并将日志数据上报给主域控制器;第二收取模块,用于接收主域控制器基于第二ecu发送的日志数据生成的目标日志文件。
22.为达上述目的,本公开第三方面实施例提出了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以实现如本公开第一方面实施例的系统日志处理方法。
23.为达上述目的,本公开第四方面实施例提出了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于实现如本公开第一方面实施例的系统日志处理方法。
24.为达上述目的,本公开第五方面实施例提出了一种车辆,包括如上述第三方面所提出的电子设备。
25.由此,通过选举确认主域控制器,可以整合所有域控制器中的日志数据生成目标日志文件,并分散至其他域控制器中进行存储,可以防止由于某个域控制器无法正常工作而无法调取日志数据,提高系统的稳定性。
附图说明
26.图1是本公开一个实施方式的一种系统日志处理方法的流程图;
27.图2是本公开一个实施方式的一种服务集群的结构示意图;
28.图3是本公开一个实施方式的另一种系统日志处理方法的流程图;
29.图4是本公开一个实施方式的另一种系统日志处理方法的流程图;
30.图5是本公开一个实施方式的系统日志处理方法的总体流程示意图;
31.图6为本公开提出的一种系统日志处理装置的框图;
32.图7为本公开提出的另一种系统日志处理装置的框图;
33.图8为本公开提出的一种电子设备框图。
具体实施方式
34.下面详细描述本公开的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本公开,而不能理解为对本公开的限制。
35.当前技术中,汽车里的各个ecu都是通过can和lin总线连接在一起,而且ecu总数已经迅速增加到了几十个甚至上百个之多,整个系统复杂度越来越大,几近上限。为了解决分布式的这些问题,可以把很多功能相似、分离的ecu功能集成整合到一个比ecu性能更强的处理器硬件平台上,该处理器硬件平台可以作为汽车的域控制器(domain control unit,dcu)。通过域控制器可以实现从ecu分布式ee架构演进到域集中式ee架构。实际操作中,会出现一些偶发性问题,可能需要多个域控制器和/或ecu进行配合解决,此时如果域控制器和/或ecu的工作出现异常,则无法对问题进行分析,会对驾驶安全带来很大的隐患。
36.为了解决上述问题,本公开提供了一种系统日志处理方法。
37.图1为本公开提出的一种系统日志处理方法的一种示例性实施方式的示意图,由服务集群中的主域控制器执行,主域控制器为服务集群中得票数量最多的域控制器,如图1所示,该系统日志处理方法包括以下步骤:
38.s101,接收电子控制单元ecu发送的日志数据。
39.如图2所示,服务集群是指将很多域控制器集中起来一起进行同一种服务的集群,在客户端看来就像是只有一个服务器。集群可以利用多个计算机进行并行计算从而获得很高的计算速度,也可以用多个计算机做备份,从而使得任何一个机器坏了整个系统还是能正常运行。
40.如图2所示,车辆的服务集群中可存在多个域控制器,本公开实施例需要从多个域控制器中选出一个搜集并整合所有域控制器的日志数据的主域控制器。
41.在本公开实施例中,可通过选举算法(raft)算法从服务集群中的所有域控制器中推选出主域控制器。当服务集群中的域控制器满足选举投票条件时,会推选出至少一个域控制器作为候选者,所有域控制器进行投票,当候选者满足当选条件,则成为主域控制器,其他候选者作为从域控制器。
42.可选地,当检测到域控制器中不存在主域控制器,举例来说,当服务集群初始化启动时,此时所有域控制器处于启动状态,可认为满足选举投票条件,需要进行投票选举推选出主域控制器。
43.可选地,还可为已经存在主域控制器,当检测到主域控制器工作异常时,举例来说,当检测到主域控制器出现延时或者功能被破坏时,此时可认为满足投票条件,需要进行重新投票选举出新的主域控制器。
44.需要说明的是,当选条件可为得票最多的域控制器当选。可选地,当多个域控制器的得票为最多且票数相同时,则基于各个域控制器的其他属性确认当选,举例来说,可通过域控制器下属的ecu的数量,选取ecu数量最多的域控制器作为主域控制器。
45.在确定主域控制器后,主域控制器可以将当选的消息发送给ecu,ecu将采集的日志数据发送给主域控制器进行处理和保存。
46.需要说明的是,每个ecu的数据传输方式可为不同,举例来说,可为总线传输或者以太网传输等。
47.可选地,当ecu为总线传输时,需要先将日志数据上报给自己所属的域控制器,再由域控制器发送给主域控制器进行处理和保存。
48.可选地,当ecu为以太网传输时,可直接将日志数据上报给主域控制器进行处理和保存。
49.需要说明的是,ecu可周期性向主域控制器发送日志数据,举例来说,可每隔一个小时发送一次。由于ecu的功能不同,不同的ecu发送周期可为不同,此处不作任何限定。
50.可选地,ecu还可基于搜集的日志数据的大小来确定是否进行发送。举例来说,当ecu搜集的日志数据达到指定大小时,则将日志数据发送给主域控制器。
51.s102,基于日志数据,生成目标日志文件。
52.在本公开实施例中,主域控制器在接收到ecu发送的日志数据后,可基于日志数据生成目标日志文件。需要说明的是,生成目标日志文件的方法可为多种,此处不作任何限定。
53.可选地,可提前设定数据目录,然后将ecu发送的日志数据存储到对应的目录下,以生成目标日志文件。
54.可选地,还可将获取到的日志数据进行标记,然后存储,以生成目标日志文件。在需要调取使用时,可通过标记获取对应的日志数据。
55.s103,将目标日志文件发送给服务集群中至少一个从域控制器进行保存。
56.主域控制器生成目标日志文件后,可将目标日志文件发送给至少一个从域控制器进行保存。
57.可选地,主域控制器可将目标日志文件发送给所有从域控制器进行保存。
58.可选的,主域控制器还可从从域控制器中进行挑选,然后将将目标日志文件发送给挑选后的从域控制器进行存储。
59.可选地,还可基于服务集群中从域控制器的数量,随机选取超过设定比例的从域控制器,然后将将目标日志文件发送给挑选后的从域控制器进行存储。
60.在本公开实施例中,首先进行选举投票,并基于投票结果确定主域控制器,然后接收电子控制单元ecu发送的日志数据,而后基于电子控制单元ecu发送的日志数据,生成目标日志文件,最后将目标日志文件发送给服务集群中至少一个从域控制器进行保存。由此,通过选举确认主域控制器,可以整合服务集群所有ecu的日志数据,并分散至域控制器中进行存储,可以防止由于域控制器和/或ecu无法正常工作而无法调取日志数据,提高系统的稳定性。
61.在本公开实施例中,基于投票结果确定主域控制器可包括,首先获取域控制器的得票数量,确定得票数量最多的控制器为主域控制器,或者响应于存在多个得票数量最多的域控制器,确定下属ecu数量最多的域控制器为主域控制器。由此,通过投票结果可以更加准确且方便的确定主域控制器,当存在票数相同的情况时,通过下属ecu的数量确定主域控制器,可以保证尽量多的ecu直接将数据传输给主域控制器,而不需要再通过其他域控制器进行中转给主域控制器,尽可能的降低ecu数据在传输的过程中的丢包或者流失。
62.在本公开实施例中,可对日志数据按照预设的ecu目录进行排序,生成目标日志文件。需要说明的是,ecu的目录可包括域控制器目录,域控制器目录下包括该域控制器所属的ecu的目录。在接收到ecu的日志数据后,可将该日志数据存储到对应的ecu目录下,需要
说明的是,ecu目录可为提前设定好的,并根据不同的服务集群进行设定,此处不作任何限制。
63.需要说明的是,以总线通信的第二ecu无法直接将日志数据发送给主域控制器,而需要先发送给各个第二ecu所属的从域控制器,然后通过从域控制器发送给主域控制。从域控制器会将接收到的以总线通信的第二ecu采集的日志数据发送给主域控制器。
64.主域控制器在接收到的ecu发送的日志数据中,还包括以太网通信的第一ecu。第一ecu可以直接通过以太网将日志数据发送给主域控制器。如图2所示,ecu1~m为支持以太网通信的第一ecu。
65.在本公开实施例中,在确定主域控制器后,主域控制器会向从域控制器按照周期发送心跳信号,通过心跳信号,通知从域控制器自身工作正常,无需进行选举投票。
66.进一步地,当域控制器中存储的目标日志文件的大小超过大小阈值时,可按照目标日志文件获取的时间进行逐一删除。需要说明的是,大小阈值可为提前设定好的,并可根据实际需要进行设定。
67.可选地,还可基于目标日志文件保存的时间,将保存时间超过存储时间阈值的目标日志文件进行删除。需要说明的是,存储时间阈值可为提前设定好的,并可根据实际需要进行设定。
68.由此,可以保证域控制器的正常存储功能,防止由于内存过小而无法存储新的目标日志文件。
69.上述实施例中,将目标日志文件发送给服务集群中至少一个从域控制器保存,还可通过图3进一步解释,该方法包括:
70.s301,从服务集群中从域控制器中,选取目标从域控制器。
71.在本公开实施例中,选取目标从域控制器的方法可为多种。
72.可选地,可首获取从域控制器的属性信息和/或状态信息,然后基于属性信息和/或状态信息对从域控制器进行排序,并按照排序确定目标从域控制器,其中目标从域控制器的数量大于预设数量。需要说明的是,预设数量可为提前设定好的,并可根据实际需要进行变换,此处不作任何限定。举例来说,预设数量可为服务集群中从域控制器数量的一半。
73.可选地,还可统计从域控制器的得票数量,选取得票数量大于得票阈值的从域控制器作为目标从域控制器。需要说明的是,得票阈值可为提前设定好的,并可根据实际需要进行变换,此处不作任何限定。举例来说,得票阈值可为3,当从域控制器的得票大于或者等于3时,则可认为从域控制器为目标从域控制器。
74.s302,将目标日志文件发送给目标从域控制器保存。
75.在本公开实施例中,首先从服务集群中从域控制器中,选取目标从域控制器,然后将目标日志文件发送给目标从域控制器保存。由此,通过对服务集群中从域控制器进行筛选,确定目标从域控制器,可以提升目标日志文件存储的效率,为后续更方便的调取目标日志文件中的日志数据提供基础。
76.图4为本公开提出的一种系统日志处理方法的一种示例性实施方式的示意图,由服务集群中的从域控制器执行,如图4所示,该系统日志处理方法包括以下步骤:
77.s401,接收以总线通信的第二ecu发送的日志数据,并将日志数据上报给主域控制器。
78.需要说明的是,第二ecu在将日志数据发送给从域控制器前,还需要对日志数据进行筛选,精简出能表征第二ecu软件逻辑的数据。可选地,可获取日志数据和第二ecu软件逻辑的相关性,并选取相关性较大的日志数据上传到对应的从域控制器中。由此,可以筛选掉无关数据,提升数据传输的效率,降低传输成本。
79.s402,接收主域控制器基于日志数据生成的目标日志文件。
80.在本公开实施例中,首先接收以总线通信的第二ecu发送的日志数据,并将日志数据上报给主域控制器,然后接收主域控制器基于第二ecu发送的日志数据生成的目标日志文件。由此,通过将从域控制器采集的日志数据发送给主域控制器,并存储基于第二ecu发送的日志数据生成的目标日志文件,可以防止由于某个域控制器功能异常而导致数据丢失,增加服务集群的稳定性。
81.在本公开实施例中,从域控制器还可接收主域控制器发送的心跳信号,响应于接收心跳信号超时,重新进行选举投票。需要说明的是,每个从域控制器接收主域控制器发送的心跳信号的超期周期可为不同,当一个从域控制器由于接收超期周期较短,延时或者未接收到心跳信号时,则认为主域控制器工作异常,该从域控制器会作为候选者发起选举投票,重新推选出新的主域控制器。
82.图5为本公开实施例一种系统日志处理方法的流程示意图,如图5所示,当满足投票条件,服务集群中的域控制器进行投票选举,在选举出主域控制器后,ecu将采集到的日志数据log发送给主域控制器,其中如图5所示,主线通信的ecu1~n会将各自搜集的日志数据发送给对应的域控制器,然后由域控制器将日志数据发送给主域控制器,同时,以太网通信的ecu1~m会将各自搜集的日志数据直接发送给主域控制器,主域控制器会将所有的日志数据进行处理,生成目标日志文件,并将目标日志文件发送到其他域控制器中进行存储。在获取数据时,云端服务器可以向域控制器发送目标日志文件获取请求,域控制器可基于请求向云端发送目标日志文件。
83.与上述几种实施例提供的系统日志处理方法相对应,本公开的一个实施例还提供了一种系统日志处理装置,由于本公开实施例提供的系统日志处理装置与上述几种实施例提供的系统日志处理方法相对应,因此上述系统日志处理方法的实施方式也适用于本公开实施例提供的系统日志处理装置,在下述实施例中不再详细描述。
84.图6为本公开提出的一种系统日志处理装置的示意图,由服务集群中的主域控制器执行,主域控制器为服务集群中得票数量最多的域控制器,如图6所示,该系统日志处理装置600,包括:接收模块610、生成模块620和保存模块630。
85.其中,接收模块610,用于接收电子控制单元ecu发送的日志数据。
86.生成模块620,用于基于电子控制单元ecu发送的日志数据,生成目标日志文件。
87.保存模块630,用于将目标日志文件发送给服务集群中至少一个从域控制器进行保存。
88.在本公开的一个实施例中,接收模块610,还用于:响应于ecu为以太网通信的第一ecu,接收第一ecu发送的日志数据;或者响应于ecu为以总线通信的第二ecu,接收第二ecu所属域控制器发送的日志数据。
89.在本公开的一个实施例中,保存模块630,还用于:从服务集群中从域控制器中,选取目标从域控制器;将目标日志文件发送给目标从域控制器保存。
90.在本公开的一个实施例中,保存模块630,还用于:获取从域控制器的属性信息和/或状态信息;基于属性信息和/或状态信息对从域控制器进行排序,并按照排序确定目标从域控制器,其中目标从域控制器的数量大于预设数量。
91.在本公开的一个实施例中,保存模块630,还用于:统计从域控制器的得票数量;选取得票数量大于得票阈值的从域控制器作为目标从域控制器。
92.在本公开的一个实施例中,生成模块620,还用于:基于日志数据按照预设的数据排列顺序生成目标日志文件。
93.在本公开的一个实施例中,装置还用于:定期向从域控制器发送心跳信号。
94.在本公开的一个实施例中,装置还用于:响应于存在多个得票数量最多的域控制器,确定下属ecu数量最多的所述域控制器为主域控制器。
95.图7为本公开提出的一种系统日志处理装置的示意图,由服务集群中的从域控制器执行,如图7所示,该系统日志处理装置700,包括:第一收取模块710和第二收取模块720。
96.其中,第一收取模块710,用于接收以总线通信的第二ecu发送的日志数据,并将日志数据上报给主域控制器。
97.第二收取模块720,用于接收主域控制器基于第二ecu发送的日志数据生成的目标日志文件。
98.在本公开的一个实施例中,装置还用于:接收主域控制器发送的心跳信号;响应于接收心跳信号超时,重新进行选举投票。
99.为了实现上述实施例,本公开实施例还提出一种电子设备800,如图8所示,该电子设备800包括:处理器801和处理器通信连接的存储器802,存储器802存储有可被至少一个处理器执行的指令,指令被至少一个处理器801执行,以实现如本公开第一方面实施例的系统日志处理方法。
100.为了实现上述实施例,本公开实施例还提出一种车辆,包括如上述实施例中所提出的一种电子设备。
101.为了实现上述实施例,本公开实施例还提出一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机实现如本公开第一方面实施例的系统日志处理方法。
102.为了实现上述实施例,本公开实施例还提出一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现如本公开第一方面实施例的系统日志处理方法。
103.在本公开的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”、“顺时针”、“逆时针”、“轴向”、“径向”、“周向”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本公开和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本公开的限制。
104.此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本公开的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
105.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示
例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本公开的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
106.尽管上面已经示出和描述了本公开的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本公开的限制,本领域的普通技术人员在本公开的范围内可以对上述实施例进行变化、修改、替换和变型。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1