• 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
    • / 18
    • 下载费用:30 金币  

    重庆时时彩独胆看号: 记录日志的方法和装置.pdf

    关 键 词:
    记录 日志 方法 装置
      专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    摘要
    申请专利号:

    CN201610864670.7

    申请日:

    2016.09.29

    公开号:

    CN106484615A

    公开日:

    2017.03.08

    当前法律状态:

    实审

    有效性:

    审中

    法律详情: 实质审查的生效IPC(主分类):G06F 11/36申请日:20160929|||公开
    IPC分类号: G06F11/36 主分类号: G06F11/36
    申请人: 青岛海信移动通信技术股份有限公司
    发明人: 孙哲
    地址: 266071 山东省青岛市市南区江西路11号
    优先权:
    专利代理机构: 北京三高永信知识产权代理有限责任公司 11138 代理人: 江崇玉
    PDF完整版下载: PDF下载
    法律状态
    申请(专利)号:

    CN201610864670.7

    授权公告号:

    |||

    法律状态公告日:

    2017.04.05|||2017.03.08

    法律状态类型:

    实质审查的生效|||公开

    摘要

    本发明公开了一种记录日志的方法和装置,属于计算机技术领域。所述方法包括:kernel层记录待记录的kernel日志,向应用层发送预设类型事件,所述预设类型事件至少携带所述kernel日志的日志标识,所述kernel层和所述应用层位于同一个终端中;所述应用层接收所述kernel层发送的所述预设类型事件,获取应用的时钟的当前时间作为所述kernel日志的记录时间;所述应用层存储所述日志标识和所述记录时间的对应关系。所述装置包括kernel日志记录??楹陀τ萌罩炯锹寄??。由于应用日志和kernel日志都采用应用层的时钟的计时方式,计时方式统一,从而准确确定kernel日志和应用日志的时序问题,从而降低了调试难度,提高了调试效率。

    权利要求书

    1.一种记录日志的方法,其特征在于,所述方法包括:
    核心kernel层记录待记录的kernel日志,向应用层发送预设类型事件,所述预设类型
    事件至少携带所述kernel日志的日志标识,所述kernel层和所述应用层位于同一个终端
    中;
    所述应用层接收所述kernel层发送的所述预设类型事件,获取所述应用层的时钟的当
    前时间作为所述kernel日志的记录时间;
    所述应用层存储所述日志标识和所述记录时间的对应关系。
    2.根据权利要求1所述的方法,其特征在于,所述预设类型事件还携带所述kernel日志
    的日志内容;
    所述应用层存储所述日志标识和所述记录时间的对应关系,包括:
    所述应用层存储所述日志标识、所述日志内容和所述记录时间的对应关系。
    3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
    所述应用层接收所述终端中的测试程序发送的第一读取请求,所述第一读取请求携带
    所述kernel日志的日志标识,根据所述日志标识,从日志标识、日志内容和记录时间的对应
    关系中获取所述kernel日志的日志内容和记录时间,向所述测试程序发送所述日志内容和
    所述记录时间。
    4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
    所述kernel层接收所述终端中的测试程序发送的第二读取请求,向所述应用层转发所
    述第二读取请求,所述第二读取请求携带所述kernel日志的日志标识;
    所述应用层接收所述kernel层转发的所述第二读取请求,根据所述日志标识,从日志
    标识和记录时间的对应关系中获取所述kernel日志的记录时间,向所述kernel层发送所述
    记录时间;
    所述kernel层接收所述应用层发送的所述记录时间,获取所述kernel日志的日志内
    容,向所述测试程序发送所述日志内容和所述记录时间。
    5.根据权利要求1所述的方法,其特征在于,所述预设类型事件还携带事件标识;
    所述应用层获取应用层的时钟的当前时间作为所述kernel日志的记录时间之前,还包
    括:
    所述应用层确定所述事件标识是否为记录日志的事件标识;
    如果所述事件标识为记录日志的事件标识,则执行所述应用层获取应用层的时钟的当
    前时间作为所述kernel日志的记录时间的步骤。
    6.根据权利要求1所述的方法,其特征在于,所述应用层接收所述kernel层发送的所述
    预设类型事件,包括:
    所述应用层启动监听服务,通过所述监听服务接收所述kernel层发送的所述预设类型
    事件。
    7.一种记录日志的装置,其特征在于,所述装置包括:核心kernel日志记录??楹陀τ?br />日志记录???;
    所述kernel日志记录???,用于记录待记录的kernel日志,向应用日志记录??榉⑺?br />预设类型事件,所述预设类型事件至少携带所述kernel日志的日志标识;
    所述应用日志记录???,用于接收所述kernel日志记录??榉⑺偷乃鲈ど枥嘈褪?br />件,获取应用层的时钟的当前时间作为所述kernel日志的记录时间,所述应用日志记录模
    块位于所述应用层;
    所述应用日志记录???,还用于存储所述日志标识和所述记录时间的对应关系。
    8.根据权利要求7所述的装置,其特征在于,所述预设类型事件还携带所述kernel日志
    的日志内容;
    所述应用日志记录???,还用于存储所述日志标识、所述日志内容和所述记录时间的
    对应关系。
    9.根据权利要求8所述的装置,其特征在于,
    所述应用日志记录???,还用于接收测试程序发送的第一读取请求,所述第一读取请
    求携带所述kernel日志的日志标识,根据所述日志标识,从日志标识、日志内容和记录时间
    的对应关系中获取所述kernel日志的日志内容和记录时间,向所述测试程序发送所述日志
    内容和所述记录时间。
    10.根据权利要求7所述的装置,其特征在于,
    所述kernel日志记录???,还用于接收所述测试程序发送的第二读取请求,向所述应
    用日志记录??樽⑺龅诙寥∏肭?,所述第二读取请求携带所述kernel日志的日志标
    识;
    所述应用日志记录???,还用于接收所述kernel日志记录??樽⒌乃龅诙寥∏?br />求,根据所述日志标识,从日志标识和记录时间的对应关系中获取所述kernel日志的记录
    时间,向所述kernel日志记录??榉⑺退黾锹际奔?;
    所述kernel日志记录???,还用于接收所述应用日志记录??榉⑺偷乃黾锹际奔?,
    获取所述kernel日志的日志内容,向所述测试程序发送所述日志内容和所述记录时间。
    11.根据权利要求7所述的装置,其特征在于,所述预设类型事件还携带事件标识;
    所述应用日志记录???,还用于确定所述事件标识是否为记录日志的事件标识;
    如果所述事件标识为记录日志的事件标识,则所述应用日志记录??橛糜诨袢∮τ貌?br />的时钟的当前时间作为所述kernel日志的记录时间。
    12.根据权利要求7所述的装置,其特征在于,
    所述应用日志记录???,还用于启动监听服务,通过所述监听服务接收所述kernel日
    志记录??榉⑺偷乃鲈ど枥嘈褪录?。

    说明书

    记录日志的方法和装置

    技术领域

    本发明涉及计算机技术领域,特别涉及一种记录日志的方法和装置。

    背景技术

    在Android(安卓)系统的终端中,终端开发自由度高,方式灵活多变;且在开发之
    后需要对终端进行调试;在调试终端时需要先得到终端在使用过程中记录的日志,对日志
    进行分析,以得到调式结果;因此,终端在使用过程中需要记录日志。

    终端中的日志分为kernel(核心)日志和应用日志两种日志类型;且终端中的大部
    分日志为应用日志,少数日志为kernel日志。终端将kernel日志记录在kernel侧的指定存
    储区域中,并采用第一计时方式,记录kernel日志的记录时间;终端将应用日志记录在应用
    侧的指定存储区域中,并采用第二计时方式,记录应用日志的记录时间。其中,第一计时方
    式和第二计时方式不同。

    在实现本发明的过程中,发明人发现现有技术至少存在以下问题:

    上述方法中kernel日志和应用日志的计时方式不同,当终端同时调用kernel日志
    和应用日志进行功能调试,由于无法精确确定kernel日志和应用日志的时序问题,从而导
    致调试难度大,进而导致调试效率低。

    发明内容

    为了解决现有技术的问题,本发明提供了一种记录日志的方法和装置。技术方案
    如下:

    第一方面,本发明提供了一种记录日志的方法,所述方法包括:

    核心kernel层记录待记录的kernel日志,向应用层发送预设类型事件,所述预设
    类型事件至少携带所述kernel日志的日志标识,所述kernel层和所述应用层位于同一个终
    端中;

    所述应用层接收所述kernel层发送的所述预设类型事件,获取所述应用层的时钟
    的当前时间作为所述kernel日志的记录时间;

    所述应用层存储所述日志标识和所述记录时间的对应关系。

    第二方面,本发明提供了一种记录日志的装置,所述装置包括:核心kernel日志记
    录??楹陀τ萌罩炯锹寄??;

    所述kernel日志记录???,用于记录待记录的kernel日志,向应用日志记录???br />发送预设类型事件,所述预设类型事件至少携带所述kernel日志的日志标识;

    所述应用日志记录???,用于接收所述kernel日志记录??榉⑺偷乃鲈ど枥嘈?br />事件,获取应用层的时钟的当前时间作为所述kernel日志的记录时间,所述应用日志记录
    ??槲挥谒鲇τ貌?;

    所述应用日志记录???,还用于存储所述日志标识和所述记录时间的对应关系。

    本发明实施例提供的技术方案带来的有益效果是:

    在本发明实施例中,kernel层在记录kernel日志时,通过预设事件类型,将kernel
    日志的日志标识输出给应用层,由应用层采用应用层的时钟的计时方式,在应用层记录
    kernel日志的记录时间;由于应用日志和kernel日志都采用应用层的时钟的计时方式记录
    时间,计时方式统一,从而能够准确确定kernel日志和应用日志的时序问题,从而降低了调
    试难度,提高了调试效率。

    附图说明

    图1是本发明实施例提供的一种终端结构图;

    图2是本发明实施例提供的一种记录日志的方法流程图;

    图3是本发明实施例提供的另一种记录日志的方法流程图;

    图4是本发明实施例提供的另一种记录日志的方法流程图;

    图5是本发明实施例提供的一种记录日志的装置结构示意图。

    具体实施方式

    为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方
    式作进一步地详细描述。

    目前,终端中的日志分为kernel日志和应用日志两种日志类型;且终端将kernel
    日志记录在kernel层的指定存储区域中,并根据kernel层的时钟,记录kernel日志的记录
    时间;终端将应用日志记录在应用层的指定存储区域中,并根据应用层的时钟,记录应用日
    志的记录时间;由于kernel层的时钟和应用层的时钟计时方式不同,因此,当终端同时调用
    kernel日志和应用日志进行功能调试时,由于无法准确确定kernel日志和应用日志的时序
    问题,从而导致调试难度大,进而导致调试效率低。

    在本发明实施例中,kernel层在记录kernel日志时,通过预设事件类型,将kernel
    日志的日志标识输出给应用层,由应用层根据应用层的时钟,在应用层记录kernel日志的
    记录时间;由于应用日志和kernel日志都采用应用层的时钟,记录时间,计时方式统一,从
    而能够准确确定kernel日志和应用日志的时序问题,从而降低了调试难度,提高了调试效
    率。

    参见图1,本发明实施例提供了一种终端100;终端100至少包括kernel层110和应
    用层111。终端还包括摄像头101、包括有一个或者一个以上处理核心的处理器102。该摄像
    头101包括前置摄像头和后置摄像头。

    需要说明的是:终端100除了包括上述两个部件外,还可以包括其他部件。例如,终
    端100还可以包括存储器103、输入单元104、显示单元105、传感器106、音频电路107、WiFi
    (wireless fidelity,无线保真)???08和收发器109等部件,存储器103包括有一个或一
    个以上计算机可读存储介质。需要强调说明的是:本领域技术人员可以理解,图1中示出的
    终端结构并不构成对终端100的限定,可以包括比图示更多或更少的部件,或者组合某些部
    件,或者不同的部件布置。

    以及,收发器109可用于在收发信息或通话过程中进行信号的接收和发送,特别
    地,将基站的下行信息接收后,交由一个或者一个以上处理器102处理;另外,将涉及上行的
    数据发送给基站。通常,收发器109包括但不限于天线、至少一个放大器、调谐器、一个或多
    个振荡器、SIM(Subscriber Identity Module,客户识别???卡、收发信机、耦合器、LNA
    (Low Noise Amplifier,低噪声放大器)、双工器等。此外,收发器109还可以通过无线通信
    与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于GSM
    (Global System of Mobile communication,全球移动通讯系统)、GPRS(General Packet
    Radio Service,通用分组无线服务)、CDMA(Code Division Multiple Access,码分多址)、
    WCDMA(Wideband Code Division Multiple Access,宽带码分多址)、LTE(Long Term
    Evolution,长期演进)、电子邮件、SMS(Short Messaging Service,短消息服务)等。

    存储器103还可用于存储软件程序以及???,处理器102可以通过运行存储在存储
    器103的软件程序以及???,从而执行各种功能应用以及数据处理。存储器103可主要包括
    存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程
    序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端100的使用所创建
    的数据(比如音频数据、电话本等)等。此外,存储器103可以包括高速随机存取存储器,还可
    以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器
    件。相应地,存储器103还可以包括存储器控制器,以提供处理器102和输入单元104对存储
    器103的访问。

    输入单元104可用于接收输入的数字或字符信息,以及产生与用户设置以及功能
    控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元104可包括触
    敏表面141以及其他输入设备142。触敏表面141,也称为触摸显示屏或者触控板,可收集用
    户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表
    面141上或在触敏表面141附近的操作),并根据预先设定的程式驱动相应的连接装置??裳?br />的,触敏表面141可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用
    户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸
    检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器102,并能接收处理器102
    发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型
    实现触敏表面141。除了触敏表面141,输入单元104还可以包括其他输入设备142。具体地,
    其他输入设备142可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、
    轨迹球、鼠标、操作杆等中的一种或多种。

    显示单元105可用于显示照片显示界面、相机预设界面、由用户输入的信 息或提
    供给用户的信息以及终端100的各种图形用户接口,这些图形用户接口可以由图形、文本、
    图标、视频和其任意组合来构成。显示单元105可包括显示面板151,可选的,可以采用LCD
    (Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发
    光二极管)等形式来配置显示面板151。进一步的,触敏表面141可覆盖显示面板151,当触敏
    表面141检测到在其上或附近的触摸操作后,传送给处理器102以确定触摸事件的类型,随
    后处理器102根据触摸事件的类型在显示面板151上提供相应的视觉输出。虽然在图1中,触
    敏表面141与显示面板151是作为两个独立的部件来实现输入和输入功能,但是在某些实施
    例中,可以将触敏表面141与显示面板151集成而实现输入和输出功能。

    终端100包括至少一种传感器106,比如光传感器、运动传感器以及其他传感器。具
    体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的
    明暗来调节显示面板151的亮度,接近传感器可在终端100移动到耳边时,关闭显示面板151
    和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加
    速度的大小,静止时可检测出重力的大小及方向,可用于识别终端姿态的应用(比如横竖屏
    切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端100
    还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

    音频电路107包括扬声器171和传声器172,扬声器171和传声器172可提供用户与
    终端100之间的音频接口。音频电路107可将接收到的音频数据转换后的电信号,传输到扬
    声器171,由扬声器171转换为声音信号输出;另一方面,传声器172将收集的声音信号转换
    为电信号,由音频电路107接收后转换为音频数据,再将音频数据输出处理器102处理后,经
    收发器109以发送给比如另一终端,或者将音频数据输出至存储器103以便进一步处理。音
    频电路107还可能包括耳塞插孔,以提供外设耳机与终端100的通信。

    WiFi属于短距离无线传输技术,终端100通过WiFi???08可以帮助用户收发电子
    邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图1示出
    了WiFi???08,但是可以理解的是,其并不属于终端100的必须构成,完全可以根据需要在
    不改变发明的本质的范围内而省略。

    处理器102是终端100的控制中心,利用各种接口和线路连接整个终端的各个部
    分,通过运行或执行存储在存储器103内的软件程序和/或???,以及调用存储在存储器103
    内的数据,执行终端100的各种功能和处理数据,从而对终端100进行整体监控??裳〉?,处
    理器102可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户
    界面和应用程序等,调制解调处理器主要处理无线通信??梢岳斫獾氖?,上述调制解调处理
    器也可以不集成到处理器102中。

    终端100还包括给各个部件供电的电源109(比如电池),优选的,电源109可以通过
    电源管理系统与处理器102逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功
    耗管理等功能。电源109还可以包括一个或一个以上的直流或交流电源、再充电系统、电源
    故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。

    尽管未示出,终端100还可以包括蓝牙??榈?,在此不再赘述。具体在本实施例中,
    终端的显示单元是触摸屏显示器,终端还包括有存储器,以及一个或者一个以上的程序,其
    中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行。
    所述一个或者一个以上程序包含用于执行如下操作的指令:

    核心kernel层110记录待记录的kernel日志,向应用层111发送预设类型事件,所
    述预设类型事件至少携带所述kernel日志的日志标识,所述kernel层110和所述应用层111
    位于同一个终端中;

    所述应用层111接收所述kernel层110发送的所述预设类型事件,获取应用层的时
    钟的当前时间作为所述kernel日志的记录时间;

    所述应用层111存储所述日志标识和所述记录时间的对应关系。

    可选的,所述预设类型事件还携带所述kernel日志的日志内容;

    所述应用层111存储所述日志标识和所述记录时间的对应关系,包括:

    所述应用层111存储所述日志标识、所述日志内容和所述记录时间的对应关系。

    可选的,所述方法还包括:

    所述应用层111接收所述终端中的测试程序发送的第一读取请求,所述第一读取
    请求携带所述kernel日志的日志标识,根据所述日志标识,从日志标识、日志内容和记录时
    间的对应关系中获取所述kernel日志的日志内容和记录时间,向所述测试程序发送所述日
    志内容和所述记录时间。

    可选的,所述方法还包括:

    所述kernel层110接收所述终端中的测试程序发送的第二读取请求,向所述应用
    层111转发所述第二读取请求,所述第二读取请求携带所述kernel日志的日志标识;

    所述应用层111接收所述kernel层110转发的所述第二读取请求,根据所述日志标
    识,从日志标识和记录时间的对应关系中获取所述kernel日志的记录时间,向所述kernel
    层110发送所述记录时间;

    所述kernel层110接收所述应用层111发送的所述记录时间,获取所述kernel日志
    的日志内容,向所述测试程序发送所述日志内容和所述记录时间。

    可选的,所述预设类型事件还携带事件标识;

    所述应用层111获取应用层的时钟的当前时间作为所述kernel日志的记录时间之
    前,还包括:

    所述应用层111确定所述事件标识是否为记录日志的事件标识;

    如果所述事件标识为记录日志的事件标识,则执行所述应用层111获取应用层的
    时钟的当前时间作为所述kernel日志的记录时间的步骤。

    可选的,所述应用层111接收所述kernel层110发送的所述预设类型事件,包括:

    所述应用层111启动监听服务,通过所述监听服务接收所述kernel层110发送的所
    述预设类型事件。

    在本发明实施例中,kernel层110在记录kernel日志时,通过预设事件类型,将
    kernel日志的日志标识输出给应用层111,由应用层111采用应用层的时钟的计时方式,在
    应用层记录kernel日志的记录时间;由于应用日志和kernel日志都采用应用层的时钟的计
    时方式记录时间,计时方式统一,从而能够准确确定kernel日志和应用日志的时序问题,从
    而降低了调试难度,提高了调试效率。

    本发明实施例提供了一种记录日志的方法,该方法应用在终端中;终端至少包括
    kernel层和应用层;终端还可以包括测试程序。

    参见图2,该方法包括:

    步骤201:kernel层记录待记录的kernel日志,向应用层发送预设类型事件,该预
    设类型事件至少携带kernel日志的日志标识。

    步骤202:应用层接收kernel层发送的该预设类型事件,获取应用层的时钟的当前
    时间作为kernel日志的记录时间。

    步骤203:应用层存储该日志标识和该记录时间的对应关系。

    可选的,该预设类型事件还携带kernel日志的日志内容;

    应用层存储该日志标识和该记录时间的对应关系,包括:

    应用层存储该日志标识、该日志内容和该记录时间的对应关系。

    可选的,该方法还包括:

    应用层接收测试程序发送的第一读取请求,第一读取请求携带kernel日志的日志
    标识,根据该日志标识,从日志标识、日志内容和记录时间的对应关系中获取kernel日志的
    日志内容和记录时间,向测试程序发送该日志内容和该记录时间。

    可选的,该方法还包括:

    kernel层接收测试程序发送的第二读取请求,向应用层转发第二读取请求,该第
    二读取请求携带kernel日志的日志标识;

    应用层接收kernel层转发的第二读取请求,根据该日志标识,从日志标识和记录
    时间的对应关系中获取kernel日志的记录时间,向kernel层发送该记录时间;

    kernel层接收应用层发送的该记录时间,获取kernel日志的日志内容,向测试程
    序发送该日志内容和该记录时间。

    可选的,该预设类型事件还携带事件标识;

    应用层获取应用层的时钟的当前时间作为kernel日志的记录时间之前,还包括:

    应用层确定该事件标识是否为记录日志的事件标识;

    如果该事件标识为记录日志的事件标识,则执行应用层获取应用层的时钟的当前
    时间作为kernel日志的记录时间的步骤。

    可选的,应用层接收kernel层发送的预设类型事件,包括:

    应用层启动监听服务,通过监听服务接收kernel层发送的预设类型事件。

    在本发明实施例中,kernel层在记录kernel日志时,通过预设事件类型,将kernel
    日志的日志标识输出给应用层,由应用层采用应用层的时钟的计时方式,在应用层记录
    kernel日志的记录时间;由于应用日志和kernel日志都采用应用层的时钟的计时方式记录
    时间,计时方式统一,从而能够准确确定kernel日志和应用日志的时序问题,从而降低了调
    试难度,提高了调试效率。

    本发明实施例提供了一种记录日志的方法,该方法应用在终端中;该终端可以为
    手机、平板电脑等;该终端至少包括kernel层和应用层;该终端还可以包括测试程序。

    在本发明实施例中,为了保证kernel日志和应用日志采用相同的计时方式,将
    kernel日志的日志标识输出到应用层,在应用层记录kernel日志的日志标识和记录时间;
    测试程序在调用kernel日志时,从kernel层获取kernel日志的日志内容,从应用层获取
    kernel日志的记录时间。

    参见图3,该方法包括:

    步骤301:kernel层记录待记录的kernel日志,向应用层发送预设类型事件,该预
    设类型事件至少携带kernel日志的日志标识。

    kernel层在需要记录待记录的kernel日志时,获取待记录的kernel日志的日志内
    容,将kernel日志的日志内容存储在kernel层的指定存储区域中。为了统一计时方式,
    kernel层获取kernel日志的日志标识,将该日志标识添加到预设类型事件的参数中,向应
    用层发送该预设类型事件。

    kernel层将kernel日志的日志内容存储在kernel层的指定存储区域中的步骤可
    以为:

    kernel层将kernel日志的日志标识和日志内容的对应关系存储在kernel层的指
    定存储区域中。

    日志标识可以为日志名称等;预设类型事件可以为任意类型事件,在本发明实施
    例中,对预设类型事件不作具体限定;例如,预设类型事件可以为uevent事件;并且,该
    uevent事件可以为现有的uevent事件,也可以为新定义的uevent事件。

    如果预设类型事件为现有的uevent事件,则为了与现有的uevent事件的功能进行
    区分,kernel层还可以获取记录日志的事件标识,将该事件标识也添加到该预设类型事件
    的参数中。

    该事件标识可以为任一标识该预设类型事件为记录日志的事件标识;在本发明实
    施例中,对事件标识不作具体限定;例如,事件标识可以为“TAG=KERNEL_INTO_ANDRC D”这
    样的字符串。

    如果预设类型事件不为现有的uevent事件,则该预设类型事件不携带该事件标
    识。

    步骤302:应用层接收kernel层发送的该预设类型事件,获取应用层的时钟的当前
    时间作为kernel日志的记录时间。

    应用层接收kernel层发送的该预设类型事件,解析该预设类型事件,从该预设类
    型事件的参数中获取kernel日志的日志标识,获取应用层的时钟的当前时间,将应用层的
    时钟的当前时间作为kernel日志的记录时间。

    进一步地,如果该预设类型事件为现有的uevent事件;则应用层还可以从该预设
    类型事件的参数中获取该uevent事件的事件标识;相应的,执行步骤302之前,还包括:

    应用层确定该事件标识是否为记录日志的事件标识;如果该事件标识为记录日志
    的事件标识时,确定该预设类型事件为记录日志的事件,执行步骤302。

    如果该事件标识不为记录日志的事件标识时,确定该预设类型事件不为记录日志
    的事件,结束。

    例如,该预设类型事件携带的事件标识为“TAG=KERNEL_INTO_ANDRC D”,记录日
    志的事件标识为“TAG=KERNEL_INTO_ANDRC D”;则应用层通过比对该预设类型事件携带的
    事件标识和该记录日志的事件标识,确定该预设类型事件携带的事件标识和记录日志的事
    件标识相同,执行步骤303。

    需要说明的是,应用层中包括监听服务,监听服务注册预设类型事件,并监听预设
    类型事件,则步骤202可以为:

    启动监听服务,通过该该监听服务接收kernel层发送的该预设类型事件。其中,监
    听服务可以为2aService。

    进一步地,应用层在需要记录应用日志时,获取待记录的应用日志的日志内容,获
    取当前时间作为应用日志的记录时间,将应用日志的日志标识、日志内容和记录时间存储
    在kernel层的指定存储区域中。

    步骤303:应用层存储kernel日志的日志标识和kernel日志的记录时间的对应关
    系。

    应用层将kernel日志的日志标识和kernel日志的记录时间的对应关系存储在应
    用层的指定存储区域中。

    进一步地,应用层获取kernel日志的记录时间之后,还可以向kernel层发送
    kernel日志的记录时间;kernel层接收应用层发送的kernel日志的记录时间,存储kernel
    日志的日志标识、日志内容和记录时间的对应关系。

    终端还包括测试程序,测试程序在测试时,如果需要读取kernel日志时,测试程序
    向kernel层发送第二读取请求,该第二读取请求携带kernel日志的日志标识,执行步骤
    304。

    步骤304:kernel层接收测试程序发送的第二读取请求,向应用层转发该第二读取
    请求,该第二读取请求携带kernel日志的日志标识。

    为了统一计时方式,kernel层向应用层转发该第二读取请求,以请求应用层获取
    kernel日志的记录时间。

    如果kernel层记录了kernel日志在应用层的记录时间,则kernel层接收到测试程
    序发送的第二读取请求之后,直接从本地存储的kernel日志的日志标识、日志内容和记录
    时间的对应关系中,获取kernel日志的日志内容和记录时间,向测试程序发送kernel日志
    的日志内容和记录时间,不需要向应用层转发该第二读取请求,也不需要执行步骤305和
    306。

    步骤305:应用层接收kernel层转发的该第二读取请求,根据该日志标识,从日志
    标识和记录时间的对应关系中获取kernel日志的记录时间,向kernel层发送该记录时间。

    步骤306:kernel层接收应用层发送的该记录时间,获取kernel日志的日志内容,
    向测试程序发送kernel日志的日志内容和记录时间。

    测试程序接收kernel层发送的kernel日志的日志内容和记录时间,根据kernel日
    志的日志内容和记录时间,进行功能测试。

    kernel层获取kernel日志的日志内容的步骤可以为:

    kernel层根据kernel日志的日志标识,kernel层的指定存储区域中的日志标识和
    日志内容的对应关系中获取kernel日志的日志内容。

    如果测试程序需要读取应用日志时,向应用层发送第三读取请求,该第三读取请
    求携带应用日志的日志标识。应用层接收测试程序发送的第三读取请求,根据应用日志的
    日志标识,从日志标识、日志内容和记录时间的对应关系中获取应用日志的日志内容和记
    录时间,向测试程序发送应用日志的日志内容和记录时间;测试程序接收应用层发送的应
    用日志的日志内容和记录时间,根据应用日志的日志内容和记录时间,进行功能测试。

    需要说明的是,在本发明实施例中,以kernel日志和应用日志都采用应用层的时
    钟的计时方式记录时间,也可以采用kernel层的时钟的计时方式记录时间。此时,应用层在
    记录待记录的应用日志时,向kernel层发送预设类型事件,该预设类型事件携带应用日志
    的日志标识;kernel层接收应用层发送的该预设类型事件,获取kernel层的时钟的的当前
    时间作为应用日志的记录时间,存储应用日志的日志标识和记录时间的对应关系。

    在本发明实施例中,kernel层在记录kernel日志时,通过预设事件类型,将kernel
    日志的日志标识输出给应用层,由应用层采用应用层的时钟的计时方式,在应用层记录
    kernel日志的记录时间;由于应用日志和kernel日志都采用应用层的时钟的计时方式记录
    时间,计时方式统一,从而能够准确确定kernel日志和应用日志的时序问题,从而降低了调
    试难度,提高了调试效率。

    在本发明实施例中,为了保证kernel日志和应用日志采用相同的计时方式,将
    kernel日志的日志内容输出到应用层,在应用层记录kernel日志的日志内容和记录时间;
    测试程序在调用kernel日志时,直接从应用层获取kernel日志的日志内容和记录时间。

    参见图4,该方法包括:

    步骤401:kernel层记录待记录的kernel日志,向应用层发送预设类型事件,该预
    设类型事件至少携带kernel日志的日志标识和日志内容。

    kernel层在记录待记录的kernel日志时,可以不在kernel层记录kernel日志的日
    志内容,将kernel日志的日志标识和日志内容添加到预设类型事件的参数中,向应用层发
    送该预设类型事件,从而在应用层记录kernel日志的日志内容。当然,为了提高kernel日志
    的可靠性,kernel层也可以在kernel层记录kernel日志的日志内容。

    例如,kernel日志的日志内容添加到预设类型事件的MSG中,则预设类型事件可以
    为“MSG=this kernel message will show into android”。

    同样,当预设类型事件为现有的uevent事件时,为了与现有的uevent事件的功能
    进行区分,kernel层还可以获取记录日志的事件标识,将该事件标识也添加到该预设类型
    事件的参数中。

    如果预设类型事件不为现有的uevent事件,则该预设类型事件不携带该事件标
    识。

    步骤402:应用层接收kernel层发送的该预设类型事件,获取应用层的时钟的当前
    时间作为kernel日志的记录时间。

    应用层解析该预设类型事件,从该预设类型事件的参数中获取kernel的日志标识
    和日志内容,获取应用层的时钟的当前事件,将应用层的时钟的当前时间作为kernel日志
    的记录时间。

    进一步地,如果该预设类型事件为现有的uevent事件;则应用层还可以从该预设
    类型事件的参数中获取该uevent事件的事件标识;相应的,执行步骤402之前,还包括:

    应用层确定该事件标识是否为记录日志的事件标识;如果该事件标识为记录日志
    的事件标识时,确定该预设类型事件为记录日志的事件,执行步骤402。

    如果该事件标识不为记录日志的事件标识时,应用层确定该预设类型事件不为记
    录日志的事件,结束。

    进一步地,应用层在需要记录应用日志时,获取待记录的应用日志的日志内容,获
    取应用层的时钟的当前时间作为应用日志的记录时间,将应用日志的日志标识、日志内容
    和记录时间存储在kernel层的指定存储区域中。

    步骤403:应用层存储kernel日志的日志标识、kernel日志的日志内容和kernel日
    志的记录时间的对应关系。

    应用层将kernel日志的日志标识、kernel日志的日志内容和kernel日志的记录时
    间的对应关系存储在应用层的指定存储区域中。

    测试程序在测试时,如果需要读取kernel日志时,测试程序直接向应用层发送第
    一读取请求,该第一读取请求携带kernel日志的日志标识,执行步骤404。

    步骤404:应用层接收测试程序发送的第一读取请求,该第一读取请求携带kernel
    日志的日志标识。

    步骤405:应用层根据该日志标识,从日志标识、日志内容和记录时间的对应关系
    中获取kernel日志的日志内容和记录时间。

    步骤406:应用层向测试程序发送kernel日志的日志内容和记录时间。

    测试程序接收应用层发送的kernel日志的日志内容和记录时间,根据kernel日志
    的日志内容和记录时间,对kernel日志进行测试。

    如果测试程序需要读取应用日志时,向应用层发送第三读取请求,该第三读取请
    求携带应用日志的日志标识。应用层接收测试程序发送的第三读取请求,根据应用日志的
    日志标识,从日志标识、日志内容和记录时间的对应关系中获取应用日志的日志内容和记
    录时间,向测试程序发送应用日志的日志内容和记录时间;测试程序接收应用层发送的应
    用日志的日志内容和记录时间,根据应用日志的日志内容和记录时间,进行功能测试。

    需要说明的是,在本发明实施例中,以kernel日志和应用日志都采用应用层的时
    钟的计时方式记录时间,也可以采用kernel层的时钟的计时方式记录时间。此时,应用层在
    记录待记录的应用日志时,向kernel层发送预设类型事件,该预设类型事件携带应用日志
    的日志标识和日志内容;kernel层接收应用层发送的该预设类型事件,获取kernel层的时
    钟的当前时间作为应用日志的记录时间,存储应用日志的日志标识、日志内容和记录时间
    的对应关系。

    在本发明实施例中,kernel层在记录kernel日志时,通过预设事件类型,将kernel
    日志的日志标识和日志内容输出给应用层,由应用层采用应用层的时钟的计时方式,在应
    用层记录kernel日志的记录时间,并存储kernel日志的日志内容;由于应用日志和kernel
    日志都采用应用层的时钟的计时方式记录时间,计时方式统一,从而能够准确确定kernel
    日志和应用日志的时序问题,从而降低了调试难度,提高了调试效率。并且,由于应用层存
    储了kernel日志的日志内容,后续测试程序在读取kernel日志时,直接从应用层读取
    kernel日志的日志内容,相较于从kernel层读取kernel日志的日志内容,从应用层读取
    kernel日志的记录时间,简化了读取过程,进一步提高了调试效率。

    本发明实施例提供了一种记录日志的装置,该装置可以应用在终端中,用于执行
    上述记录日志的方法;参见图5,该装置包括:kernel日志记录???01和应用日志记录???br />502;

    kernel日志记录???01,用于记录待记录的kernel日志,向应用日志记录???br />502发送预设类型事件,该预设类型事件至少携带kernel日志的日志标识;

    应用日志记录???02,用于接收kernel日志记录???01发送的该预设类型事
    件,获取应用层的时钟的当前时间作为kernel日志的记录时间,应用日志记录??槲挥谟?br />用层;

    应用日志记录???02,还用于存储该日志标识和该记录时间的对应关系。

    可选的,该预设类型事件还携带kernel日志的日志内容;

    应用日志记录???02,还用于存储该日志标识、该日志内容和该记录时间的对应
    关系。

    可选的,应用日志记录???02,还用于接收测试程序发送的第一读取请求,该第
    一读取请求携带kernel日志的日志标识,根据该日志标识,从日志标识、日志内容和记录时
    间的对应关系中获取kernel日志的日志内容和记录时间,向测试程序发送该日志内容和该
    记录时间。

    可选的,kernel日志记录???01,还用于接收测试程序发送的第二读取请求,向
    应用日志记录???02转发该第二读取请求,该第二读取请求携带kernel日志的日志标识;

    应用日志记录???02,还用于接收kernel日志记录???01转发的该第二读取请
    求,根据该日志标识,从日志标识和记录时间的对应关系中获取kernel日志的记录时间,向
    kernel日志记录???01发送该记录时间;

    kernel日志记录???01,还用于接收应用日志记录???02发送的该记录时间,
    获取kernel日志的日志内容,向测试程序发送该日志内容和该记录时间。

    可选的,该预设类型事件还携带事件标识;

    应用日志记录???02,还用于确定该事件标识是否为记录日志的事件标识;

    如果该事件标识为记录日志的事件标识,则应用日志记录???02用于获取应用
    层的当前时间作为kernel日志的记录时间。

    可选的,应用日志记录???02,还用于启动监听服务,通过监听服务接收kernel
    日志记录???01发送的该预设类型事件。

    在本发明实施例中,kernel日志记录???01在记录kernel日志时,通过预设事件
    类型,将kernel日志的日志标识输出给应用日志记录???02,由应用日志记录???02采
    用应用层的时钟的计时方式,在应用层记录kernel日志的记录时间;由于应用日志和
    kernel日志都采用应用层的时钟的计时方式记录时间,计时方式统一,从而能够准确确定
    kernel日志和应用日志的时序问题,从而降低了调试难度,提高了调试效率。

    需要说明的是:上述实施例提供的记录日志的装置在记录日志时,仅以上述各功
    能??榈幕纸芯倮得?,实际应用中,可以根据需要而将上述功能分配由不同的功能
    ??橥瓿?,即将装置的内部结构划分成不同的功能???,以完成以上描述的全部或者部分
    功能。另外,上述实施例提供的记录日志的装置与记录日志的方法实施例属于同一构思,其
    具体实现过程详见方法实施例,这里不再赘述。

    本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件
    来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读
    存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

    以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和
    原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的?;し段е?。

    关于本文
    本文标题:记录日志的方法和装置.pdf
    链接地址://www.4mum.com.cn/p-6004827.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    [email protected] 2017-2018 www.4mum.com.cn网站版权所有
    经营许可证编号:粤ICP备17046363号-1 
     


    收起
    展开
  • 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
  • 股票融资技巧_杨方配资平台 股票融资融券业务 今日短线黑马股票推荐 上证指数的点位 股票融资软件_杨方配资平台 证券投资股票分析论文 股票涨跌涨幅振幅 钱龙股票分析软件 中国长城股票 股票融资软件·杨方配资平台 600031股票行情 美国股票指数道琼斯代码 股票分析方法和逻辑 股票融资利率 股票融资风险ˉ杨方配资 美国股票指数比中国股票指数高