嵌入式日志管理系统和方法与流程

文档序号:12595872阅读:305来源:国知局
嵌入式日志管理系统和方法与流程
本发明涉及日志管理
技术领域
,尤其是涉及嵌入式日志管理系统和方法。
背景技术
:现有的嵌入式日志管理系统可以将日志信息实时显示在GUI(GraphicalUserInterface,图形用户界面)上,能提供一定的提示作用,但是如果不查看GUI,用户就不能得知设备有严重的告警事件发生,并没有充分利用嵌入式系统的本身的存在的器件产生提示,比如如何使用告警灯、蜂鸣器等声、光、电设备产生提示,以及如何使日志管理系统与嵌入式的声、光、电设备进行关联。技术实现要素:有鉴于此,本发明的目的在于提供嵌入式日志管理系统和方法,可以联动嵌入式系统中的告警器件,通过产生声、光、电等物理提示来进行告警,从而提醒嵌入式系统用户。第一方面,本发明实施例提供了嵌入式日志管理系统,包括日志信息编码模块、日志信息表生成模块、告警器件注册模块、联动告警模块;所述日志信息编码模块,用于对日志信息进行编码,得到多个日志信息码;所述日志信息表生成模块,用于根据多个所述日志信息码和多个联动告警器件链表生成日志信息表,其中,所述联动告警器件链表包括与所述日志信息码对应的告警器件;所述告警器件注册模块,用于根据所述日志信息表将所述告警器件注册到对应的所述日志信息码上;所述联动告警模块,用于根据所述日志信息码遍历所述日志信息表,得到所述日志信息码对应的所述联动告警器件链表,并根据所述日志信息码的状态信息对所述告警器件进行配置和操作,以使所述告警器件产生告警提示。结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,所述日志信息表生成模块还用于根据所述日志信息码对应的日志级别选择所述联动告警器件链表。结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,还包括日志信息存储模块,用于采用链表的方式保存所述日志信息,并通过第一文件和第二文件记录所述日志信息。结合第一方面的第二种可能的实施方式,本发明实施例提供了第一方面的第三种可能的实施方式,其中,所述日志信息存储模块包括记录模块、判断模块和生成模块;所述记录模块,用于将所述日志信息记录到所述第一文件中;所述判断模块,用于判断所述第一文件是否记录满;所述生成模块,用于在所述第一文件记录满的情况下,生成所述第二文件。结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,还包括日志信息发送模块,用于将所述日志信息发送到终端,以使用户根据所述终端的图形用户界面GUI查看所述日志信息。第二方面,本发明实施例还提供嵌入式日志管理方法,所述方法包括:对日志信息进行编码,得到多个日志信息码;根据多个所述日志信息码和多个联动告警器件链表生成日志信息表,其中,所述联动告警器件链表包括与所述日志信息码对应的所述告警器件;根据所述日志信息表将所述告警器件注册到对应的所述日志信息码上;根据所述日志信息码遍历所述日志信息表,得到所述日志信息码对应的所述联动告警器件链表,并根据所述日志信息码的状态信息对所述告警器件进行配置和操作,以使所述告警器件产生告警提示。结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,所述方法还包括:根据所述日志信息码对应的日志级别选择所述联动告警器件链表。结合第二方面,本发明实施例提供了第二方面的第二种可能的实施方式,其中,所述方法还包括:采用链表的方式保存所述日志信息,并通过第一文件和第二文件记录所述日志信息。结合第二方面的第二种可能的实施方式,本发明实施例提供了第二方面的第三种可能的实施方式,其中,所述方法还包括:将所述日志信息记录到所述第一文件中;判断所述第一文件是否记录满;如果所述第一文件记录满,则生成所述第二文件。结合第二方面,本发明实施例提供了第二方面的第四种可能的实施方式,其中,所述方法还包括:将所述日志信息发送到终端,以使用户根据所述终端的图形用户界面GUI查看所述日志信息。本发明提供了嵌入式日志管理系统和方法,包括日志信息编码模块、日志信息表生成模块、告警器件注册模块和联动告警模块;日志信息编码模块用于对日志信息进行编码,得到多个日志信息码;日志信息表生成模块用于根据多个日志信息码和多个联动告警器件链表生成日志信息表;告警器件注册模块用于根据日志信息表将告警器件注册到对应的日志信息码上;联动告警模块用于根据日志信息码遍历日志信息表,得到日志信息码对应的联动告警器件链表,并根据日志信息码的状态信息对告警器件进行配置和操作,以使告警器件产生告警提示,从而可以联动嵌入式系统中的告警器件,通过产生物理提示来进行告警,从而提醒嵌入式系统用户。本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。附图说明为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例一提供的一种嵌入式日志管理系统的结构示意图;图2为本发明实施例一提供的另一嵌入式志管理系统的结构示意图;图3为本发明实施例一提供的嵌入式日志信息码的组成示意图;图4为本发明实施例一提供的联动告警器件链表的示意图;图5为本发明实施例二提供的嵌入式日志管理系统的日志信息记录方法示意图;图6为本发明实施例二提供的嵌入式日志管理方法流程图;图7为本发明实施例二提供的嵌入式日志管理系统的日志信息处理流程图。图标:10-日志信息编码模块;20-日志信息表生成模块;30-告警器件注册模块;40-联动告警模块;50-日志信息发送模块;60-日志信息存储模块;70-日志信息接收模块;11-最高位MSB;12-模块ID;13-模块内部日志信息ID。具体实施方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。目前,现有的嵌入式日志管理系统可以将日志信息实时显示在GUI上,能提供一定的提示作用,但是如果不查看GUI,用户就不能得知设备有严重的告警事件发生,并没有充分利用嵌入式系统本身存在的器件产生提示,比如如何使用告警灯、蜂鸣器等声、光、电设备产生提示,以及如何使日志管理系统与嵌入式的声、光、电设备进行关联,基于此,本发明实施例提供的嵌入式日志管理系统和方法,可以联动嵌入式系统中的告警器件,通过产生声、光、电等物理提示来进行告警,从而提示嵌入式系统用户。嵌入式系统是由若干个功能模块组成的,每个功能模块内部都有其独特告警即日志信息,本发明实施例提出使用一种日志信息码来将繁杂的系统日志信息进行归类整理,然后根据日志信息码来组织日志信息表,而日志信息表中定义了哪些日志信息需要关联到嵌入式系统的器件,从而在产生相应日志信息时,日志管理系统可以联动嵌入式系统中的器件,产生声,光,电提示,真正做到提示嵌入式系统使用者,如果嵌入式系统有异常,则给用户提示,如果消除此条异常日志,则恢复系统的正常工作。为便于对本实施例进行理解,首先对本发明实施例所公开的嵌入式日志管理系统进行详细介绍。实施例一:图1为本发明实施例一提供的嵌入式日志管理系统的结构示意图。参照图1,嵌入式日志管理系统包括日志信息编码模块10、日志信息表生成模块20、告警器件注册模块30和联动告警模块40;日志信息编码模块10,用于对日志信息进行编码,得到多个日志信息码;这里,日志信息码有两个作用,一个可以告知开发者具体日志位置,另一个可以告知使用者合理的日志显示,如图3所示,日志信息码由32比特无符号数组成,包括以下部分:首先,最高位MSB(MostSignificantBit,最高有效位)11表示日志信息的状态,1表示产生异常,0表示异常恢复,这样,当日志管理系统收到日志信息码后,通过MSB就可判断这条信息是产生异常信息,还是异常信息已经恢复。其次,模块ID12占15个比特,对于嵌入式系统中的每一个模块,可以为其分配一个数值,这个数值具有唯一性,这样,日志管理系统收到一个日志信息码后,就可以从它的模块ID域值中确定此日志信息码出自哪个模块,这里,由于采用了15比特来表示模块ID,所以本日志管理系统最多支持32768个模块,显然对于一般的嵌入式系统来说已经足够使用,为了避免模块ID冲突,需要对模块ID进行统一的编码。最后,模块内部日志信息ID13占16个比特,即表示一个模块中的具体日志信息,所以一个模块内部最多可以表示65536个日志信息,可以满足模块的日志信息需求。日志信息表生成模块20,用于根据多个日志信息码和多个联动告警器件链表生成日志信息表,其中,联动告警器件链表包括与日志信息码对应的告警器件;需要说明的是,日志信息表包含如下内容:日志信息码,日志级别,日志内容,联动器件链表和联动器件数量,具体可参照表1,0x00108721、0x00121476、0x00A03D32…0x00217633、0x00217633分别表示日志信息码,0x81009214、0x81009354、NULL…0x81009832、NULL分别表示联动告警器件链表,其中,NULL表示该日志信息码没有联动告警器件。当日志管理系统收到日志信息码后,通过查找日志信息表得到与此日志信息码对应的日志内容和日志级别,将此日志内容和日志级别写入到日志文件,或者发送给GUI;根据日志级别,日志管理系统可以联动联动告警器件链表上的告警器件,包括LED、蜂鸣器、显示彩条等,产生声、光、电告警,通知用户有异常发生。表1日志信息码日志级别日志内容联动告警器件链表联动告警器件数量0x00108721严重“视频输入未识别”0x8100921430x00121476一般“无人接听”0x8100935410x00A03D32提示“时间同步异常”NULL0...............0x00217633致命“xx器件故障”0x8100983250x00217633一般“呼叫失败”NULL0告警器件注册模块30,用于根据日志信息表将告警器件注册到对应的日志信息码上;具体地,在日志管理系统的日志信息表格中留有联动告警器件链表这一项,在初始化时将告警器件注册到对应的日志信息码上,这样日志管理系统在收到日志信息码后会遍历日志信息表,找到此日志信息码下挂的联动告警器件链表。联动告警模块40,用于根据日志信息码遍历日志信息表,得到日志信息码对应的联动告警器件链表,并根据日志信息码的状态信息对告警器件进行配置和操作,以使告警器件产生告警提示。具体地,根据日志信息码最高位的状态,即异常和异常恢复这两个状态,对链表上的告警器件进行配置和操作,当为异常状态时,则打开告警器件,从而产生物理提示,达到提醒使用者的目的;当为异常恢复状态时,则关闭告警器件。根据本发明的示例性实施例,日志信息表生成模块20还用于根据日志信息码对应的日志级别选择联动告警器件链表。这里,用户可以根据日志级别选择日志信息码关联的告警器件的个数和类别,以及是否将告警器件注册到指定的日志信息码上。例如,如图4所示,“视频输入未识别”比较严重,所以挂了三个器件,包括LED、蜂鸣器和显示彩条等,“无人接听”级别一般,所以挂了一个器件,而“呼叫失败”是提示级别的,就没有挂器件,只是在日志中记录了一条信息。根据本发明的示例性实施例,还包括日志信息存储模块60,用于采用链表的方式保存日志信息,并通过第一文件和第二文件记录日志信息。具体地,如图2所示,日志管理系统还包括日志信息存储模块60、日志信息发送模块50和日志信息接收模块70,其中,日志信息接收模块70用于接收嵌入式系统的应用程序发送的日志信息。根据本发明的示例性实施例,日志信息存储模块60包括记录模块、判断模块和生成模块;记录模块(未示出),用于将日志信息记录到第一文件中;判断模块(未示出),用于判断第一文件是否记录满;生成模块(未示出),用于在第一文件记录满的情况下,生成第二文件。具体地,在没有数据库的条件下,采用两个文件的方式记录日志,方便记录保存日志。当第一主文件(第一文件)记录满后(比如记录满100条),将该第一主文件改为备份文件(第二文件)的名字(比如log.txt.bak),然后创建第二主文件,继续记录日志,而不进行任何的删除操作,而当该第二主文件又记录满后,就用第二主文件替换备份文件,然后再创建第三主文件,如此反复。在系统重启的时候,先去读取主文件,将日志一条条导入到系统,之后,查看是否有备份文件存在,如果备份文件存在,则根据最大条目与已导入系统日志条目数的差值,读取备份文件中的一定数量的日志。根据本发明的示例性实施例,还包括日志信息发送模块50,用于将日志信息发送到终端,以使用户根据终端的图形用户界面GUI查看日志信息。实施例二:图6为本发明实施例二提供的嵌入式日志管理方法流程图。参照图6,嵌入式日志管理方法包括:步骤S101,对日志信息进行编码,得到多个日志信息码;步骤S102,根据多个日志信息码和多个联动告警器件链表生成日志信息表,其中,联动告警器件链表包括与日志信息码对应的告警器件;步骤S103,根据日志信息表将告警器件注册到对应的日志信息码上;步骤S104,根据日志信息码遍历日志信息表,得到日志信息码对应的联动告警器件链表,并根据日志信息码的状态信息对告警器件进行配置和操作,以使告警器件产生告警提示。根据本发明的示例性实施例,所述方法还包括:根据日志信息码对应的日志级别选择联动告警器件链表。根据本发明的示例性实施例,所述方法还包括:采用链表的方式保存日志信息,并通过第一文件和第二文件记录日志信息。根据本发明的示例性实施例,所述方法还包括:将日志信息记录到第一文件中;判断第一文件是否记录满;如果第一文件记录满,则生成第二文件。具体地,如图5所示,在没有数据库的条件下,采用两个文件的方式记录日志,方便记录保存日志。当第一主文件(第一文件)记录满后(比如记录满100条),将该第一主文件改为备份文件(第二文件)的名字(比如log.txt.bak),然后创建第二主文件,继续记录日志,而不进行任何的删除操作,而当该第二主文件又记录满后,就用第二主文件替换备份文件,然后再创建第三主文件,如此反复。在系统重启的时候,先去读取主文件,将日志一条条导入到系统,之后,查看是否有备份文件存在,如果备份文件存在,则根据最大条目与已导入系统日志条目数的差值,读取备份文件中的一定数量的日志。根据本发明的示例性实施例,所述方法还包括:将日志信息发送到终端,以使用户根据终端的图形用户界面GUI查看日志信息。如图7所示,当日志管理系统接收到嵌入式系统的应用程序发送的日志信息时,进行以下处理:首先初始化日志信息表(线程锁,联动告警器件链表初始化),并对接收到的日志信息队列初始化,从日志信息队列中取一条日志信息进行分析,判断该日志信息是否合法,是否在日志信息表中已声明,如果合法且已声明,则根据日志信息表中的日志内容记录该日志信息;如果不合法或未声明,则不作处理,重新从日志信息队列中取一条日志信息进行分析,当记录上述日志信息后,判断主文件是否写满,如果已写满,则产生另一主文件,将上述主文件作为备份文件;如果未写满,则判断该日志信息是否下挂告警器件,如果下挂告警器件,则联动告警器件产生物理提示,该日志信息处理完毕,重新从日志信息队列中取一条日志信息进行分析;如果没有下挂告警器件,则不进行物理提示。本发明实施例提供的嵌入式日志管理方法,与上述实施例提供的嵌入式日志管理系统具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。本发明提供了嵌入式日志管理系统和方法,包括日志信息编码模块、日志信息表生成模块、告警器件注册模块和联动告警模块;日志信息编码模块用于对日志信息进行编码,得到多个日志信息码;日志信息表生成模块用于根据多个日志信息码和多个联动告警器件链表生成日志信息表;告警器件注册模块用于根据日志信息表将告警器件注册到对应的日志信息码上;联动告警模块用于根据日志信息码遍历日志信息表,得到日志信息码对应的联动告警器件链表,并根据日志信息码的状态信息对告警器件进行配置和操作,以使告警器件产生告警提示,从而可以联动嵌入式系统中的告警器件,通过产生物理提示来进行告警,从而提醒嵌入式系统用户。本发明实施例所提供的嵌入式日志管理系统和方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本
技术领域
的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1