[Android Software Development] majdinj:
AIO LOGCAT MANAGER​

Since android development and logcat is essential part to track problems and errors..

​

The three most important log types are:

logcat: the log output of the Android system

radio logcat: the log output of your System / BB / RIL communication

kernel log (kmsg / dmesg): the kernel messages

Additionally there's the last_kmsg which is a dump of the kernel log until the last shutdown.

The tool I made will make you able to do all of these in very friendly interface, and even you could do more,, So let's see how it is :D

How to use:

It is simple, just run AIO_Logcat_Manager.bat file.. I will explain every feature in next heading.

Walkthrough Features:

Splash screen:

The main screen:

In this main menu, you can choose the type of logcat you want,, All, Error, Fatal, Radio, Kernel... etc

Process logcat filtered by name menu (Option 9):

This is unique in my tool, where you can filter your result logcat for specific process name..

Example:

assume you get this logcat

D/dalvikvm( 871): GC_CONCURRENT freed 472K, 6% free 10224K/10823K, paused 1ms+6ms
V/AmazonAppstore.DiskInspectorServiceImpl( 871): Available blocks: 21981, Block size: 4096, Free: 90034176, Threshold: 5242880, withinThreshold? true
D/AmazonAppstore.UpdateService( 871): Received action: null from intent: Intent { cmp=com.amazon.venezia/com.amazon.mas.client.framework.UpdateService }
W/AmazonAppstore.UpdateService( 871): Confused about why I'm running with this intent action: null from intent: Intent { cmp=com.amazon.venezia/com.amazon.mas.client.framework.UpdateService }
D/dalvikvm( 890): GC_CONCURRENT freed 175K, 4% free 9375K/9671K, paused 2ms+3ms
V/AmazonAppstore.ReferenceCounter( 871): Reference (MASLoggerDB) count has gone to 0. Closing referenced object.
E/WifiStateMachine( 203): Failed to reload STA firmware java.lang.IllegalStateException: Error communicating to native daemon
V/AmazonAppstore.UpdateService( 871): runUpdateCommand doInBackground started.
V/AmazonAppstore.UpdateService( 871): Running UpdateCommand: digitalLocker
V/AmazonAppstore.UpdateCommand( 871): Not updating key: digitalLocker from: 1334228488057
V/AmazonAppstore.UpdateService( 871): Finished UpdateCommand: digitalLocker
V/AmazonAppstore.UpdateService( 871): Running UpdateCommand: serviceConfig
V/AmazonAppstore.MASLoggerDB( 871): performLogMetric: Metric logged: ResponseTimeMetric [fullName=com.amazon.venezia.VeneziaApplication_onCreate, build=release-2.3, date=Wed Apr 11 13:10:55 CDT 2012, count=1, value=1601.0]
V/AmazonAppstore.MASLoggerDB( 871): onBackgroundTaskSucceeded: Metric logged: ResponseTimeMetric [fullName=com.amazon.venezia.VeneziaApplication_onCreate, build=release-2.3, date=Wed Apr 11 13:10:55 CDT 2012, count=1, value=1601.0]
W/CommandListener( 118): Failed to retrieve HW addr for eth0 (No such device)
D/CommandListener( 118): Setting iface cfg
D/NetworkManagementService( 203): rsp
D/NetworkManagementService( 203): flags
E/MediaPlayerService( 203): Unable to change interface settings: java.lang.IllegalStateException: Unable to communicate with native daemon to interface setcfg - com.android.server.NativeDaemonConnectorException: Cmd {interface setcfg eth0 0.0.0.0 0 [down]} failed with code 400 : {Failed to set address (No such device)}
W/PackageParser( 203): Unknown element under : supports-screen at /mnt/asec/com.android.aldiko-1/pkg.apk Binary XML file line #16
D/wpa_supplicant( 930): wpa_supplicant v0.8.x
D/wpa_supplicant( 930): random: Trying to read entropy from /dev/random
D/wpa_supplicant( 930): Initializing interface 'eth0' conf '/data/misc/wifi/wpa_supplicant.conf' driver 'wext' ctrl_interface 'N/A' bridge 'N/A'
D/wpa_supplicant( 930): Configuration file '/data/misc/wifi/wpa_supplicant.conf' -> '/data/misc/wifi/wpa_supplicant.conf'
D/wpa_supplicant( 930): Reading configuration file '/data/misc/wifi/wpa_supplicant.conf'
D/wpa_supplicant( 930): ctrl_interface='eth0'
D/wpa_supplicant( 930): update_config=1
D/wpa_supplicant( 930): Line: 4 - start of a new network block
D/wpa_supplicant( 930): key_mgmt: 0x4

and you want to see MediaPlayerService process logcat only..!!

So here comes the useful feature of this tool, where you can filter the only process you are interested in..

Read Exported logcats (Option 10):

Here you can read all logcats you have exported to the output folder

Kernel logcats (Option 11):

This feature needs from the user to be rooted in order to access kernel logs..!!!

Here you have the ability either to read or to export different kernel log types..

Reading:

Exporting:

How to read your logcat:

Here is a useful thread written by [MENTION=3053298]Stryke_the_Orc[/MENTION] that will help you understanding your logcat files.

http://xdaforums.com/showthread.php?t=2274119

Future ADB engine update:

If ADB engine is outdated, you can download android SDK from official website here and extract adb, AdbWinApi.dll and AdbWinUsbApi.dll from sdk\platform-tools folder and put in AIO_Logcat_Manager\tools folder.

Reporting bugs:

Please feel free reporting any bugs to help to polish upcoming releases :laugh:

Help in development:

If you are developer and you are interested in polishing this work, please go ahead since I KEPT IT OPEN SOURCE, so everyone can participate in development of this tool (just don't forget to give me some credits buddy ;))

Download:

AIO-Logcat-Manager_v1.0 @ 14/June/2013

Change-log:

@ 14/June/2013 (v1.0):

- The first release of AIO logcat manager.

Special Thanks to XDA Portal Team For Featuring This Utility:

http://www.xda-developers.com/android/simplify-logging-with-aio-logcat-manager/