8

logdog - a colorized Android logcat

 3 years ago
source link: https://zserge.com/posts/logdog/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

logdog - a colorized Android logcat

Sometimes I do Android development. I never liked using debuggers, neither I use IDE. So my choice is to write Android apps with Vim+Terminal. With the lack of debugger I have to use logcat frequently, and using plain adb logcat (even with grepping output) is far from being pleasant.

Then I found there are nicer alternatives, like coloredlogcat or proclogcat. I tried them, but they lacked other output formats, like “time”. So I started writing my own one, which I successfully use in the last few months. It’s written in Python and seems to be the smallest logcat post-processor (it’s only about 100 LOC in a single file).

It supports “brief”, “time” and “raw” output formats and allows to filter output by one or several applications.

Here are some usage samples:

Show messages from phone app with timestamps:
$ logdog -v time com.andorid.phone

Show messages from app1 and app2:
$ logdog com.example.app1 com.example.app2

Show messages from all apps in raw format:
$ logdog -v raw

I also use bash/zsh snippets to autocomplete android process names:

#
# .zshrc
#
_logdog() {
    local tag="${words[$CURRENT]}"
    compadd $(adb shell ps | tr -d '\r' | awk -v tag=" $tag" '$0 ~ tag { print $9 }')
}
compdef _logdog logdog

#
# .bashrc
#
_logdog() {
    local tag=${COMP_WORDS[COMP_CWORD]}
    procs="$(adb shell pm list packages $tag | sed -e 's/package://')"
    COMPREPLY=($(compgen -W "$procs" -- $tag))
}
complete -o default -o nospace -F _logdog logdog

And here’s how logdog looks in my terminal:

logdog

You can download logdog on the bitbucket page. Open source, MIT-licensed, as usual.

I hope you’ve enjoyed this article. You can follow – and contribute to – on Github, Twitter or subscribe via rss.

May 20, 2013


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK