CN108388496A - 一种系统日志的收集方法 - Google Patents

一种系统日志的收集方法 Download PDF

Info

Publication number
CN108388496A
CN108388496A CN201810064594.0A CN201810064594A CN108388496A CN 108388496 A CN108388496 A CN 108388496A CN 201810064594 A CN201810064594 A CN 201810064594A CN 108388496 A CN108388496 A CN 108388496A
Authority
CN
China
Prior art keywords
daily record
store path
external memory
memory equipment
collection method
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201810064594.0A
Other languages
English (en)
Inventor
俞伟
严治威
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Amlogic Shanghai Co Ltd
Amlogic Inc
Original Assignee
Amlogic Shanghai Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Amlogic Shanghai Co Ltd filed Critical Amlogic Shanghai Co Ltd
Priority to CN201810064594.0A priority Critical patent/CN108388496A/zh
Publication of CN108388496A publication Critical patent/CN108388496A/zh
Priority to US16/645,574 priority patent/US11520681B2/en
Priority to PCT/CN2018/113149 priority patent/WO2019144670A1/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • G06F9/30043LOAD or STORE instructions; Clear instruction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/545Interprogram communication where tasks reside in different layers, e.g. user- and kernel-space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供了一种系统日志的收集方法,应用于安卓系统的智能设备,其中,提供一日志收集的守护进程,守护进程用以在安卓设备的系统启动时启动;提供一日志处理的应用程序进程;提供一外部存储设备,用以接入智能设备;包括以下步骤:守护进程收集应用题框架层以及Linux内核的日志,并保存于安卓系统的一第一存储路径下;应用程序进程在识别接入的外部存储设备之后,于外部存储设备中创建一第二存储路径;应用程序进程于第一存储路径中获得日志并保存于第二存储路径中。其技术方案的有益效果在于,智能设备无需提供外接串口线和USB线也能被获取日志,对于工厂生产和售后等无法外接串口线和USB线的情况下,出现的问题,也能快速的定位问题。

Description

