CN117389968A - 车辆日志存储、传输方法、装置、车辆、电子设备及介质 - Google Patents
车辆日志存储、传输方法、装置、车辆、电子设备及介质 Download PDFInfo
- Publication number
- CN117389968A CN117389968A CN202311310056.2A CN202311310056A CN117389968A CN 117389968 A CN117389968 A CN 117389968A CN 202311310056 A CN202311310056 A CN 202311310056A CN 117389968 A CN117389968 A CN 117389968A
- Authority
- CN
- China
- Prior art keywords
- log
- core
- vehicle
- log data
- data
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 91
- 230000005540 biological transmission Effects 0.000 title claims abstract description 42
- 238000004891 communication Methods 0.000 claims description 32
- 238000004590 computer program Methods 0.000 claims description 22
- 238000006243 chemical reaction Methods 0.000 claims description 11
- 238000003745 diagnosis Methods 0.000 claims description 9
- 238000004806 packaging method and process Methods 0.000 claims description 5
- 230000005059 dormancy Effects 0.000 claims description 4
- 238000012544 monitoring process Methods 0.000 claims description 4
- 238000012216 screening Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 24
- 238000010586 diagram Methods 0.000 description 11
- 238000004458 analytical method Methods 0.000 description 8
- 230000003044 adaptive effect Effects 0.000 description 6
- 238000013480 data collection Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000012827 research and development Methods 0.000 description 3
- 230000007958 sleep Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 239000000306 component Substances 0.000 description 2
- 239000008358 core component Substances 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000002349 favourable effect Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000011835 investigation Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 239000000700 radioactive tracer Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- 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/17—Details of further file system functions
- G06F16/1734—Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs
-
- 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/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
-
- 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/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling file systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及车辆技术领域,公开了一种车辆日志存储、传输方法、装置、车辆、电子设备及介质,该车辆日志存储方法通过对设置于车辆的跨域多核控制器中第一核的第一日志数据、第二核的第二日志数据和整车第一节点控制器的第三日志数据中至少之一作为车辆日志数据进行获取,基于车辆日志数据的类别标识匹配得到对应的日志存储路径,将车辆日志数据基于日志存储路径存储在第一预设存储空间中,以供日志需求端对存储的车辆日志数据进行请求,提供了一种针对跨域多核控制器的日志收集的方案,相对于传统多个功能域的控制器分别上传日志的设计,极大提升了日志收集效率。
Description
技术领域
本发明涉及车辆技术领域,尤其涉及一种车辆日志存储、传输方法、装置、车辆、电子设备及介质。
背景技术
随着整车电子电气架构朝着区域集中式的方向不断演变,车载中央网关控制器也从单一MPU(Micro Processor Unit,微处理器单元)/MCU(Mirco Controller Unit,微控制单元)的架构升级为产品复杂度更高的多核SoC(System on Chip,***级芯片)架构。车载中央网关控制器一般融合多个功能域,如网关、车身、底盘、ADAS(Advanced DriverAssistance System,高级驾驶辅助***)功能等。为了便于辅助控制器和整车电子***的问题分析和排查,日志(log)功能是不可或缺的。一般该日志功能可以用简单的格式记录控制器内部硬件的状态信息,软件运行时的Trace数据(追踪数据),各种关键寄存器配置信息等,待后期排查问题时,可以导出这些日志信息,为问题的根本原有、责任朔源等提供数据支撑。
在单MPU/MCU架构的网关控制器中,通常可以使用框架软件自带的日志模块,简单配置即可解决日志收集和导出的问题,然而在多功能融合的跨域多核控制器上则需要结合各个核的操作***和功能域进行日志的收集和上传,单MPU/MCU架构的网关控制器的日志收集和上传方案不再适用,因此亟须一种针对跨域多核控制器的日志收集和上传的方案。
发明内容
本发明提供一种车辆日志存储、传输方法、装置、车辆、电子设备及介质,以解决相关技术中缺少针对跨域多核控制器的日志收集和上传的方案的技术问题。
本发明实施例提供了一种车辆日志存储方法,所述方法包括:获取车辆日志数据,所述车辆日志数据包括第一核的第一日志数据、第二核的第二日志数据和整车第一节点控制器的第三日志数据中至少之一,所述第一核和所述第二核设置于车辆的跨域多核控制器中,所述车辆日志数据包括类别标识和日志内容;根据所述类别标识匹配得到所述车辆日志数据的日志存储路径;将所述车辆日志数据基于所述日志存储路径存储入第一预设存储空间,以供日志需求端对存储的所述车辆日志数据进行请求。
于本发明一实施例中,若所述车辆日志数据包括第一核的第一日志数据,获取车辆的车辆日志数据包括以下至少之一:第一核第一应用基于预设标准日志记录接口将第一核第一应用日志传输至诊断日志和追踪模块,通过所述诊断日志和追踪模块将所述第一核第一应用日志作为所述第一日志数据发送至第一核日志服务端,以使所述第一核日志服务端获取所述第一日志数据;第一核第二应用将***日志作为所述第一日志数据通过***日志守护进程发送至第一核日志服务端,以使所述第一核日志服务端获取所述第一日志数据;第一核内核将内核日志作为所述第一日志数据通过***日志守护进程发送至第一核日志服务端,以使所述第一核日志服务端获取所述第一日志数据。
于本发明一实施例中,所述第一核日志服务端获取核的第一日志数据之前,所述方法还包括:获取所述第一日志数据的数据来源模块;若所述数据来源模块为目标来源模块,将所述第一日志数据进行加密;将加密后的第一日志数据发送至第一核日志服务端。
于本发明一实施例中,若所述车辆日志数据包括第二核的第二日志数据,获取车辆的车辆日志数据,包括:第二核的第二日志接口模块接收第二日志数据,所述第二日志数据包括上层应用日志数据、基础软件日志数据中至少之一;将所述第二日志数据发送至日志驱动模块,对所述第二日志数据进行打包,并通过核间通信将打包后的第二日志数据传输至第一核日志服务端,以使所述第一核日志服务端获取所述第二日志数据。
于本发明一实施例中,若所述车辆日志数据包括第二核的第二日志数据,获取车辆的车辆日志数据,包括:采集所述第二核启动阶段日志数据;通过所述第二核的引导加载程序模块将所述第二核启动阶段日志数据存储入预设第二存储空间;第二日志接口模块访问所述预设第二存储空间,以获取所述第二核启动阶段日志数据,将所述第二核启动阶段日志数据作为所述第二日志数据发送至日志驱动模块,对所述第二日志数据进行打包,并通过核间通信将打包后的第二日志数据传输至第一核日志服务端,以使所述第一核日志服务端获取所述第二日志数据。
于本发明一实施例中,通过核间通信将打包后的第二日志数据传输至第一核日志服务端之前,所述方法包括以下至少之一:获取所述第一核的运行状态,若所述运行状态包括***休眠或唤醒阶段,将所述第二日志数据存储入第三预设存储空间,监测所述第一核的运行状态,如果所述运行状态更新为启动完成,触发将所述第三预设存储空间存储的第二日志数据基于所述日志驱动模块通过核间通信传输至第一核日志服务端;获取所述第一核的运行状态,若所述运行状态为启动完成,触发通过核间通信将打包后的第二日志数据传输至第一核日志服务端。
于本发明一实施例中,若所述车辆日志数据包括第三日志数据,获取车辆的车辆日志数据,包括:通过所述第二核的路由模块采集整车第一节点控制器的第三日志数据;将所述第三日志数据通过第二核的第二日志接口模块传输至日志驱动模块,以将所述第三日志数据进行打包,并通过核间通信将打包后的第三日志数据传输至第一核日志服务端,以使所述第一核日志服务端获取所述第三日志数据。
于本发明一实施例中,所述方法还包括以下至少之一:获取整车第二节点控制器的第四日志数据,将所述第四日志数据存储入所述整车第二节点控制器的控制器本地,以供日志需求端对存储的所述第四日志数据进行请求;采集所述第一核的第一核启动阶段日志数据,将所述第一核启动阶段日志数据按照预设第一核启动文件路径存储入所述第一预设存储空间,以供日志需求端对存储的所述第一核启动阶段日志数据进行请求。
于本发明一实施例中,将所述车辆日志数据基于所述日志存储路径存储入第一预设存储空间,包括:对所述车辆日志数据进行目标格式转换;将目标格式转换后的车辆日志数据基于所述日志存储路径存储入第一预设存储空间。
本发明实施例还提供了一种车辆日志传输方法,所述方法包括:获取车辆日志上传请求,所述车辆日志上传请求包括目标控制器标识、日志存储路径、日志时间及日志文件大小阈值;根据所述目标控制器标识匹配得到目标控制器的控制器类型;若所述控制器类型包括跨域多核控制器和整车第一节点控制器中至少之一,根据所述日志存储路径和所述日志时间将所述跨域多核控制器中第一预设存储空间存储的至少部分的车辆日志数据确定为目标日志数据,所述第一预设存储空间用于存储通过第一核的第一核日志服务端收集的车辆日志数据,所述第一核设置于所述跨域多核控制器中;基于所述日志文件大小阈值和所述目标日志数据生成车辆日志文件,并上传。
于本发明一实施例中,根据所述目标控制器标识匹配得到目标控制器的控制器类型之后,所述方法还包括:若所述控制器类型包括整车第二节点控制器,根据所述日志时间将所述整车第二节点控制器的控制器本地存储的至少部分的第四日志数据确定为目标日志数据;基于所述日志文件大小阈值和所述目标日志数据生成车辆日志文件,并上传。
于本发明一实施例中,基于所述日志文件大小阈值和所述目标日志数据生成车辆日志文件,包括以下至少之一:如果所述目标日志数据的总数据大小小于或等于所述日志文件大小阈值,基于所述目标日志数据生成一车辆日志文件;如果所述目标日志数据的总数据大小大于所述日志文件大小阈值,将所述目标日志数据拆分为多个目标日志子数据,基于每一所述目标日志子数据生成一车辆日志文件,所述目标日志子数据的子数据大小小于或等于所述日志文件大小阈值。
本发明实施例还提供了一种车辆日志存储装置,所述装置包括:日志获取模块,用于获取车辆日志数据,所述车辆日志数据包括第一核的第一日志数据、第二核的第二日志数据和整车第一节点控制器的第三日志数据中至少之一,所述第一核和所述第二核设置于车辆的跨域多核控制器中,所述车辆日志数据包括类别标识和日志内容;路径匹配模块,用于根据所述类别标识匹配得到所述车辆日志数据的日志存储路径;存储模块,用于将所述车辆日志数据基于所述日志存储路径存储入第一预设存储空间,以供日志需求端对存储的所述车辆日志数据进行请求。
本发明实施例还提供了一种车辆日志传输装置,所述装置包括:请求获取模块,用于获取车辆日志上传请求,所述车辆日志上传请求包括目标控制器标识、日志存储路径、日志时间及日志文件大小阈值;类型匹配模块,用于根据所述目标控制器标识匹配得到目标控制器的控制器类型;日志筛选模块,用于若所述控制器类型包括跨域多核控制器和整车第一节点控制器中至少之一,根据所述日志存储路径和所述日志时间将所述跨域多核控制器中第一预设存储空间存储的至少部分的车辆日志数据确定为目标日志数据,所述第一预设存储空间用于存储通过第一核的第一核日志服务端收集的车辆日志数据,所述第一核设置于所述跨域多核控制器中;上传模块,用于基于所述日志文件大小阈值和所述目标日志数据生成车辆日志文件,并上传。
本发明实施例还提供了一种车辆,所述车辆包括如上述任一项实施例所述的车辆日志存储装置,和/或如上述任一项实施例所述的车辆日志传输装置。
本发明实施例还提供了一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述任一项实施例所述的方法。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现上述任一项实施例所述的方法。
上述提供的车辆日志存储、传输方法、装置、车辆、电子设备及介质所实现的方案中,该车辆日志存储方法通过对设置于车辆的跨域多核控制器中第一核的第一日志数据、第二核的第二日志数据和整车第一节点控制器的第三日志数据中至少之一作为车辆日志数据进行获取,基于车辆日志数据的类别标识匹配得到对应的日志存储路径,将车辆日志数据基于日志存储路径存储在第一预设存储空间中,以供日志需求端对存储的车辆日志数据进行请求,提供了一种针对跨域多核控制器的日志收集的方案,相对于传统多个功能域的控制器分别上传日志的设计,极大提升了日志收集效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的针对车辆日志存储方法及车辆日志传输方法的一种***架构示意图;
图2为本发明实施例提供的车辆日志存储方法的一个流程示意图;
图3为本发明实施例提供的车辆日志传输方法的一个流程示意图;
图4为本发明实施例提供的车辆日志存储&传输方法的一个具体的应用架构示意图;
图5为本发明实施例提供的车辆日志存储装置的一个结构示意图;
图6为本发明实施例提供的车辆日志传输装置的一个结构示意图;
图7为本发明实施例提供的车辆的一个结构示意图;
图8是本发明一实施例中电子设备的一结构示意图;
图9是本发明一实施例中电子设备的另一结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,图1为本发明实施例提供的针对车辆日志存储方法及车辆日志传输方法的一种***架构示意图。如图1所示,用户端如手机103、电脑104等中至少之一作为日志需求端,可以通过云端102向车端101对车端101所存储的日志进行请求。车端101内部设置有跨域多核控制器,可以通过本申请实施例提供的车辆日志存储方法对车辆的日志数据进行存储,以供日志需求端对日志数据进行请求。
需要说明的是,本实施例方法的实现也可以通过本领域技术人员所知晓的其他装置实现,具体的实现方式在此不作限定,以上仅为一种示例,具体的实现方式可以由本领域技术人员根据需要进行选择。
请参阅图2所示,图2为本发明实施例提供的车辆日志存储方法的一个流程示意图,该方法可以应用于设置有跨域多核控制器的车辆的日志收集场景中,该方法包括如下步骤:
步骤S210,获取车辆日志数据。
其中,车辆日志数据包括车辆的第一核的第一日志数据、第二核的第二日志数据和整车第一节点控制器的第三日志数据中至少之一,第一核和第二核设置于车辆的跨域多核控制器中,车辆日志数据包括类别标识和日志内容。例如,第一核为A核,第二核为R核和/或M核。类别标识为本领域技术人员预先设定的类别划分标准进行设定的,用以将日志数据进行分类。对于不同的类别标识预先设定有不同的第一预设存储空间的数据存储路径。日志内容为日志数据本身的内容,包括但不限于日志来源的控制器标识、日志时间等中至少之一。
可以通过预先在第一核中部署第一日志收集软件模块以收集第一核中的第一日志数据,在第二核中部署第二日志收集软件模块以收集第二核中的第二日志数据。第一日志收集软件模块可以采用A核的LOG Server为核心组件,第二日志收集软件模块可以采用R核的LOG Module&Driver为核心组件,这样可以复用中央网关控制器(跨域多核控制器)大数据上传的基础功能模块,大幅降低研发成本和周期,同时也提升了已有软件模块的复用率,充分挖掘了芯片的算力。
整车第二节点控制器的可以为整车以太网节点控制器等主路由节点没有设置于跨域多核控制器中的控制器。整车第二节点控制器的日志文件(第四日志数据)由每一个整车第二节点控制器自身来进行收集和管理。
在一实施例中,若车辆日志数据包括第一核的第一日志数据,获取车辆的车辆日志数据包括以下至少之一:
第一核第一应用基于预设标准日志记录接口将第一核第一应用日志传输至诊断日志和追踪模块,通过诊断日志和追踪模块将第一核第一应用日志作为第一日志数据发送至第一核日志服务端,以使第一核日志服务端获取第一日志数据;
第一核第二应用将***日志作为第一日志数据通过***日志守护进程发送至第一核日志服务端,以使第一核日志服务端获取第一日志数据;
第一核内核将内核日志作为第一日志数据通过***日志守护进程发送至第一核日志服务端,以使第一核日志服务端获取第一日志数据。
若第一核为A核,可以使用A核LOG Server模块作为第一核日志服务端进行主控日志记录和管理。
以A核基于Adaptive Application框架的应用(AA)作为第一核第一应用,预设标准日志记录接口为基于AP(Adaptive Platform)组件提供的标准日志记录API(Application Programming Interface,应用程序接口),诊断日志和追踪模块采用DLT(Diagnostic Log and Trace)日志模块为例,A核基于Adaptive Application框架的应用(AA),基于AP组件提供的标准日志记录API将日志传递至DLT日志模块,再通过私有协议发送给LOG Server模块,以提供一种获取第一核的第一日志数据的方式。上述的私有协议可以为本领域技术人员预先定义的协议,在此不作赘述。
以A核的非AP(Linux)应用作为第一核第二应用为例,A核的非AP(Linux)应用将***日志作为第一日志数据通过***日志守护模块Syslogd中的rsyslogd函数发送至第一核日志服务端,以使第一核日志服务端(A核LOG Server模块)获取第一日志数据,以提供另一种获取第一核的第一日志数据的方式。
该方案同样可以支持对A核内核(第一核内核)的内核日志进行收集,通过第一核内核将内核日志作为第一日志数据通过***日志守护进程发送至第一核日志服务端,以使第一核日志服务端(A核LOG Server模块)获取第一日志数据,以提供另一种获取第一核的第一日志数据的方式。
在另一实施例中,若车辆日志数据包括第二核的第二日志数据,获取车辆的车辆日志数据,包括:第二核的第二日志接口模块接收第二日志数据,第二日志数据包括上层应用日志数据、基础软件日志数据中至少之一;将第二日志数据发送至日志驱动模块,对第二日志数据进行打包,并通过核间通信将打包后的第二日志数据传输至第一核日志服务端,以使第一核日志服务端获取第二日志数据。
例如,以R核为第二核,以R核的LOG Driver作为日志驱动模块,以第二日志接口模块为R核的LOG Module,通过R核的LOG Module给R核上层应用SWC(Software Component)以及基础软件DEM(Diagnostics Event Manager,诊断事件管理器)、DET(Development ErrorTracer,开发错误***)等提供日志传输接口为例,针对R核的上层应用SWC的日志以及基础软件DEM、DET等的日志进行收集,通过第二日志接口模块LOG Module接收SWC、DEM、DET的日志,由LOG Driver驱动打包日志报文,通过IPC传递至A核的LOG Server模块,这样可以实现A核对R核的日志进行收集。通过,LOG Server通过访问IPC,获取R核传递的日志信息。最后LOG Server统一将所有的日志文件根据日志头部的类别标识,按照规定的文件夹路径正确地转存至eMMC中。
在另一实施例中,若车辆日志数据包括第二核的第二日志数据,获取车辆的车辆日志数据,包括:采集第二核启动阶段日志数据;通过第二核的引导加载程序模块将第二核启动阶段日志数据存储入预设第二存储空间;第二日志接口模块访问预设第二存储空间,以获取第二核启动阶段日志数据,将第二核启动阶段日志数据作为第二日志数据发送至日志驱动模块,对第二日志数据进行打包,并通过核间通信将打包后的第二日志数据传输至第一核日志服务端,以使第一核日志服务端获取第二日志数据。
以R核为第二核,以R核的LOG Driver作为日志驱动模块,以设置在跨域多核控制器中的Norflash作为预设第二存储空间为例,该方案还支持对R核的***启动日志进行收集,通过Boot log模块采集R核启动阶段日志数据,经由Bootloader(引导加载程序模块)传输到Norflash中,再将Norflash中的R核启动阶段日志数据通过R核的LOG Module(第二日志接口模块)传输到LOG Driver,通过IPC传递至A核的LOG Server模块,这样可以实现A核对R核的***启动日志进行收集。
在一实施例中,通过核间通信将打包后的第二日志数据传输至第一核日志服务端之前,该方法包括以下至少之一:
获取第一核的运行状态,若运行状态包括***休眠或唤醒阶段,将第二日志数据存储入第三预设存储空间,监测第一核的运行状态,如果运行状态更新为启动完成,触发将第三预设存储空间存储的第二日志数据基于日志驱动模块通过核间通信传输至第一核日志服务端;
获取第一核的运行状态,若运行状态为启动完成,触发通过核间通信将打包后的第二日志数据传输至第一核日志服务端。
继续以第一核为A核,第二核为R核为例,若A核处于尚未运行的***休眠或唤醒阶段,该时间段内R核所收集的第二日志数据先暂存在第三预设存储空间中,待A核正常运行后,再行通过IPC(核间通信)传输给到A核,若A核处于正常运行阶段,则不需要暂存在第三预设存储空间,直接通过IPC传输给到A核。
例如,第三预设存储空间可以是设置在R核中的一个缓存,此时,若在R核下电前,A核仍处于尚未运行的***休眠或唤醒阶段,则可以将第三预设存储空间的日志数据转存到第二预设存储空间中,以保证数据不会丢失,后续待A核正常运行后,再通过IPC将第二预设存储空间中的数据传输给到A核。第一预设存储空间、第二预设存储空间均是非易失性存储介质。在另一中示例中,第三预设存储空间与第二预设存储空间也可以是同一个存储空间划分的两个存储区域。
在一实施例中,若车辆日志数据包括第三日志数据,获取车辆的车辆日志数据,包括:通过第二核的路由模块采集整车第一节点控制器的第三日志数据;将第三日志数据通过第二核的第二日志接口模块传输至日志驱动模块,以将第三日志数据进行打包,并通过核间通信将打包后的第三日志数据传输至第一核日志服务端,以使第一核日志服务端获取第三日志数据。
例如,仍以第二核为R核,第一核为A核为例,R核部署有第一通信主节点,如,R核部署有整车CAN/LIN节点,对于整车CAN/LIN节点控制器的日志,通过R核的路由模块采集并通过IPC同步至A核。具体而言,整车CAN/LIN节点控制器的日志通过R核的路由模块传输到第二日志接口模块,进而由日志驱动模块打包,通过核间通信发送至第一核日志服务端,这样能够实现A核对整车CAN/LIN节点控制器的日志的收集。
由于跨域多核控制器中可能存在多个R核和/或M核,此时可以将一个R核或M核作为第二核,其他的R核和/或M核作为第三核,对第三核的第三日志数据,可以通过核间通信传输给到第二核的路由模块,再通过该路由模块将第三日志数据传输到第二日志接口模块,进而由日志驱动模块打包,通过核间通信发送至第一核日志服务端,这样能够实现A核对第三核中的第三日志数据的收集。其中,第三核的数量可以为一个或多个。
通过上述方式可以实现对于车辆中的跨域多核控制器的日志进行收集,提供了一种针对跨域多核控制器的日志收集的技术方案。
步骤S220,根据类别标识匹配得到车辆日志数据的日志存储路径。
每一日志的日志头部均设置有表征该日志类别的类别标识,通过解析每一日志的日志头部的类别标识,可以查询匹配到该类别标识对应的预先设置好的日志存储路径。
在一实施例中,预先配置在第一预设存储空间中的多个日志存储路径与类别标识之间的映射关系,一个类别标识可以对应一个日志存储路径,也可以多个类别标识对应一个日志存储路径,或者一个类别标识对应多个日志存储路径,当一个类别标识对应多个日志存储路径时,可以按照日志存储路径对应的子存储空间的剩余容量和当前的日志数据的数据量来选取一个合适的日志存储路径。
在本实施例中,根据类别标识匹配得到车辆日志数据的日志存储路径的方式可以为:基于类别标识查找标识路径映射表,得到该类别标识对应的日志存储路径,标识路径映射表为本领域技术人员预先设置的,表征每一类别标识所对应的日志存储路径的记录。日志存储路径表征第一预设存储空间的某一特定的子存储空间。
步骤S230,将车辆日志数据基于日志存储路径存储入第一预设存储空间,以供日志需求端对存储的车辆日志数据进行请求。
通过将车辆日志数据按照其类别标识存储在第一预设存储空间中特定的子存储空间,这样可以方便后续对车辆日志数据的调用。
上述第一日志数据、第二日志数据和第三日志数据均是通过第一核日志服务端来进行汇总收集。但车辆中的部分日志数据也可以不经过第一核日志服务端来进行汇总收集,而是直接存储到第一预设存储空间,如第一核启动阶段日志数据等。
在一实施例中,该车辆日志存储方法还包括:采集第一核的第一核启动阶段日志数据,将第一核启动阶段日志数据按照预设第一核启动文件路径存储入第一预设存储空间,以供日志需求端对存储的第一核启动阶段日志数据进行请求。
在一实施例中,对于车辆中的整车以太网节点控制器而言,也即主路由节点没有设置于跨域多核控制器中的控制器,可以采用下述方式实现日志收集,获取整车第二节点控制器的第四日志数据,将第四日志数据存储入整车第二节点控制器的控制器本地,以供日志需求端对存储的第四日志数据进行请求。
这样,就实现了跨域多核控制器中第一核、第二核、整车以太网节点控制器的第四日志数据、挂载在第二核的整车CAN/LIN节点控制器的第三日志数据的收集及存储,以供需要时进行调用。
在一实施例中,第一核日志服务端获取核的第一日志数据之前,该方法还包括:获取第一日志数据的数据来源模块;若数据来源模块为目标来源模块,将第一日志数据进行加密;将加密后的第一日志数据发送至第一核日志服务端。
由于信息安全要求,一些A核的应用功能,如IDS(Intrusion Detection Systems,入侵检测***),可能设计为单独将日志加密上传至云端。也可以适用本方案统一收集,并对数据做加密后上传,通过识别第一日志数据的数据来源模块,以确定该第一日志数据是否需要进行加密,若数据来源模块为IDS等模块,则需要进行加密,将加密后的第一日志数据发送至第一核日志服务端,以保证数据安全性。目标来源模块为IDS等本领域技术人员所预先设定的模块。
需要说明的是,本方案实施例中所示例的eMMC和Norflash作为外部存储设备,仅作示例之用,可以是其它的存储介质,如nand flash等。本方案实施例中所提及的“A核”及“R核”仅作为SoC的内核类型说明示例,可以是其它SoC方案的内核类型,比如“M核”等。
在一实施例中,为便于后续车辆日志数据的使用,将车辆日志数据基于日志存储路径存储入第一预设存储空间,包括:对车辆日志数据进行目标格式转换;将目标格式转换后的车辆日志数据基于日志存储路径存储入第一预设存储空间。这样,存储在第一预设存储空间中的车辆日志数据均是预先设定的一种或多种格式,在后续数据读取、分析时,可以更为方便快捷地直接利用,不需要再行进行格式转换。
上述实施例提供的车辆日志存储方法,通过对设置于车辆的跨域多核控制器中第一核的第一日志数据、第二核的第二日志数据和整车第一节点控制器的第三日志数据中至少之一作为车辆日志数据进行获取,基于车辆日志数据的类别标识匹配得到对应的日志存储路径,将车辆日志数据基于日志存储路径存储在第一预设存储空间中,以供日志需求端对存储的车辆日志数据进行请求,提供了一种针对跨域多核控制器的日志收集的方案,相对于传统多个功能域的控制器分别上传日志的设计,极大提升了日志收集效率。
此外,该车辆日志存储方法在对车辆日志数据存储在第一预设存储空间中前,会对车辆日志数据进行目标格式转换,以实现格式的统一,这样使得日志文件的格式得到统一,方便后期读取和分析。
以第一核为A核为例,本实施例提供的针对A核日志收集方案中考虑了基于Adaptive Application架构的软件和非Adaptive Application架构的Linux***软件,实际应用时可以根据软件设计方式灵活选择使用,方案实用度高。
请参阅图3所示,图3为本发明实施例提供的车辆日志传输方法的一个流程示意图,该方法可以应用于设置有跨域多核控制器的车辆的日志传输场景中,用于对上述车辆日志存储方法所存储的车辆日志数据,或对其他本领域技术人员所知晓的方式存储的车辆日志数据进行传输,该方法包括如下步骤:
步骤S310,获取车辆日志上传请求。
其中,该车辆日志上传请求包括目标控制器标识、日志存储路径、日志时间及日志文件大小阈值。目标控制器标识可以是目标ECU名称、目标ECU代码等能够表征所需要日志的ECU的身份的信息,日志存储路径为上述实施例中第一预设存储空间的存储路径,基于该日志存储路径能够找到存储在特定位置的车辆日志数据。日志时间为日志的生成或采集时间,由于车辆日志数据自身所带有时间戳,可以基于该日志时间来对相应时间段的车辆日志数据进行筛选。日志时间可以是单一的时间点,此时可以认为在该时间点之后的车辆日志数据可能为需要请求的车辆日志数据,日志时间也可以是时间段,比如XX年XX月XX日X时至XX年XX月XX日XX时,这样可以基于该时间段和车辆日志数据的时间戳来进行请求的车辆日志数据的筛选。日志文件大小所上传的日志文件的大小上限,这样有利于限制上传日志文件的数量,防止上传任务的运行周期过长影响控制器的其他应用性能。
该车辆日志上传请求可以是移动端如手机等日志需求端所发出的,由云端将该车辆日志上传请求转发至车辆的T-Box等车辆联网终端,进而使得车辆得到该车辆日志上传请求。
步骤S320,根据目标控制器标识匹配得到目标控制器的控制器类型。
由于车辆中存在多种类型的控制器,也即,控制器类型包括但不限于如跨域多核控制器(作为中央网关控制器)、整车第二节点控制器、整车第一节点控制器等,此时可以通过目标控制器标识初步知晓当前请求的车辆日志数据是属于哪一类控制器,进而按照相应的方式进行车辆日志数据的获取。
整车第一节点控制器可以是为整车以太网节点控制器等主路由节点设置于跨域多核控制器中的控制器。整车第二节点控制器可以视为整车以太网节点控制器等主路由节点没有设置于跨域多核控制器中的控制器,如整车以太网节点控制器等。
跨域多核控制器中可以设置有第一核、第二核和一个或多个第三核,例如,第一核可以为A核、第二核可以为一个R核或M核,第三核可以为除了第一核、第二核之外,跨域多核控制器中的其他核。
步骤S330,若控制器类型包括跨域多核控制器和整车第一节点控制器中至少之一,根据日志存储路径和日志时间将跨域多核控制器中第一预设存储空间存储的至少部分的车辆日志数据确定为目标日志数据。
其中,第一预设存储空间用于存储通过第一核的第一核日志服务端收集的车辆日志数据,第一核设置于跨域多核控制器中。
该第一核日志服务端收集车辆日志数据的收集方式及第一预设存储空间的存储规则可以参考上述实施例中车辆日志存储方法,也即,该车辆日志数据通过上述任一项车辆日志存储方法实施例所提供的方式存储。
在另一实施例中,根据目标控制器标识匹配得到目标控制器的控制器类型之后,该方法还包括:若控制器类型包括整车第二节点控制器,根据日志时间将整车第二节点控制器的控制器本地存储的至少部分的第四日志数据确定为目标日志数据;基于日志文件大小阈值和目标日志数据生成车辆日志文件,并上传。
如上述实施例所记载的方案,由于整车第二节点控制器中的车辆日志数据是存储入整车第二节点控制器的控制器本地,若此时其存储路径是固定的,因此可以不需要借助日志存储路径实现车辆日志数据的采集。当然,也可以按照预设的整车第二节点存储规则对整车第二节点控制器中的车辆日志数据进行存储,此时可以根据整车第二节点存储规则得到相应的日志存储路径,基于日志存储路径实现车辆日志数据的采集。
步骤S340,基于日志文件大小阈值和目标日志数据生成车辆日志文件,并上传。
这样可以基于日志文件大小阈值将确定得到的目标日志数据切分为一个或多个车辆日志文件,每一车辆日志文件的文件大小小于或等于日志文件大小阈值,以便于后续车辆日志文件的传输。
在一实施例中,基于日志文件大小阈值和目标日志数据生成车辆日志文件,包括以下至少之一:
如果目标日志数据的总数据大小小于或等于日志文件大小阈值,基于目标日志数据生成一车辆日志文件;
如果目标日志数据的总数据大小大于日志文件大小阈值,将目标日志数据拆分为多个目标日志子数据,基于每一目标日志子数据生成一车辆日志文件,目标日志子数据的子数据大小小于或等于日志文件大小阈值。
例如,一种目标日志子数据的数量的确定方式为:若总数据大小与日志文件大小阈值之商为整数,则该数量为商的值,若总数据大小与日志文件大小阈值之商为小数,则数量为小数的整数位加1,此时每一个目标日志子数据的子数据大小可以是相同的,也可以存在至少两个目标日志子数据的子数据大小不同,这可以基于本领域技术人员的需要确定。
上述实施例提供的车辆日志传输方法,通过获取包括目标控制器标识、日志存储路径、日志时间及日志文件大小阈值的车辆日志上传请求,根据目标控制器标识匹配得到目标控制器的控制器类型;若控制器类型包括跨域多核控制器和整车第一节点控制器中至少之一,根据日志存储路径和日志时间将跨域多核控制器中第一预设存储空间存储的至少部分的车辆日志数据确定为目标日志数据,第一预设存储空间用于存储通过第一核的第一核日志服务端收集的车辆日志数据,第一核设置于跨域多核控制器中;基于日志文件大小阈值和目标日志数据生成车辆日志文件,并上传,该方式提供了一种针对跨域多核控制器的日志传输的方案,上传策略中设计了收集日志的时间窗口,有利于用户根据感兴趣的时间点定位需要的日志文件,提高数据相关性和分析问题的效率,上传策略中考虑文件大小上限,有利于限制上传日志文件的数量,防止上传任务的运行周期过长影响控制器的其他应用性能。
此外,日志上传功能基于中央网关控制器大数据上传的基础功能模块,大幅降低研发成本和周期,同时也提升了已有软件模块的复用率,充分挖掘了芯片的算力。
随着整车电子电气架构朝着区域集中式的方向不断演变,车载中央网关控制器也从单一MPU/MCU的架构升级为产品复杂度更高的多核SoC架构,且一般融合多个功能域(如网关、车身、底盘、ADAS功能等)。为了便于辅助控制器和整车电子***的问题分析和排查,日志(log)功能是不可或缺的。一般该功能可以以简单的格式记录控制器内部硬件的状态信息,软件运行时的Trace数据,各种关键寄存器配置信息等,待后期排查问题时,可以导出这些日志信息,为问题的根本原有、责任溯源等提供数据支撑。在单MPU/MCU架构的网关控制器中,通常可以使用框架软件自带的日志模块,简单配置即可解决日志收集和导出的问题,然而在多功能融合的跨域多核控制器上则需要结合各个核的操作***和功能域,部署一套***的日志收集功能。此外,随着当下远程分析车辆问题的需求日益提升,如何将已收集的本地日志信息远程传递给问题分析人员,同样需要解决。针对上述问题,请参见图4,图4为本发明实施例提供的车辆日志存储&传输方法的一个具体的应用架构示意图,如图4所示,一种示例性的基于某SoC芯片架构的中央网关控制器设计整车日志收集和上传的方案,以第一核为A Core,第二核为R Core为例,该方法具体如下,由于车辆日志数据来源于多个功能核,所以需要在A核和R核中部署日志收集的软件模块,以A核的第一日志收集软件模块如LOG Server和R核的第二日志收集软件模块如LOG Module&Driver为核心组件。R核的第二日志接口模块为LOG Module,通过LOG Module给R核上层应用SWC如图4中的ASW(Application Software Layer,应用软件层),以及基础软件DEM、DET等提供日志传输接口,再由日志驱动模块LOG Driver驱动打包日志报文,通过IPC传递至A核的LOG Server。此外,R核可以在A核尚未运行的***休眠或唤醒阶段单独收集日志信息并缓存在R核本地(如预设第二存储空间Norflash),等待A核启动后再通过IPC同步至A核。A核的LOG Server模块主控日志记录和管理。其中A核基于Adaptive Application框架的应用(AA)也即第一核第一应用,基于AP组件(图4中的AP Log)提供的标准日志记录API(预设标准日志记录接口)将日志(第一核第一应用日志)传递至DLT Module(诊断日志和追踪模块),再通过私有协议发送给LOG Server;A核的非AP(Linux)应用也即第一核第二应用(如Linux App)和内核Kernel将内核日志sys log通过Syslogd模块的rsyslogd函数传递给LOG Server;另外,LOGServer通过访问IPC,获取R核传递的日志信息。最后LOG Server统一将所有的日志文件根据日志头部的类别标识,按照规定的文件夹路径正确地转存至第一预设存储空间eMMC中。
如果需要收集启动阶段Bootloader的日志(第二核启动阶段日志数据),由于一般R核中的启动阶段文件由Bootloader记录在预设第二存储空间Norflash中,可以由R核LOGModule访问Norflash获取,然后和其他R核日志通过核间通信一起传递至A核;A核的第一核启动阶段日志数据则由Bootloader如U-boot直接记录在eMMC中,可以由用户端设置相应的bootloader日志文件路径请求获取。
由于信息安全要求,一些A核的应用功能,如IDS,可能设计为单独将日志加密上传至云端,也即图4所示的AA(IDS)直接可以将车辆日志数据传输给到网关Switch,进而上传给到T-BOX,反馈到云端。如果允许,也可以采用上述方式统一收集,类似于第一核第一应用日志的采集方式,但需要对其进行加密,对数据做加密后上传。
针对整车CAN/LIN节点控制器的日志,通过R核的路由模块Route采集并同步至A核统一管理和上传。通过R核的路由模块Route(第二核的路由模块)收集整车CAN/LIN节点控制器的日志(第三日志数据),传输给到LOG Module,日志驱动模块LOG Driver驱动打包日志报文,通过IPC传递至A核的LOG Server,通过LOG Server按照日志存储路径对其进行存储。
针对整车以太网节点控制器ETH ECU的日志(第四日志数据)由各整车以太网节点控制器自身收集和管理,借助网关Switch透传至T-Box,最终上传云端OEM Cloud,进而传输给到用户端,如电脑、收集等。
需要说明的是,如图4所示,整车以太网节点控制器ETH ECU的数量可以为多个整车CAN/LIN节点控制器ECU的数量可以为多个。上文提及的eMMC和Norflash作为外部存储设备,仅作示例之用,可以是其它的存储介质,如nand flash等;上文提及的“A核”及“R核”仅作为SoC的内核类型说明示例,可以是其它SoC方案的内核类型,比如“M核”等。
基于以上的车辆日志存储方法,下面对车辆日志传输方法进行说明。利用已有的大数据收集的车云通信链路,即OEM云端-TBox-中央网关控制器的两级通信,用户在用户端如电脑、收集等编辑日志收集请求(车辆日志上传请求),该车辆日志上传请求至少应该包括:目标ECU名称(代码,目标控制器标识);日志路径名称(日志存储路径);日志文件的起止时间(日志时间);日志文件大小上限(日志文件大小阈值)。用户端将车辆日志上传请求以文件的形式通过云端下发至T-Box,再由T-Box通过SOME/IP传递给大数据收集应用。大数据收集应用解析日志收集请求,如果识别到目标ECU非中央网关控制器(跨域多核控制器),则将收集请求通过Switch传递至相应ECU;如果识别到目标ECU为自身(跨域多核控制器),则检索eMMC相应路径中的日志文件,根据日志文件的起始时间,筛选时间窗口内的所有日志文件,提取至缓存中组包发送日志数据至T-Box。T-Box收到日志数据后再次按照云端的要求组成日志文件并上传。
上述实施例提供的方法,至少具有以下有益效果:
1、通过由A核主控,R核辅助收集的方式,实现了SoC级别的控制器日志收集和上传的功能。对比传统多个功能域的控制器分别上传日志的设计,极大提升了日志收集和上传的效率,并使得日志文件的格式得到统一,方便后期读取和分析。
2、日志上传功能基于中央网关控制器大数据上传的基础功能模块,大幅降低研发成本和周期,同时也提升了已有软件模块的复用率,充分挖掘了芯片的算力。
3、本发明的A核日志收集方案考虑了基于AA架构的软件和非AA架构的Linux***软件,实际应用时可以根据软件设计方式灵活选择使用,方案实用度高。
4、上传策略中设计了收集日志的时间窗口,有利于用户根据感兴趣的时间点定位需要的日志文件,提高数据相关性和分析问题的效率。
5、上传策略中考虑文件大小上限,有利于限制上传日志文件的数量,防止上传任务的运行周期过长影响控制器的其他应用性能。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
在一实施例中,提供一种车辆日志存储装置,该车辆日志存储装置与上述实施例中车辆日志存储方法一一对应。请参见图5,图5为本发明实施例提供的车辆日志存储装置的一个结构示意图,如图5所示,该车辆日志存储装置500包括日志获取模块501、路径匹配模块502和存储模块503。各功能模块详细说明如下:日志获取模块501,用于获取车辆日志数据,车辆日志数据包括第一核的第一日志数据、第二核的第二日志数据和整车第一节点控制器的第三日志数据中至少之一,第一核和第二核设置于车辆的跨域多核控制器中,车辆日志数据包括类别标识和日志内容;路径匹配模块502,用于根据类别标识匹配得到车辆日志数据的日志存储路径;存储模块503,用于将车辆日志数据基于日志存储路径存储入第一预设存储空间,以供日志需求端对存储的车辆日志数据进行请求。
在一实施例中,若车辆日志数据包括第一核的第一日志数据,日志获取模块包括预设标准日志记录接口、***日志守护进程中至少之一;
第一核第一应用基于预设标准日志记录接口将第一核第一应用日志传输至诊断日志和追踪模块,通过诊断日志和追踪模块将第一核第一应用日志作为第一日志数据发送至第一核日志服务端,以使第一核日志服务端获取第一日志数据;
第一核第二应用将***日志作为第一日志数据通过***日志守护进程发送至第一核日志服务端,以使第一核日志服务端获取第一日志数据;
第一核内核将内核日志作为第一日志数据通过***日志守护进程发送至第一核日志服务端,以使第一核日志服务端获取第一日志数据。
在一实施例中,该装置还包括加密模块,用于在第一核日志服务端获取核的第一日志数据之前,获取第一日志数据的数据来源模块;若数据来源模块为目标来源模块,将第一日志数据进行加密;将加密后的第一日志数据发送至第一核日志服务端。
在一实施例中,若车辆日志数据包括第二核的第二日志数据,日志获取模块还包括第二核的第二日志接口模块;该第二核的第二日志接口模块用于接收第二日志数据,第二日志数据包括上层应用日志数据、基础软件日志数据中至少之一;将第二日志数据发送至日志驱动模块,对第二日志数据进行打包,并通过核间通信将打包后的第二日志数据传输至第一核日志服务端,以使第一核日志服务端获取第二日志数据。
在一实施例中,若车辆日志数据包括第二核的第二日志数据,获取车辆的车辆日志数据,日志获取模块还包括第二核启动阶段日志数据获取模块,用于采集第二核启动阶段日志数据;通过第二核的引导加载程序模块将第二核启动阶段日志数据存储入预设第二存储空间;第二日志接口模块访问预设第二存储空间,以获取第二核启动阶段日志数据,将第二核启动阶段日志数据作为第二日志数据发送至日志驱动模块,对第二日志数据进行打包,并通过核间通信将打包后的第二日志数据传输至第一核日志服务端,以使第一核日志服务端获取第二日志数据。
在本实施例中,通过核间通信将打包后的第二日志数据传输至第一核日志服务端之前,该装置包括以下至少之一:
暂存模块,用于获取第一核的运行状态,若运行状态包括***休眠或唤醒阶段,将第二日志数据存储入第三预设存储空间,监测第一核的运行状态,如果运行状态更新为启动完成,触发将第三预设存储空间存储的第二日志数据基于日志驱动模块通过核间通信传输至第一核日志服务端;
触发模块,用于获取第一核的运行状态,若运行状态为启动完成,触发通过核间通信将打包后的第二日志数据传输至第一核日志服务端。
在一实施例中,若车辆日志数据包括第三日志数据,日志获取模块还包括第三日志数据获取模块,用于通过第二核的路由模块采集整车第一节点控制器的第三日志数据;将第三日志数据通过第二核的第二日志接口模块传输至日志驱动模块,以将第三日志数据进行打包,并通过核间通信将打包后的第三日志数据传输至第一核日志服务端,以使第一核日志服务端获取第三日志数据。
在一实施例中,该装置还包括以下至少之一:
第四日志数据获取模块,用于获取整车第二节点控制器的第四日志数据,将第四日志数据存储入整车第二节点控制器的控制器本地,以供日志需求端对存储的第四日志数据进行请求;
第一核启动阶段日志数据获取模块,用于采集第一核的第一核启动阶段日志数据,将第一核启动阶段日志数据按照预设第一核启动文件路径存储入第一预设存储空间,以供日志需求端对存储的第一核启动阶段日志数据进行请求。
在一实施例中,存储模块包括:格式转换模块,用于对车辆日志数据进行目标格式转换;存储子模块,用于将目标格式转换后的车辆日志数据基于日志存储路径存储入第一预设存储空间。
在本实施例中,该车辆日志存储装置实质上是设置了多个模块用以执行上述任一实施例中的车辆日志存储方法,具体功能和技术效果参照上述实施例即可,此处不再赘述。
在一实施例中,提供一种车辆日志传输装置,该车辆日志传输装置与上述实施例中车辆日志传输方法一一对应。请参见图6,图6为本发明实施例提供的车辆日志传输装置的一个结构示意图,如图6所示,该车辆日志传输装置600包括请求获取模块601、类型匹配模块602、日志筛选模块603和上传模块604。各功能模块详细说明如下:请求获取模块601,用于获取车辆日志上传请求,车辆日志上传请求包括目标控制器标识、日志存储路径、日志时间及日志文件大小阈值;类型匹配模块602,用于根据目标控制器标识匹配得到目标控制器的控制器类型;日志筛选模块603,用于若控制器类型包括跨域多核控制器和整车第一节点控制器中至少之一,根据日志存储路径和日志时间将跨域多核控制器中第一预设存储空间存储的至少部分的车辆日志数据确定为目标日志数据,第一预设存储空间用于存储通过第一核的第一核日志服务端收集的车辆日志数据,第一核设置于跨域多核控制器中;上传模块604,用于基于日志文件大小阈值和目标日志数据生成车辆日志文件,并上传。
在一实施例中,该上传模块还用于,根据目标控制器标识匹配得到目标控制器的控制器类型之后,若控制器类型包括整车第二节点控制器,根据日志时间将整车第二节点控制器的控制器本地存储的至少部分的第四日志数据确定为目标日志数据;基于日志文件大小阈值和目标日志数据生成车辆日志文件,并上传。
在一实施例中,上传模块包括以下至少之一:
第一上传子模块,用于如果目标日志数据的总数据大小小于或等于日志文件大小阈值,基于目标日志数据生成一车辆日志文件;
第二上传子模块,用于如果目标日志数据的总数据大小大于日志文件大小阈值,将目标日志数据拆分为多个目标日志子数据,基于每一目标日志子数据生成一车辆日志文件,目标日志子数据的子数据大小小于或等于日志文件大小阈值。
在本实施例中,该车辆日志传输装置实质上是设置了多个模块用以执行上述任一实施例中的车辆日志传输方法,具体功能和技术效果参照上述实施例即可,此处不再赘述。
在一实施例中,提供一种车辆,该车辆用于执行上述实施例中车辆日志存储方法和车辆日志传输方法。请参见图7,图7为本发明实施例提供的车辆的一个结构示意图,如图7所示,该车辆700包括如图5所示的车辆日志存储装置500,和/或如图6所示的车辆日志传输装置600。
在本实施例中,该车辆实质上是设置了多个模块用以执行上述任一实施例中的方法,具体功能和技术效果参照上述实施例即可,此处不再赘述。
在一个实施例中,提供了一种电子设备,该电子设备可以是服务端,其内部结构图可以如图8所示。该电子设备包括通过***总线连接的处理器、存储器、网络接口和数据库。其中,该电子设备的处理器用于提供计算和控制能力。该电子设备的存储器包括非易失性和/或易失性存储介质、内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该电子设备的网络接口用于与外部的客户端通过网络连接通信。该计算机程序被处理器执行时以实现一种车辆日志存储方法和/或车辆日志传输方法服务端侧的功能或步骤。
在一个实施例中,提供了一种电子设备,该电子设备可以是客户端,其内部结构图可以如图9所示。该电子设备包括通过***总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该电子设备的处理器用于提供计算和控制能力。该电子设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***和计算机程序。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该电子设备的网络接口用于与外部服务器通过网络连接通信。该计算机程序被处理器执行时以实现一种车辆日志存储方法和/或车辆日志传输方法客户端侧的功能或步骤。
在一个实施例中,提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
获取车辆日志数据,车辆日志数据包括第一核的第一日志数据、第二核的第二日志数据和整车第一节点控制器的第三日志数据中至少之一,第一核和第二核设置于车辆的跨域多核控制器中,车辆日志数据包括类别标识和日志内容;
根据类别标识匹配得到车辆日志数据的日志存储路径;
将车辆日志数据基于日志存储路径存储入第一预设存储空间,以供日志需求端对存储的车辆日志数据进行请求。
在另一个实施例中,提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
获取车辆日志上传请求,车辆日志上传请求包括目标控制器标识、日志存储路径、日志时间及日志文件大小阈值;
根据目标控制器标识匹配得到目标控制器的控制器类型;
若控制器类型包括跨域多核控制器和整车第一节点控制器中至少之一,根据日志存储路径和日志时间将跨域多核控制器中第一预设存储空间存储的至少部分的车辆日志数据确定为目标日志数据,第一预设存储空间用于存储通过第一核的第一核日志服务端收集的车辆日志数据,第一核设置于跨域多核控制器中;
基于日志文件大小阈值和目标日志数据生成车辆日志文件,并上传。
此外,电子设备的处理器执行计算机程序时还可以实现上述任一实施例提供的车辆日志存储方法和/或车辆日志传输方法的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取车辆日志数据,车辆日志数据包括第一核的第一日志数据、第二核的第二日志数据和整车第一节点控制器的第三日志数据中至少之一,第一核和第二核设置于车辆的跨域多核控制器中,车辆日志数据包括类别标识和日志内容;
根据类别标识匹配得到车辆日志数据的日志存储路径;
将车辆日志数据基于日志存储路径存储入第一预设存储空间,以供日志需求端对存储的车辆日志数据进行请求。
在另一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取车辆日志上传请求,车辆日志上传请求包括目标控制器标识、日志存储路径、日志时间及日志文件大小阈值;
根据目标控制器标识匹配得到目标控制器的控制器类型;
若控制器类型包括跨域多核控制器和整车第一节点控制器中至少之一,根据日志存储路径和日志时间将跨域多核控制器中第一预设存储空间存储的至少部分的车辆日志数据确定为目标日志数据,第一预设存储空间用于存储通过第一核的第一核日志服务端收集的车辆日志数据,第一核设置于跨域多核控制器中;
基于日志文件大小阈值和目标日志数据生成车辆日志文件,并上传
此外,电子设备的处理器执行计算机程序时还可以实现上述任一实施例提供的车辆日志存储方法和/或车辆日志传输方法的步骤。
需要说明的是,上述关于计算机可读存储介质或电子设备所能实现的功能或步骤,可对应参阅前述方法实施例中,服务端侧以及客户端侧的相关描述,为避免重复,这里不再一一描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储入一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM),以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将上述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所提供的实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (17)
1.一种车辆日志存储方法,其特征在于,所述方法包括:
获取车辆日志数据,所述车辆日志数据包括第一核的第一日志数据、第二核的第二日志数据和整车第一节点控制器的第三日志数据中至少之一,所述第一核和所述第二核设置于车辆的跨域多核控制器中,所述车辆日志数据包括类别标识和日志内容;
根据所述类别标识匹配得到所述车辆日志数据的日志存储路径;
将所述车辆日志数据基于所述日志存储路径存储入第一预设存储空间,以供日志需求端对存储的所述车辆日志数据进行请求。
2.如权利要求1所述的车辆日志存储方法,其特征在于,若所述车辆日志数据包括第一核的第一日志数据,获取车辆的车辆日志数据包括以下至少之一:
第一核第一应用基于预设标准日志记录接口将第一核第一应用日志传输至诊断日志和追踪模块,通过所述诊断日志和追踪模块将所述第一核第一应用日志作为所述第一日志数据发送至第一核日志服务端,以使所述第一核日志服务端获取所述第一日志数据;
第一核第二应用将***日志作为所述第一日志数据通过***日志守护进程发送至第一核日志服务端,以使所述第一核日志服务端获取所述第一日志数据;
第一核内核将内核日志作为所述第一日志数据通过***日志守护进程发送至第一核日志服务端,以使所述第一核日志服务端获取所述第一日志数据。
3.如权利要求2所述的车辆日志存储方法,其特征在于,所述第一核日志服务端获取核的第一日志数据之前,所述方法还包括:
获取所述第一日志数据的数据来源模块;
若所述数据来源模块为目标来源模块,将所述第一日志数据进行加密;
将加密后的第一日志数据发送至第一核日志服务端。
4.如权利要求1所述的车辆日志存储方法,其特征在于,若所述车辆日志数据包括第二核的第二日志数据,获取车辆的车辆日志数据,包括:
第二核的第二日志接口模块接收第二日志数据,所述第二日志数据包括上层应用日志数据、基础软件日志数据中至少之一;
将所述第二日志数据发送至日志驱动模块,对所述第二日志数据进行打包,并通过核间通信将打包后的第二日志数据传输至第一核日志服务端,以使所述第一核日志服务端获取所述第二日志数据。
5.如权利要求1所述的车辆日志存储方法,其特征在于,若所述车辆日志数据包括第二核的第二日志数据,获取车辆的车辆日志数据,包括:
采集所述第二核启动阶段日志数据;
通过所述第二核的引导加载程序模块将所述第二核启动阶段日志数据存储入预设第二存储空间;
第二日志接口模块访问所述预设第二存储空间,以获取所述第二核启动阶段日志数据,将所述第二核启动阶段日志数据作为所述第二日志数据发送至日志驱动模块,对所述第二日志数据进行打包,并通过核间通信将打包后的第二日志数据传输至第一核日志服务端,以使所述第一核日志服务端获取所述第二日志数据。
6.如权利要求4所述的车辆日志存储方法,其特征在于,通过核间通信将打包后的第二日志数据传输至第一核日志服务端之前,所述方法包括以下至少之一:
获取所述第一核的运行状态,若所述运行状态包括***休眠或唤醒阶段,将所述第二日志数据存储入第三预设存储空间,监测所述第一核的运行状态,如果所述运行状态更新为启动完成,触发将所述第三预设存储空间存储的第二日志数据基于所述日志驱动模块通过核间通信传输至第一核日志服务端;
获取所述第一核的运行状态,若所述运行状态为启动完成,触发通过核间通信将打包后的第二日志数据传输至第一核日志服务端。
7.如权利要求1-6任一项所述的车辆日志存储方法,其特征在于,若所述车辆日志数据包括第三日志数据,获取车辆的车辆日志数据,包括:
通过所述第二核的路由模块采集整车第一节点控制器的第三日志数据;
将所述第三日志数据通过第二核的第二日志接口模块传输至日志驱动模块,以将所述第三日志数据进行打包,并通过核间通信将打包后的第三日志数据传输至第一核日志服务端,以使所述第一核日志服务端获取所述第三日志数据。
8.如权利要求1-6任一项所述的车辆日志存储方法,其特征在于,所述方法还包括以下至少之一:
获取整车第二节点控制器的第四日志数据,将所述第四日志数据存储入所述整车第二节点控制器的控制器本地,以供日志需求端对存储的所述第四日志数据进行请求;
采集所述第一核的第一核启动阶段日志数据,将所述第一核启动阶段日志数据按照预设第一核启动文件路径存储入所述第一预设存储空间,以供日志需求端对存储的所述第一核启动阶段日志数据进行请求。
9.如权利要求1-6任一项所述的车辆日志存储方法,其特征在于,将所述车辆日志数据基于所述日志存储路径存储入第一预设存储空间,包括:
对所述车辆日志数据进行目标格式转换;
将目标格式转换后的车辆日志数据基于所述日志存储路径存储入第一预设存储空间。
10.一种车辆日志传输方法,其特征在于,所述方法包括:
获取车辆日志上传请求,所述车辆日志上传请求包括目标控制器标识、日志存储路径、日志时间及日志文件大小阈值;
根据所述目标控制器标识匹配得到目标控制器的控制器类型;
若所述控制器类型包括跨域多核控制器和整车第一节点控制器中至少之一,根据所述日志存储路径和所述日志时间将所述跨域多核控制器中第一预设存储空间存储的至少部分的车辆日志数据确定为目标日志数据,所述第一预设存储空间用于存储通过第一核的第一核日志服务端收集的车辆日志数据,所述第一核设置于所述跨域多核控制器中;
基于所述日志文件大小阈值和所述目标日志数据生成车辆日志文件,并上传。
11.如权利要求10所述的车辆日志传输方法,其特征在于,根据所述目标控制器标识匹配得到目标控制器的控制器类型之后,所述方法还包括:
若所述控制器类型包括整车第二节点控制器,根据所述日志时间将所述整车第二节点控制器的控制器本地存储的至少部分的第四日志数据确定为目标日志数据;
基于所述日志文件大小阈值和所述目标日志数据生成车辆日志文件,并上传。
12.如权利要求10或11任一项所述的车辆日志传输方法,其特征在于,基于所述日志文件大小阈值和所述目标日志数据生成车辆日志文件,包括以下至少之一:
如果所述目标日志数据的总数据大小小于或等于所述日志文件大小阈值,基于所述目标日志数据生成一车辆日志文件;
如果所述目标日志数据的总数据大小大于所述日志文件大小阈值,将所述目标日志数据拆分为多个目标日志子数据,基于每一所述目标日志子数据生成一车辆日志文件,所述目标日志子数据的子数据大小小于或等于所述日志文件大小阈值。
13.一种车辆日志存储装置,其特征在于,所述装置包括:
日志获取模块,用于获取车辆日志数据,所述车辆日志数据包括第一核的第一日志数据、第二核的第二日志数据和整车第一节点控制器的第三日志数据中至少之一,所述第一核和所述第二核设置于车辆的跨域多核控制器中,所述车辆日志数据包括类别标识和日志内容;
路径匹配模块,用于根据所述类别标识匹配得到所述车辆日志数据的日志存储路径;
存储模块,用于将所述车辆日志数据基于所述日志存储路径存储入第一预设存储空间,以供日志需求端对存储的所述车辆日志数据进行请求。
14.一种车辆日志传输装置,其特征在于,所述装置包括:
请求获取模块,用于获取车辆日志上传请求,所述车辆日志上传请求包括目标控制器标识、日志存储路径、日志时间及日志文件大小阈值;
类型匹配模块,用于根据所述目标控制器标识匹配得到目标控制器的控制器类型;
日志筛选模块,用于若所述控制器类型包括跨域多核控制器和整车第一节点控制器中至少之一,根据所述日志存储路径和所述日志时间将所述跨域多核控制器中第一预设存储空间存储的至少部分的车辆日志数据确定为目标日志数据,所述第一预设存储空间用于存储通过第一核的第一核日志服务端收集的车辆日志数据,所述第一核设置于所述跨域多核控制器中;
上传模块,用于基于所述日志文件大小阈值和所述目标日志数据生成车辆日志文件,并上传。
15.一种车辆,其特征在于,所述车辆包括如权利要求13所述的车辆日志存储装置,和/或如权利要求14所述的车辆日志传输装置。
16.一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至12任一项所述的方法。
17.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至12任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311310056.2A CN117389968A (zh) | 2023-10-10 | 2023-10-10 | 车辆日志存储、传输方法、装置、车辆、电子设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311310056.2A CN117389968A (zh) | 2023-10-10 | 2023-10-10 | 车辆日志存储、传输方法、装置、车辆、电子设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117389968A true CN117389968A (zh) | 2024-01-12 |
Family
ID=89471203
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311310056.2A Pending CN117389968A (zh) | 2023-10-10 | 2023-10-10 | 车辆日志存储、传输方法、装置、车辆、电子设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117389968A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113781032A (zh) * | 2021-09-27 | 2021-12-10 | 中国银行股份有限公司 | 日志获取方法及装置 |
CN117687892A (zh) * | 2024-02-04 | 2024-03-12 | 麒麟软件有限公司 | 适用于嵌入式***的综合日志获取方法、装置及存储介质 |
-
2023
- 2023-10-10 CN CN202311310056.2A patent/CN117389968A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113781032A (zh) * | 2021-09-27 | 2021-12-10 | 中国银行股份有限公司 | 日志获取方法及装置 |
CN117687892A (zh) * | 2024-02-04 | 2024-03-12 | 麒麟软件有限公司 | 适用于嵌入式***的综合日志获取方法、装置及存储介质 |
CN117687892B (zh) * | 2024-02-04 | 2024-06-07 | 麒麟软件有限公司 | 适用于嵌入式***的综合日志获取方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7126174B2 (ja) | ブロックチェーンおよびオフチェーン装置の連携のための検証システムおよび方法 | |
CN117389968A (zh) | 车辆日志存储、传输方法、装置、车辆、电子设备及介质 | |
CN108769212B (zh) | 数据同步方法、装置、计算机设备和存储介质 | |
US9305055B2 (en) | Method and apparatus for analysing data packets | |
WO2020125389A1 (zh) | 镜像文件的获取方法、装置、计算机设备和存储介质 | |
JP7279904B2 (ja) | チェーンデータの検証システムおよび方法 | |
CN110543788A (zh) | 数据存储方法、装置、计算机可读存储介质和计算机设备 | |
WO2020151181A1 (zh) | 基于区块链的跨平台数据更新方法、装置和计算机设备 | |
CN111026767B (zh) | 区块链的数据存储方法、装置及硬件设备 | |
CN111694791B (zh) | 一种分布式基础框架中的数据存取方法及装置 | |
WO2015007091A1 (zh) | 一种数据记录生成方法及装置 | |
CN108710643B (zh) | 数据共享方法、装置、计算机设备和存储介质 | |
CN113704790A (zh) | 一种异常日志信息汇总方法及计算机设备 | |
CN111464646A (zh) | 信息处理方法、装置、电子设备和介质 | |
CN106203179B (zh) | 一种对文件的完整性校验***及方法 | |
CN112911005B (zh) | 一种数据同步***、方法及车场数据更新方法 | |
CN112835978A (zh) | 一种数据存储方法、装置及计算机设备 | |
WO2020114310A1 (en) | Method, network node and network for recording and providing data, | |
CN112350875B (zh) | 一种配置数据的集中管理配置方法及装置 | |
CN114157435B (zh) | 一种基于区块链技术的文档处理方法、装置和客户端 | |
CN115473858A (zh) | 数据传输方法和流式数据传输*** | |
CN115221125A (zh) | 文件处理方法、装置、电子设备及可读存储介质 | |
CN112231152A (zh) | 数据同步方法、远程服务器、客户端以及*** | |
CN106878040B (zh) | 一种记录加载方法和装置 | |
CN117896727B (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 |