一种记录bug的方法及系统的制作方法

文档序号:9910920阅读:552来源:国知局
一种记录bug的方法及系统的制作方法
【技术领域】
[0001]本发明涉及操作系统运维技术领域,特别是涉及一种记录BUG的方法及系统。
【背景技术】
[0002]Linux操作系统作为服务器的主流系统,正在被越来越多的应用到各行各业中。任何操作系统都存在BUG,Linux操作系统也不例外,一旦Linux操作系统的内核出现BUG,几乎所有输入设备(例如键盘、鼠标等)都将失灵,而内核打印的堆栈错误信息将覆盖服务器的整个屏幕,甚至一个屏幕都打印不完,此时屏幕上只会显示错误信息的最后一部分,请参照图1所示,图1为本发明提供的一种操作系统内核出现BUG时,服务器上屏幕的截图示意图。由于运维人员一时间也无法定位查找出问题,现有技术中为了查找出问题,常用的方法一种是用户用手机或者相机将屏幕上的错误信息拍下来进行分析,但只能拍一张堆栈错误信息,记录不全面;另一种方法是将服务器重启后从错误日志中查找错误信息,但此时错误日志中记录的错误信息有可能记录不全。
[0003]因此,如何提供一种能够全面记录BUG的方法及系统是本领域技术人员目前需要解决的问题。

【发明内容】