一种系统日志的收集方法
技术领域
本发明涉及通信技术领域,尤其涉及一种系统日志的收集方法。
背景技术
系统日志是记录系统中硬件、软件和系统问题的信息,同时还可以监视系统中发生的事件。用户可以通过它来检查错误发生的原因,或者寻找受到攻击时攻击者留下的痕迹。在Android系统中,收集日式的方式虽然包括多种,但是比较分散。
现有的日志收集系统,可通过输入相关的命令的获得日志,具体的,如果要看framework层的日志,需要输入logcat来获取输出信息,如果要看内核的日志,需要输入dmesg来获取输出信息,如果要看Android层每个service的运行状态,需要输入dumpsys来获取输出,这些都必须要依赖于Android系统的设备有通过串口线或者USB线连接到电脑,通过电脑的串口或者ADB命令手动输入,否则无法获取调试信息。如果系统崩溃,Android默认会保存tombstone到/data/tomebstones/下面,如果应用没有响应了,会保存traces.txt到/data/anr/,其他的日志会输出到内存。还有一些日志收集系统就是把Android原生的分散的日志收集到一起,保存到sdcard或者U盘中,最后把sdcard或者U盘里面手机到的日志文件拿到电脑上分析。
上述的日志收集方式存在着以下缺陷:Android默认的日志收集方式,必须依赖于有串口线或者USB线连接到电脑,在工厂进行生产时由于不方便外接串口线或者USB线,在这种情况下,出现的问题由于看不到调试信息,所以没法调试。在这种情况下,往往会让产线停下来,外接串口线或者USB线,输入命令导出日志来分析。如果要使用USB线ADB的方式,Android设备必须要有OTG口,但是在很多的机顶盒和智能电视上面,都取消了OTG口,所以在这种情况就没法通过USB ADB来调试,而网络ADB一般在出厂的固件里面也不会默认使能。
由于Android默认是把日志输出到内存里面,这是一块循环缓冲区,如果这块缓冲区满了,后面的日志会覆盖前面的日志,造成相关有用的信息获取不到。
而且如果要获取framework层的相关日志,需要在开机以后输入logcat指令,才会有framework层的相关日志,在断电或者重启以后这些日志的信息就都没有了,或者缓冲区满了以后前面的日志会被后面的日志覆盖,这样出现问题的现场信息很有可能就没有了,在这种情况下面,很难快速的定位问题。
在进行开关机压力测试的时候,如果某一次关机的时候失败了,时间长了以后日志缓冲区会满,就会把前面的有用的日志给覆盖,到输入logcat来获取日志的时候,很可能已经晚了,就会抓不到现场,导致没法定位问题。
发明内容
针对现有技术中收集日志存在的上述问题,现提供一种旨在将分散的日志实现统一收集,智能设备无需提供外接串口线和USB线也能被获取日志的方法。
具体技术方案如下:
一种系统日志的收集方法,应用于安卓系统的智能设备,所述安卓系统的架构由上至下依次包括,应用程序层、应用框架层、系统库以及Linux内核,其中,提供一日志收集的守护进程,所述守护进程用以在所述安卓设备的系统启动时启动;
提供一日志处理的应用程序进程;
提供一外部存储设备,用以接入所述智能设备;
包括以下步骤:
步骤S1、所述守护进程收集所述应用题框架层以及所述Linux内核的日志,并保存于所述安卓系统的一第一存储路径下;
步骤S2、所述应用程序进程在识别接入的所述外部存储设备之后,于所述外部存储设备中创建一第二存储路径;
步骤S3、所述应用程序进程于所述第一存储路径中获得所述日志并保存于所述第二存储路径中。
优选的,提供一配置文件,于所述配置文件中配置形成所述第一存储路径,以及配置形成所述守护进程的启动参数;
提供一初始化进程,用以在所述安卓系统启动时启动,所述初始化进程用以加载所述配置文件以启动所述守护进程。
优选的,所述初始化进程为所述安卓系统中的init进程。
优选的,所述守护进程对所述日志按照一预定大小均分成多份,且每次可保存一预定份数。
优选的,所述预定大小为1M,以及所述预定份数为10份。
优选的,所述应用程序进程于启动后,向所述安卓系统注册形成一记录模块以及一检测模块;
创建形成所述第二存储路径的方法包括以下步骤:
步骤A1、在所述外部存储设备接入所述智能设备之后,所述安卓系统发送一检测指令至所述检测模块;
步骤A2、所述检测模块根据所述检测指令在所述外部存储设备的根目录下检测是否是存在一目标脚本文件;
若否,退出;
步骤A3、于所述外部存储设备中创建形成所述第二存储路径以及一第三存储路径,所述记录模块用以记录所述安卓系统当前运行的程序的状态信息至所述第三存储路径。
优选的,在所述第二存储路径创建形成之前,还包括以下步骤:
步骤B1、所述检测模块检测所述外部存储设备的存储容量是否大于一预设的标准存储容量;
若是,执行步骤A3;
若否,退出。
优选的,所述标准存储容量为50M。
优选的,在步骤A2中,通过所述记录模块检测所述外部存储设备的所述脚本文件中是否存在一获取所述智能设备中的寄存器的指令;
如是,启动一指令线程,通过所述指令线程获取所述寄存器的状态信息。
如否,退出。
优选的,所述外部存储设备为Sd卡,和/或
所述外部存储设备为USB闪存盘。
上述技术方案具有如下优点或有益效果:可将系统中的日志集中保存进而可方便使用者查找日志;通过提供的守护进程收集日志,收集的还包括kernel(内核)日志,并把文件保存到设备上,这样再做压力测试的时候,可以保证上一次出问题的现场日志能够被保存下来;
智能设备无需提供外接串口线和USB线也能被获取日志,对于工厂生产和售后等无法外接串口线和USB线的情况下,出现的问题,也能快速的定位问题。
附图说明
参考所附附图,以更加充分的描述本发明的实施例。然而,所附附图仅用于说明和阐述,并不构成对本发明范围的限制。
图1为本发明一种系统日志的收集方法的实施例的流程图;
图2为本发明一种系统日志的收集方法的实施例中,关于形成第二存储路径的实施例的流程图;
图3为本发明一种系统日志的收集方法的实施例中,关于判断外部接入设备的容量方法的实施例的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。
本发明的技术方案中包括一种系统日志的收集方法。
一种系统日志的收集方法的实施例,应用于安卓系统的智能设备,所述安卓系统的架构由上至下依次包括,应用程序层、应用框架层、系统库以及Linux内核,其中于,提供一日志收集的守护进程,所述守护进程用以在所述安卓设备的系统启动时启动;
提供一日志处理的应用程序进程;
提供一外部存储设备,用以接入所述智能设备;
如图1所示,包括以下步骤:
步骤S1、所述守护进程收集所述应用题框架层以及所述Linux内核的日志,并保存于所述安卓系统的一第一存储路径下;
步骤S2、所述应用程序进程在识别接入的所述外部存储设备之后,于所述外部存储设备中创建一第二存储路径;
步骤S3、所述应用程序进程于所述第一存储路径中获得所述日志并保存于所述第二存储路径中。
针对现有技术中的对系统日志收集的方式分散,智能设备依赖有串口线或者USB线连接到上位机,通过上位机编辑指令于所述智能设备中获取日志,而现有的智能设备出于陈本或者外观的考虑取消了串口以及USB接口使得调试者无法及时的获取日志的问题。
本发明中,通过在智能设备的系统中设置守护进程,即在设备的系统启动之后,即进入用户态之后,守护进程将获取安卓系统的应用题框架层以及所述Linux内核的日志,并统一保存至一第一存储路径下,然后通过应用程序进行将第一存储路径中的日志保存至接入的外部存储设备中,克服了现有技术中收集日志分散且依赖串口或者USB接口连接上位机通过上位机键入指令进行收集存在的操作复杂的问题。
在一种较优的实施方式中,提供一配置文件,于所述配置文件中配置形成所述第一存储路径,以及配置形成所述守护进程的启动参数;
提供一初始化进程,用以在所述安卓系统启动时启动,所述初始化进程用以加载所述配置文件以启动所述守护进程。
在一种较优的实施方式中,初始化进程为安卓系统中的init进程,所述配置文件为安卓系统中的init.rc脚本文件;
在一种较优的实施方式中,所述守护进程对所述日志按照一预定大小均分成多份,且每次可保存一预定份数。
在一种较优的实施方式中,所述预定大小为1M,以及所述预定份数为10份。
上述技术方案中,在init.rc文件里面的on post-fs-data里面加上:
mkdir/data/log 0771log log
创建需要保存日志的目录即第一存储路径,这样让下面的守护进程运行以后就会把日志保存在这个目录下面。
2)init.rc里面加上守护进程的启动参数:
service logcat/system/bin/logcat-b system-b events-b main-b crash-K-n10-v threadtime-f/data/log/logcat.log-r 1000
class main
user log
group log
seclabel u:r:logcat:s0
这样在Android系统以后到第一个用户态进程init以后,init进程会启动这个logcat守护进程。
logcat守护进程会收集系统打印到system,events,main和crash缓冲区的日志和kernel dmesg的日志,会以每份日志1M的大小一共保存10份,如果超过10份,会把前面保存的老的日志覆盖,以达到循环保存。每份日志的大小和保存的总份数都可以自行配置。
需要说明的是Android原生的logcat不支持保存kernel的日志,在配置文件中扩展了参数-K,可以同时保存kernel的日志,这样当发生kernel层异常的时候,也能够从日志定位问题。
在一种较优的实施方式中,应用程序进程于启动后,向安卓系统注册形成一记录模块以及一检测模块;
如图2所示,创建形成第二存储路径的方法包括以下步骤:
步骤A1、在外部存储设备接入智能设备之后,安卓系统发送一检测指令至检测模块;
步骤A2、检测模块根据检测指令在外部存储设备的根目录下检测是否是存在一目标脚本文件;
若否,退出;
步骤A3、于外部存储设备中创建形成第二存储路径以及一第三存储路径,记录模块用以记录安卓系统当前运行的程序的状态信息至第三存储路径。
在一种较优的实施方式中,在第二存储路径创建形成之前,如图3所示,还包括以下步骤:
步骤B1、检测模块检测外部存储设备的存储容量是否大于一预设的标准存储容量;
若是,执行步骤A3;
若否,退出。
在一种较优的实施方式中,标准存储容量为50M。
在一种较优的实施方式中,在步骤A2中,通过记录模块检测外部存储设备的脚本文件中是否存在一获取智能设备中的寄存器的指令;
如是,启动一指令线程,通过指令线程获取寄存器的状态信息。
如否,退出。
在一种较优的实施方式中,外部存储设备为Sd卡。
在一种较优的实施方式中,外部存储设备为USB闪存盘。
以下以一种具体的实施方式进行说明,在外部存储设备为,Sdcard
USB闪存盘的实施例下:
应用程序进程(ReadLog),向系统注册了一个service:记录模块(DumpServic);
一个BroadcastReceiver:检测模块(ExternalStorageReceiver)。
具体如下:
在sdcard或者U盘插入智能设备以后,系统ExternalStorageReceiver发送android.intent.action.MEDIA_MOUNTED broadcast;
ExternalStorageReceiver收到以后会首先判断这个sdcard或者U盘的根目录下面有没有目标脚本文件(.AMLCOPYLOGS,)如果没有,就执行任何操作,如果有就会启动DumpService。
在这个service中,会首先检查插入的sdcard或者U盘的剩余存储空间是不是大于50MB,如果不是就退出。
如果磁盘的剩余空间大于50MB,就会在磁盘的根目录下面创建目录即第二存储路径,logs-yyMMdd_HHmmss,接着启动dumpsys线程,把得到的信息保存到第三存储路径logs-yyMMdd_HHmmss/dumpsys.txt。然后创建dumpData线程,保存其他日志。会把
/data/log/下面的文件读取到logs-yyMMdd_HHmmss/log/
/data/tombstones/下面的文件读取到
logs-yyMMdd_HHmmss/tombstones/
/cache/recovery/下面的文件读取到logs-yyMMdd_HHmmss/recovery/
/data/anr/下面的文件读取到logs-yyMMdd_HHmmss/anr/
/system/build.prop读取到logs-yyMMdd_HHmmss/build.prop
运行命令:getprop和dmesg把结果分别保存到
logs-yyMMdd_HHmmss/getprop.txt和logs-yyMMdd_HHmmss/dmesg中。
针对现有技术中,通过sd卡或者U盘来收集Android原生的日志,这样可以解决不连串口线或者USB线的情况,但是针对出现花屏等需要查看寄存器状态的时候,则无法适用存在的问题。
上述技术方案中,通过应用程序进程运行外部接入设备中的目标文件的指令以查看寄存器等状态信息,而且是可以根据问题的需要灵活配置脚本文件的命令,可以即时的出现问题现场的信息。
具体的实施方式如下:
如果预先放置在sd卡或者U盘里面的目标脚本文件中是否存在需要运行的命令行,如有就会启动一个指令线程(command Thread),这个线程会专门用来获取Android智能设备上面当前的寄存器等系统状态。
这个是本发明最灵活最实用的地方,可以根据当前呈现的问题,在这个.AMLCOPYLOGS的目标脚本文件中,通过编辑不用的指令获取osd寄存器的相关信息如下:
查看osd寄存器及相关信息:
echo dump>/sys/class/graphics/fb0/debug
cat/sys/class/graphics/fb0/window_axis
cat/sys/class/graphics/fb0/scale_width
cat/sys/class/graphics/fb0/scale_height
screencap-p/storage/external_storage/udisk0/dump.png
dd if=/dev/graphics/fb0
of=/storage/external_storage/udisk0/osd.dump.bin
查看video相关信息
echo 1>/sys/module/amvideo/parameters/debug_flag
cat/sys/class/video/video_state
cat/sys/class/video/frame_width
cat/sys/class/video/frame_height
cat/sys/class/video/axis
cat/sys/class/video/crop
cat/sys/class/video/screen_mode
cat/sys/module/amvideo/parameters/platform_type
cat/sys/module/amvideo/parameters/process_3d_type
cat/sys/class/video/frame_rate
cat/sys/class/display/mode
查看afbc寄存器信息
echo 0xd0106b80 18>/sys/kernel/debug/aml_reg/dump
cat/sys/kernel/debug/aml_reg/dump
查看vframe信息
cat/sys/class/video/vframe_states
cat/sys/class/ppmgr/ppmgr_vframe_states
cat/sys/class/ionvideo/vframe_states
cat/sys/class/vfm/map
查看rdma中断信息
cat/proc/interrupts
cat/sys/module/rdma_mgr/parameters/reset_count
//查看GPU信息
cat/sys/kernel/debug/mali/utilization_pp
cat/sys/kernel/debug/mali/utilization_gp
cat/sys/kernel/debug/mali/utilization_gp_pp
cat/sys/kernel/debug/aml_clkmsr/clkmsr|grep mali
还有其他的查看寄存器等信息的命令放到最后。
在运行完这些命令以后,由于有些命令的输出结果是在kernel的日志里面,所以还需要运行一次dmesg的命令,来获取这些输出结果。
以上所述仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本发明说明书及图示内容所作出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。

