[0001]
本发明及日志记录的技术领域,特别涉及一种嵌入式设备可变格式日志记录方法。
背景技术:
[0002]
现在的日志记录大致分为三种方法:记录空间不受限变长记录格式;这种方式为程序员开发普遍用,它特点是忠实记录程序员期望的数据或过程,正确地回放事情经过,但是它对记录空间要求很大甚至不受限制;比如串口输出、日志文件;定长记录格式;每条记录数据长度是固定的,整个日志记录也是固定的;比如现在银行卡(公交卡)上的交易日志;记录空间受限的变长记录格式;这种记录方式和第一种一样,能忠实记录过程,但存储空间限制;只能记录有限的日志条数;对问题分析和设备使用有一定的限制。码利奥2代机器需要一种日志记录:记录本机的x509证书更新过程及目前使用的证书;由于证书颁发者、主体都是一个变长数据;并且也不该规定证书更换次数;因此码利奥2代需要记录日志是变长并且记录次数不受限制的,在码利奥2代上,记录空间受限,不能用第一种方式,又不能采用第二种定长循环日志格式。
[0003]
技术术语:tlv:type length value,type为类型,ength为长度,value为值
技术实现要素:
[0004]
针对现有技术中存在的不足之处,本发明的目的是提供一种嵌入式设备可变格式日志记录方法,使用tlv边长格式来实现循环记录,达到记录此时不受限制。为了实现根据本发明的上述目的和其他优点,提供了一种嵌入式设备可变格式日志记录方法,包括以下步骤:
[0005]
s1、设定tlv;
[0006]
s2、将日志标识与结束标识进行首尾连接,形成循环记录;
[0007]
s3、结束标识空间不够时,将首记录空间合并至标识空间;
[0008]
s4、重复步骤s3直到空间足够满足记录新记录空间和结束标识空间。
[0009]
优选的,所述tlv包括至少两个type、length及value,两个所述type 分别为日志标识与结束标识,所述type为特殊值,所述length按照ber-tlv 编码,长度1-4字节,所述value的长度由length指定。
[0010]
优选的,所述记录包括一个日志标识与一个结束标识,所述记录空间包括日志标识空间与结束标识空间。
[0011]
优选的,所述步骤2包括将将一个结束标识连接有首记录,一个结束标识之前连接有尾记录,即为最新记录,且从结束标识开始添加新增日志。
[0012]
本发明与现有技术相比,其有益效果是:通过将记录空间分为日志标识空间与结束标识空间,每一个记录包括一个日志标识和结束标识,在记录时将日志标识与结束标识进行首尾连接,形成循环记录,且结束标识空间不够时,把首记录空间合并到标识空间,如
此类推,直到空间足够满足新记录空间和结束标识空间,由此使得在tlv变化长格式来实现循环记录,达到记录次数不受限制。
具体实施方式
[0013]
下面将对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0014]
一种嵌入式设备可变格式日志记录方法,包括以下步骤:s1、设定tlv;
[0015]
s2、将日志标识与结束标识进行首尾连接,形成循环记录;
[0016]
s3、结束标识空间不够时,将首记录空间合并至标识空间;
[0017]
s4、重复步骤s3直到空间足够满足记录新记录空间和结束标识空间。
[0018]
进一步的,所述tlv包括至少两个type、length及value,两个所述type 分别为日志标识与结束标识,所述type为特殊值,所述length按照ber-tlv 编码,长度1-4字节,所述value的长度由length指定。
[0019]
进一步的,所述记录包括一个日志标识与一个结束标识,所述记录空间包括日志标识空间与结束标识空间。
[0020]
进一步的,所述步骤2包括将将一个结束标识连接有首记录,一个结束标识之前连接有尾记录,即为最新记录,且从结束标识开始添加新增日志。
[0021]
一实施例,通过设置b1为记录标识,b2为结束标识,hex格式,如下:
[0022]
一条有效记录日志:
[0023]
b1 11 313233342c726f6f746b65792c312c4f4b;
[0024]
两条日志:b1 11 313233342c726f6f746b65792c4f4b b1 09 313233344142434445
[0025]
总记录空间是512字节;记录如上面两条日志,实际的记录数据为:
[0026]
b1 11 313233342c726f6f746b65792c312c4f4b b1 09313233344142434445b2 8201de 2020...20。
[0027]
这里说明的设备数量和处理规模是用来简化本发明的说明的,对本发明的应用、修改和变化对本领域的技术人员来说是显而易见的。
[0028]
尽管本发明的实施方案已公开如上,但其并不仅限于说明书和实施方式中所列运用,它完全可以被适用于各种适合本发明的领域,对于熟悉本领域的人员而言,可容易地实现另外的修改,因此在不背离权利要求及等同范围所限定的一般概念下,本发明并不限于特定的细节。