一种无线传感网络的动态日志的收集与处理方法

文档序号:7798248阅读:96来源:国知局
一种无线传感网络的动态日志的收集与处理方法
【专利摘要】本发明公开一种无线传感网络的动态日志的收集与处理方法。在需要进行日志记录的各节点的程序的原始版本源代码层添加日志记录程序段,然后将各节点的添加日志记录程序段之后的源代码编译为对应节点的第一可执行文件,并将上述原始版本源代码编译为对应节点的第二可执行文件;找出各节点的第一可执行文件相对于第二可执行文件新增的可执行代码,并将新增的可执行代码打包成为对应节点的补丁文件;将各补丁文件发送到对应的各节点,并在各节点安装接收到的补丁文件;各节点通过运行安装了补丁文件的程序获得日志,并将各日志存储在对应节点的外部存储器中;各节点将其外部存储器中的日志发送到无线网络的汇聚节点,汇聚节点再将各日志发送至PC端。
【专利说明】一种无线传感网络的动态日志的收集与处理方法
【技术领域】
[0001]本发明属于无线自组织网络与传感器网络领域,涉及一种动态的无线传感网络日志的收集与处理方法。
【背景技术】
[0002]嵌入式系统和无线通信技术上的新进展推动了无线传感器网络(WSN)的快速发展。在无线传感网络应用的过程中常常需要在网络部署以后再向其系统中的适当部位插入或删除一些日志记录指令,以便在系统运行的时候收集并处理这些日志,从而实现对WSN的在线调试。
[0003]目前已经有大量的研究工作致力于WSN的在线调试工作,但是都没有提出完整地解决日志记录问题的系统性方法。此外,现有的方法在应用到实际系统的时候会出现系统资源占用过多,影响应用程序正常运行,以及实施起来比较复杂等问题。

【发明内容】

[0004]本发明的目的在于提供一种新型的一种无线传感网络的动态日志的收集与处理方法。
[0005]为实现上述目的,本发明所采取的技术方案是:本发明无线传感网络的动态日志的收集与处理方法包括以下步骤:
[0006](I)在需要进行日志记录的各节点的程序的原始版本源代码层添加日志记录程序段,然后将各节点的添加日志记录程序段之后的源代码编译为对应节点的第一可执行文件,并且,将需要进行日志记录的各节点的程序的原始版本源代码编译为对应节点的第二可执行文件;
[0007](2)找出所述各节点的第一可执行文件相对于第二可执行文件新增的可执行代码,并将新增的可执行代码打包成为对应节点的补丁文件;
[0008](3)将各补丁文件通过无线网络发送到对应的所述各节点,并在各节点安装接收到的相应的补丁文件;
[0009](4)所述各节点通过运行安装了补丁文件的程序获得日志,并将各条日志存储在对应节点的外部存储器中;
[0010](5)所述各节点通过无线网络将其外部存储器中的日志发送到无线网络的汇聚节
占.[0011]( 6 )无线网络的汇聚节点将各条日志发送至PC端。
[0012]进一步地,本发明在所述步骤(2)中,所述补丁文件包括两部分:其中一部分包括在节点中需要作出修改的可执行代码段的首地址以及所述可执行代码段的内容;另一部分包括位于所述可执行代码段后的需要修改的空白段的首地址以及所述空白段的内容。
[0013]进一步地,本发明在所述步骤(3 )中,所述安装是指修改各节点的所述空白段和修改各节点的所述可执行代码段。[0014]进一步地,本发明所述“修改各节点的所述空白段和可执行代码段”是指:把所述空白段和可执行代码段内的指令中的相对地址转化为绝对地址。
[0015]进一步地,本发明在所述步骤(4)中,所述日志使用长度可变的格式。
[0016]进一步地,本发明在所述步骤(4)中,所述日志中记录有字符串常量的ID而不含有字符串常量,并且所述日志中记录有日志产生时当前保存日志的节点的本地时间。
[0017]进一步地,本发明在所述步骤(5)中,“所述各节点通过无线网络将其外部存储器中的日志发送到网络的汇聚节点”的方法如下:
[0018]所述各节点经由中继节点将其外部存储器中的日志发送到网络的汇聚节点,其中,当在各所述节点和各中继节点作为发送节点发送日志时,在所述日志的数据包中保存第一时间差值,所述第一时间差值为发送中断时间与日志产生时发送节点所在的本地时间的时间差值;当中继节点和汇聚节点作为接收节点接收日志时,用接收中断时间减去日志的数据包中所保存的所述第一时间差值,得到日志产生时接收节点所在的本地时间,并将日志的数据包内的日志产生时间更改为日志产生时接收节点所在的本地时间。
[0019]与现有技术相比,本发明的有益效果是:(1)能够动态地向无线传感网络的节点中插入日志记录指令;(2)所占用的系统资源极少;(3)能够精确地将发生在不同节点上日志的时间换算为统一的时间;(4)不需要重新启动无线传感网络的节点。
【专利附图】