Claims (10)

1.一种系统日志的收集方法,应用于安卓系统的智能设备,所述安卓系统的架构由上至下依次包括,应用程序层、应用框架层、系统库以及Linux内核,其特征在于,提供一日志收集的守护进程,所述守护进程用以在所述安卓设备的系统启动时启动;
提供一日志处理的应用程序进程;
提供一外部存储设备,用以接入所述智能设备;
包括以下步骤:
步骤S1、所述守护进程收集所述应用题框架层以及所述Linux内核的日志,并保存于所述安卓系统的一第一存储路径下;
步骤S2、所述应用程序进程在识别接入的所述外部存储设备之后,于所述外部存储设备中创建一第二存储路径;
步骤S3、所述应用程序进程于所述第一存储路径中获得所述日志并保存于所述第二存储路径中。
2.根据权利要求1所述的系统日志的收集方法,其特征在于,提供一配置文件,于所述配置文件中配置形成所述第一存储路径,以及配置形成所述守护进程的启动参数;
提供一初始化进程,用以在所述安卓系统启动时启动,所述初始化进程用以加载所述配置文件以启动所述守护进程。
3.根据权利要求2所述的系统日志的收集方法,其特征在于,所述初始化进程为所述安卓系统中的init进程。
4.根据权利要求1所述的系统日志的收集方法,其特征在于,所述守护进程对所述日志按照一预定大小均分成多份,且每次可保存一预定份数。
5.根据权利要求1所述的系统日志的收集方法,其特征在于,所述预定大小为1M,以及所述预定份数为10份。
6.据权利要求1所述的系统日志的收集方法,其特征在于,所述应用程序进程于启动后,向所述安卓系统注册形成一记录模块以及一检测模块;
创建形成所述第二存储路径的方法包括以下步骤:
步骤A1、在所述外部存储设备接入所述智能设备之后,所述安卓系统发送一检测指令至所述检测模块;
步骤A2、所述检测模块根据所述检测指令在所述外部存储设备的根目录下检测是否是存在一目标脚本文件;
若否,退出;
步骤A3、于所述外部存储设备中创建形成所述第二存储路径以及一第三存储路径,所述记录模块用以记录所述安卓系统当前运行的程序的状态信息至所述第三存储路径。
7.据权利要求1所述的系统日志的收集方法,其特征在于,在所述第二存储路径创建形成之前,还包括以下步骤:
步骤B1、所述检测模块检测所述外部存储设备的存储容量是否大于一预设的标准存储容量;
若是,执行步骤A3;
若否,退出。
8.据权利要求7所述的系统日志的收集方法,其特征在于,所述标准存储容量为50M。
9.据权利要求6所述的系统日志的收集方法,其特征在于,在步骤A2中,通过所述记录模块检测所述外部存储设备的所述脚本文件中是否存在一获取所述智能设备中的寄存器的指令;
如是,启动一指令线程,通过所述指令线程获取所述寄存器的状态信息;
如否,退出。
10.据权利要求1所述的系统日志的收集方法,其特征在于,所述外部存储设备为Sd卡,和/或
所述外部存储设备为USB闪存盘。
CN201810064594.0A 2018-01-23 2018-01-23 一种系统日志的收集方法 Pending CN108388496A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201810064594.0A CN108388496A (zh) 2018-01-23 2018-01-23 一种系统日志的收集方法
US16/645,574 US11520681B2 (en) 2018-01-23 2018-10-31 System log collection method
PCT/CN2018/113149 WO2019144670A1 (zh) 2018-01-23 2018-10-31 一种系统日志的收集方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810064594.0A CN108388496A (zh) 2018-01-23 2018-01-23 一种系统日志的收集方法