[0004]本发明的目的是提供一种记录BUG的方法,实现了采用二维码的方式将错误信息完整的记录下来,用户可用二维码扫描工具扫描屏幕上的二维码,进行相应的逆操作便可得到全面、完整的原始BUG的错误信息,以便后续的分析,为能够准确的定位系统出现BUG的原因提供了良好的基础;本发明的另一目的是提供一种记录BUG的系统。
[0005]为解决上述技术问题,本发明提供了一种记录BUG的方法,包括:
[0006]获取错误信息;
[0007]当所述错误信息的字符数不大于二维码处理的字符数阈值时,将所述错误信息转化为二进制数据;
[0008]对所述二进制数据进行二维码转换处理,得到二维码并进行显示;
[0009]当要获取所述错误信息时,通过二维码扫描工具对所述二维码进行扫描,进行相应的逆操作,得到所述错误信息。
[0010]优选地,当所述错误信息的字符数大于二维码处理的字符数阈值时,该方法还包括:
[0011]将所述错误信息中的16进制字符串转化为16进制整形数据;
[0012]将所述错误信息中的无格式的数据转化为格式化数据,并对所述格式化数据进行压缩,得到格式化压缩数据;
[0013]将所述16进制整形数据和所述格式化压缩数据转化为所述二进制数据。
[0014]优选地,所述对所述二进制数据进行二维码转换处理,得到二维码并进行显示的过程具体为:
[0015]对所述二进制数据进行二维码转换处理,得到二维码;
[0016]将所述二维码的尺寸调整为用于显示的服务器的屏幕的尺寸;
[0017]依次读取所述二维码中的像素点,并依据所述像素点的灰度值将所述像素点转换为相应的能够显示的ASCII码并进行显示。
[0018]为解决上述技术问题,本发明还提供了一种记录BUG的系统,包括:
[0019]BUG收集器,用于获取错误信息;当所述错误信息的字符数不大于二维码处理的字符数阈值时,将所述错误信息转化为二进制数据;
[0020]二维码生成器,用于对所述二进制数据进行二维码转换处理,得到二维码;
[0021]显示装置,用于对所述二维码进行显示;
[0022]二维码扫描工具,用于当要获取所述错误信息时,通过二维码扫描工具对所述二维码进行扫描,进行相应的逆操作,得到所述错误信息。
[0023]优选地,当所述错误信息的字符数大于二维码处理的字符数阈值时,BUG收集器还用于将所述错误信息中的16进制字符串转化为16进制整形数据;将所述错误信息中的无格式的数据转化为格式化数据,并对所述格式化数据进行压缩,得到格式化压缩数据;将所述16进制整形数据和所述格式化压缩数据转化为所述二进制数据。
[0024]优选地,所述二维码生成器具体包括:
[0025]转换单元,用于对所述二进制数据进行二维码转换处理,得到二维码;
[0026]调整单元,用于将所述二维码的尺寸调整为用于显示的服务器的屏幕的尺寸;
[0027]ASCII码转化单元,用于依次读取所述二维码中的像素点,并依据所述像素点的灰度值将所述像素点转换为相应的能够显示的ASCII码。
[0028]本发明提供了一种记录BUG的方法及系统,该方法包括获取错误信息;当错误信息的字符数不大于二维码处理的字符数阈值时,将错误信息转化为二进制数据;对二进制数据进行二维码转换处理,得到二维码并进行显示;当要获取错误信息时,通过二维码扫描工具对二维码进行扫描,进行相应的逆操作,得到错误信息。本发明实现了采用二维码的方式将错误信息完整的记录下来,用户可用二维码扫描工具扫描屏幕上的二维码,进行相应的逆操作便可得到全面、完整的原始BUG的错误信息,以便后续的分析,为能够准确的定位系统出现BUG的原因提供了良好的基础。
【附图说明】
[0029]为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0030]图1为本发明提供的一种操作系统内核出现BUG时,服务器上屏幕的截图示意图;[0031 ]图2为本发明提供的一种的记录BUG的方法的过程的流程图;
[0032]图3为本发明提供的一种通过ASCII码模拟二维码的示意图;
[0033]图4为本发明提供的一种记录BUG的系统的结构示意图。
【具体实施方式】
[0034]本发明的核心是提供一种记录BUG的方法,实现了采用二维码的方式将错误信息完整的记录下来,用户可用二维码扫描工具扫描屏幕上的二维码,进行相应的逆操作便可得到全面、完整的原始BUG的错误信息,以便后续的分析,为能够准确的定位系统出现BUG的原因提供了良好的基础;本发明的另一核心是提供一种记录BUG的系统。
[0035]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0036]请参照图2,图2为本发明提供的一种的记录BUG的方法的过程的流程图,该方法包括:
[0037]步骤SlOl:获取错误信息;
[0038]步骤S102:当错误信息的字符数不大于二维码处理的字符数阈值时,将错误信息转化为二进制数据;
[0039]作为优选地,当错误信息的字符数大于二维码处理的字符数阈值时,该方法还包括:
[0040]将错误信息中的16进制字符串转化为16进制整形数据;
[0041]将错误信息中的无格式的数据转化为格式化数据,并对格式化数据进行压缩,得到格式化压缩数据;
[0042]将16进制整形数据和格式化压缩数据转化为二进制数据。
[0043]可以理解的是,可以将错误信息分为无格式的数据和16进制字符串两大类,对于这两大类分别进行压缩处理。
[0044]为方便理解,下面对将错误信息中的无格式的数据转化为格式化数据进行举例介绍:
[0045]打印寄存器信息:
[0046]RAX:0000000000000015 RBX:ffffffffffffffaO RCX:0000000000000000
[0047]RDX:0000000000000000 RS1:0000000000000046 RD1:0000000000000246
[0048]转化为格式化数据:
[0049]{RAX:整形数据,RBX:整形数据,RCX:整形数据,RDX:整形数据,RS1:整形数据,RD1:整形数据}。
[0050]打印跟踪信息:
[0051]Call Trace:
[0052][<ffffffff8150cfc8>]?panic+0xa7/0xl6f
[0053][<ffffffff815111f4>]?oops_end+0xe4/0xl00
[0054][<ffffffff81046bfb>]?no_context+0xfb/0x260
[0055]转化为格式化数据:
[0056]Typel:[<X>]?Y+Z 【定义一种格式化类型数据】
[0057]则格式化后的数据为:
[0058]Call Trace:
[0059]Typel(ffffffff8150cfc8,panic,0xa7/0xl6f)
[0060]Typel(ffffffff815111f4,oops_end,0xe4/0xl00)
[0061 ] Typel(ffffffff81046bfb,no_context,0xfb/0x260)。
[0062]当然,上述只是从将错误信息中的无格式的数据转化为格式化数据时,多种情况中选取的两种,还有其它很多种情况本发明在此不再一一列举,能实现本发明目的即可。
[0063]步骤S103:对二进制数据进行二维码转换处理,得到二
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1