【附图说明】
[0020]图1是本发明动态日志的收集与处理的流程示意图;
[0021]图2是节点中安装补丁文件的示意图;
[0022]图3是多个节点中事件时间计算的示意图。
【具体实施方式】
[0023]以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
[0024]本发明的无线传感网络的动态日志的收集与处理方法主要包括以下步骤(参见图O:
[0025]步骤1:在需要进行日志记录的各节点的程序的原始版本源代码层添加日志记录程序段,然后将各节点的添加日志记录程序段之后的源代码编译为对应节点的第一可执行文件,并且,将需要进行日志记录的各节点的程序的原始版本源代码编译为对应节点的第二可执行文件。
[0026]以下以具体实例进行说明。下述代码是需要进行日志记录的节点的程序的原始版本源代码(仅示出部分),其中,下划线部分是在原始版本源代码层中添加的日志记录程序段(仅示出部分):
[0027]
【权利要求】
1.一种无线传感网络的动态日志的收集与处理方法,其特征是,包括以下步骤: (1)在需要进行日志记录的各节点的程序的原始版本源代码层添加日志记录程序段,然后将各节点的添加日志记录程序段之后的源代码编译为对应节点的第一可执行文件,并且,将需要进行日志记录的各节点的程序的原始版本源代码编译为对应节点的第二可执行文件; (2)找出所述各节点的第一可执行文件相对于第二可执行文件新增的可执行代码,并将新增的可执行代码打包成为对应节点的补丁文件; (3)将各补丁文件通过无线网络发送到对应的所述各节点,并在各节点安装接收到的相应的补丁文件; (4)所述各节点通过运行安装了补丁文件的程序获得日志,并将各条日志存储在对应节点的外部存储器中; (5)所述各节点通过无线网络将其外部存储器中的日志发送到无线网络的汇聚节点; (6)无线网络的汇聚节点将各条日志发送至PC端。
2.根据权利要求1所述的无线传感网络的动态日志的收集与处理方法,其特征是:在所述步骤(2)中,所述补丁文件包括两部分:其中一部分包括在节点中需要作出修改的可执行代码段的首地址以及所述可执行代码段的内容;另一部分包括位于所述可执行代码段后的需要修改的空白段的首地址以及所述空白段的内容。
3.根据权利要求2所述的无线传感网络的动态日志的收集与处理方法,其特征是:在所述步骤(3)中,所述安装是指修改各节点的所述空白段和修改各节点的所述可执行代码段。
4.根据权利要求3所述的一种无线传感网络的动态日志的收集与处理方法,其特征是,所述“修改各节点的所述空白段和可执行代码段”是指:把所述空白段和可执行代码段内的指令中的相对地址转化为绝对地址。
5.根据权利要求1所述的一种无线传感网络的动态日志的收集与处理方法,其特征是:在所述步骤(4)中,所述日志使用长度可变的格式。
6.根据权利要求1或5所述的一种无线传感网络的动态日志的收集与处理方法,其特征是:在所述步骤(4)中,所述日志中记录有字符串常量的ID而不含有字符串常量,并且所述日志中记录有日志产生时当前保存日志的节点的本地时间。
7.根据权利要求1所述的一种无线传感网络的动态日志的收集与处理方法,其特征是,在所述步骤(5)中,“所述各节点通过无线网络将其外部存储器中的日志发送到网络的汇聚节点”的方法如下: 所述各节点经由中继节点将其外部存储器中的日志发送到网络的汇聚节点,其中,当在各所述节点和各中继节点作为发送节点发送日志时,在所述日志的数据包中保存第一时间差值,所述第一时间差值为发送中断时间与日志产生时发送节点所在的本地时间的时间差值;当中继节点和汇聚节点作为接收节点接收日志时,用接收中断时间减去日志的数据包中所保存的所述第一时间差值,得到日志产生时接收节点所在的本地时间,并将日志的数据包内的日志产生时间更改为日志产生时接收节点所在的本地时间。
【文档编号】H04W84/18GK103888966SQ201410079067
【公开日】2014年6月25日 申请日期:2014年3月5日 优先权日:2014年3月5日
【发明者】陈纯, 董玮, 卜佳俊, 刘 文, 赵志为 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1