Summary of Linux kernel debugging methods Bugreport

Source: Internet
Author: User
Tags cpu usage

Bugreport

"Use" Android Performance analysis tool, Bugreport records the Android boot process log, the system status after startup, including the process list, memory information, VM information, etc.

"How to use"

Adb bugreport > Bugreport.txt (export bugreport information)

"Log Analysis"

(1) dumpstate

MEMORY INFO

Get the log: Read file/proc/meminfo

System memory Usage Status

CPU INFO

Get the log: Execute/system/bin/top-n 1-d 1-m 30-t

System CPU Usage Status

Procrank

Get the log: Execute/system/bin/procrank

Results of output after executing/system/xbin/procrank, view some memory usage status

VIRTUAL MEMORY STATS

Get the log: Read file/proc/vmstat

Virtual Memory allocation Status

Vmalloc application memory is located between Vmalloc_start~vmalloc_end, there is no simple conversion relationship with physical address, although they are also logically contiguous, but physically they do not require continuous.

Vmalloc INFO

Get the log: Read file/proc/vmallocinfo

Virtual Memory allocation Status

SLAB INFO

Get the log: Read file/proc/slabinfo

Slab is a memory allocator. Here is some information about the output of this allocator

Zoneinfo

Get the log: Read file/proc/zoneinfo

Zone Info

SYSTEM LOG (need to focus on analysis)

Get the log: Execute/system/bin/logcat-v time-d *:v

Outputs the log output in the program to analyze the current state of the system

VM traces

Get the log: Read file/data/anr/traces.txt

Because each program is running in its own VM, this log is some of the traces of the actual VMS

EVENT LOG TAGS

Get the log: Read file/etc/event-log-tags

EVENT LOG

Get the log: Execute/system/bin/logcat-b events-v time-d *:v

Output log of some event

RADIO LOG

Get the log: Execute/system/bin/logcat-b radio-v time-d *:v

Shows the link states of some wireless devices, such as GSM,PHONE,STK (satellite Tool Kit) ...

NETWORK State

Get the log: Execute/system/bin/netcfg (Get network link status)

Get the log: Read file/proc/net/route (get routing status)

Show Network links and routes

SYSTEM PROPERTIES

Get the log: reference code implementation

Displays some system properties, such as version,services,network ...

KERNEL LOG

Get the log: Execute/SYSTEM/BIN/DMESG

Log that shows Android kernel output

KERNEL Wakelocks

Get the log: Read file/proc/wakelocks

Some records of the kernel waking and hibernating some programs and services

KERNEL CPUFREQ

(Linux kernel CPUfreq subsystem) Clock scaling allows the clock speed of the CPUs on the fly.

This was a nice method to save battery power, because the lower the clock speed is and the less power the CPU consumes.

PROCESSES

Get the log: Execute ps-p

Show Current process

PROCESSES and THREADS

Get the log: Execute ps-t-p-p

Show current processes and threads

Librank

Get the log: Execute/system/xbin/librank

Eliminate unnecessary library

BINDER FAILED TRANSACTION LOG

Get the log: Read file/proc/binder/failed_transaction_log

BINDER TRANSACTION LOG

Get the log: Read file/proc/binder/transaction_log

BINDER transactions

Get the log: Read file/proc/binder/transactions

BINDER STATS

Get the log: Read file/proc/binder/stats

BINDER PROCESS State

Get the log: Read file/proc/binder/proc/*

Some states related to bind

Filesystems

Get the log: Execute/SYSTEM/BIN/DF

Some capacity usage status for primary files (Cache,sqlite,dev ...)

Package SETTINGS

Get the log: Read file/data/system/packages.xml

Some of the status of the package in the system (access rights, paths ...), similar to some LNK files in Windows.

Package UID ERRORS

Get the log: Read file/data/system/uiderrors.txt

Error message

KERNEL last Kmsg LOG

Latest Kernel message Log

Last RADIO LOG

Latest Radio Log

KERNEL PANIC CONSOLE LOG

KERNEL PANIC THREADS LOG

Console/thread error messages log

Backlights

Get the log: Get LCD brightness Read/sys/class/leds/lcd-backlight/brightness

Get the log: Get button brightness Read/sys/class/leds/button-backlight/brightness

Get the log: Get keyboard brightness Read/sys/class/leds/keyboard-backlight/brightness

Get the log: Get ALS mode read/sys/class/leds/lcd-backlight/als

Get the log: Get LCD driver Registers read/sys/class/leds/lcd-backlight/registers

Get some information about the relative brightness

(2) Build.prop

VERSION Info outputs the following information

Current time

Current kernel version: can read files (/proc/version) get

Show current command: can read folder (/proc/cmdline) get

Displays some properties of the system build: can read files (/system/build.prop) get

Output system Some properties

Gsm.version.ril-impl

Gsm.version.baseband

Gsm.imei

Gsm.sim.operator.numeric

Gsm.operator.alpha

(3) Dumpsys

This log can be obtained after executing the/system/bin/dumpsys.

It is often found that the log output is incomplete because it requires the tool to execute at most 60ms, which may cause log to not be fully output.

You can ensure that the log is fully output by modifying the time parameters.

Information:

Currently running services

DUMP of SERVICE Services-name (running)

Summary of Linux kernel debugging methods Bugreport

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.