Publications (1)

Publication Number Publication Date
CN108388496A true CN108388496A (zh) 2018-08-10

Family

ID=63076394

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810064594.0A Pending CN108388496A (zh) 2018-01-23 2018-01-23 一种系统日志的收集方法

Country Status (3)

Country Link
US (1) US11520681B2 (zh)
CN (1) CN108388496A (zh)
WO (1) WO2019144670A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109388538A (zh) * 2018-09-13 2019-02-26 西安交通大学 一种基于内核的文件操作行为监控方法及装置
WO2019144670A1 (zh) * 2018-01-23 2019-08-01 晶晨半导体(上海)股份有限公司 一种系统日志的收集方法
CN111061589A (zh) * 2019-12-18 2020-04-24 广东小天才科技有限公司 Android设备的日志收集方法、装置及存储介质
CN111274059A (zh) * 2020-01-21 2020-06-12 浙江大华技术股份有限公司 一种从设备的软件异常处理方法及装置
CN111708688A (zh) * 2020-06-19 2020-09-25 广东小天才科技有限公司 一种协助分析关机充电异常的方法和装置

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112260854A (zh) * 2020-09-21 2021-01-22 深圳市广和通无线股份有限公司 物联网模块及其故障分析方法、装置、通信终端
CN112540874A (zh) * 2020-12-08 2021-03-23 广东小天才科技有限公司 智能设备死机日志采集方法、系统、电子设备及存储介质
CN112786070B (zh) * 2020-12-28 2024-03-15 Oppo广东移动通信有限公司 音频数据处理方法、装置、存储介质与电子设备
CN112948311B (zh) * 2021-03-30 2022-11-08 几维通信技术(深圳)有限公司 Linux系统下串口信息截获方法
CN113641544B (zh) * 2021-08-23 2024-04-26 北京百度网讯科技有限公司 用于检测应用状态的方法、装置、设备、介质和产品
CN115314408A (zh) * 2022-06-22 2022-11-08 中国第一汽车股份有限公司 一种自动收集日志信息的方法、系统以及电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101216800A (zh) * 2008-01-02 2008-07-09 中兴通讯股份有限公司 一种linux日志的管理装置及方法
JP2012022380A (ja) * 2010-07-12 2012-02-02 Kddi Corp ログ抽出システムおよびプログラム
CN106155875A (zh) * 2016-06-29 2016-11-23 北京小米移动软件有限公司 一种导出系统日志的方法和装置
CN106815128A (zh) * 2016-12-11 2017-06-09 乐视控股(北京)有限公司 日志输出方法及装置、电子设备
CN107547943A (zh) * 2016-06-23 2018-01-05 中兴通讯股份有限公司 一种日志文件自动导出方法和机顶盒

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1567182A (zh) * 2003-06-20 2005-01-19 鸿富锦精密工业(深圳)有限公司 日志记录系统及方法
US9015209B2 (en) * 2008-12-16 2015-04-21 Sandisk Il Ltd. Download management of discardable files
US9020993B2 (en) * 2008-12-16 2015-04-28 Sandisk Il Ltd. Download management of discardable files
KR20110127636A (ko) * 2009-03-10 2011-11-25 샌디스크 아이엘 엘티디 폐기 가능 파일의 다운로드 관리 방법
JP5143199B2 (ja) * 2010-08-24 2013-02-13 株式会社バッファロー ネットワーク中継装置
US9274798B2 (en) * 2013-01-18 2016-03-01 Morgan Stanley Multi-threaded logging
CN104899129A (zh) * 2014-03-06 2015-09-09 腾讯科技(深圳)有限公司 日志记录方法及装置
CN105468543B (zh) * 2014-09-11 2020-06-16 中兴通讯股份有限公司 一种保护敏感信息的方法及装置
CN105205142B (zh) 2015-09-18 2017-10-31 广东欧珀移动通信有限公司 保存日志文件的方法、装置和移动终端
CN106919494B (zh) 2015-12-25 2020-07-17 阿里巴巴集团控股有限公司 安卓应用日志的实现方法和装置
US10013329B2 (en) * 2016-04-28 2018-07-03 International Business Machines Corporation Dynamic tracing using ranking and rating
CN106383759A (zh) * 2016-08-31 2017-02-08 福建联迪商用设备有限公司 一种便于跟踪和定位支付终端故障的方法及装置
CN107992407A (zh) * 2017-11-15 2018-05-04 烽火通信科技股份有限公司 使用u盘对安卓终端设备调试的系统及方法
CN108388496A (zh) * 2018-01-23 2018-08-10 晶晨半导体(上海)股份有限公司 一种系统日志的收集方法
CN110764962B (zh) * 2018-07-26 2024-02-20 杭州海康存储科技有限公司 日志处理方法和装置
CN112416733B (zh) * 2019-08-20 2023-12-29 深圳市优必选科技股份有限公司 一种内存检测方法、内存检测装置及智能设备
CN110716845B (zh) * 2019-09-29 2024-03-12 上海龙旗科技股份有限公司 一种Android系统的日志信息读取的方法
CN110740366A (zh) * 2019-10-12 2020-01-31 深圳创维-Rgb电子有限公司 通过外部存储介质自动维修电视的方法、装置和存储介质
CN112000405A (zh) * 2020-07-29 2020-11-27 深圳市智微智能软件开发有限公司 一种便捷获取系统日志的方法、设备和存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101216800A (zh) * 2008-01-02 2008-07-09 中兴通讯股份有限公司 一种linux日志的管理装置及方法
JP2012022380A (ja) * 2010-07-12 2012-02-02 Kddi Corp ログ抽出システムおよびプログラム
CN107547943A (zh) * 2016-06-23 2018-01-05 中兴通讯股份有限公司 一种日志文件自动导出方法和机顶盒
CN106155875A (zh) * 2016-06-29 2016-11-23 北京小米移动软件有限公司 一种导出系统日志的方法和装置
CN106815128A (zh) * 2016-12-11 2017-06-09 乐视控股(北京)有限公司 日志输出方法及装置、电子设备

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019144670A1 (zh) * 2018-01-23 2019-08-01 晶晨半导体(上海)股份有限公司 一种系统日志的收集方法
CN109388538A (zh) * 2018-09-13 2019-02-26 西安交通大学 一种基于内核的文件操作行为监控方法及装置
CN109388538B (zh) * 2018-09-13 2020-12-08 西安交通大学 一种基于内核的文件操作行为监控方法及装置
CN111061589A (zh) * 2019-12-18 2020-04-24 广东小天才科技有限公司 Android设备的日志收集方法、装置及存储介质
CN111274059A (zh) * 2020-01-21 2020-06-12 浙江大华技术股份有限公司 一种从设备的软件异常处理方法及装置
CN111274059B (zh) * 2020-01-21 2023-10-10 浙江大华技术股份有限公司 一种从设备的软件异常处理方法及装置
CN111708688A (zh) * 2020-06-19 2020-09-25 广东小天才科技有限公司 一种协助分析关机充电异常的方法和装置

Also Published As

Publication number Publication date
WO2019144670A1 (zh) 2019-08-01
US11520681B2 (en) 2022-12-06
US20200301811A1 (en) 2020-09-24

Similar Documents

Publication Publication Date Title
CN108388496A (zh) 一种系统日志的收集方法
CN109240886B (zh) 异常处理方法、装置、计算机设备以及存储介质
CN108279922A (zh) 差分文件生成方法、基于该差分文件的升级方法及系统
CN102591696A (zh) 一种手机软件行为数据提取方法及系统
CN104102878A (zh) 一种Linux平台下的恶意代码分析方法及系统
CN105391985A (zh) 一种基于嵌入式Linux的视频监控系统与方法
CN106598796A (zh) 一种测试reboot时硬件信息稳定性的方法
CN103577310A (zh) 记录软件调试日志的方法以及装置
CN109144834B (zh) 用户行为数据的采集方法及装置、安卓系统及终端设备
CN104778222A (zh) 基于usb存储设备的媒体库建立及更新方法
CN107894935B (zh) Ops电脑模块检测处理方法、装置以及电子设备
WO2017219872A1 (zh) 机顶盒的升级、换台方法及系统
CN105893221B (zh) 终端运行时长的告警方法及装置
CN116361106B (zh) 一种日志处理方法、装置、电子设备及存储介质
CN101369238A (zh) Usb设备中异常监控复位处理方法
CN107665157A (zh) 一种提高无盘速度体验的方法
CN113900893B (zh) 一种日志获取方法及其相关设备
US11977636B2 (en) Storage transaction log
CN115828262A (zh) 开源组件漏洞扫描方法、装置、设备及存储介质
CN104331359A (zh) 异常信息的记录方法和装置
CN108363607A (zh) 一种云平台虚拟机的虚拟链路断电恢复方法
CN114286082A (zh) 一种电厂摄像头异常检测系统、电子设备及存储介质
CN101102432A (zh) 记录数字电视运行过程的方法
CN107168815A (zh) 一种收集硬件错误信息的方法
CN110262856B (zh) 一种应用程序数据采集方法、装置、终端及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180810