Chinaunix首页 | 论坛 | 博客
  • 博客访问: 218830
  • 博文数量: 112
  • 博客积分: 275
  • 博客等级: 二等列兵
  • 技术积分: 565
  • 用 户 组: 普通用户
  • 注册时间: 2011-12-20 10:52
文章分类

全部博文(112)

文章存档

2014年(3)

2013年(2)

2012年(64)

2011年(43)

分类:

2011-12-20 11:19:12

原文地址:Android中Log机制详解 作者:hyouyan

Android中Log的输出有如下几种:

Log.v(String tag, String msg);        //VERBOSE
Log.d(String tag, String msg);       //DEBUG
Log.i(String tag, String msg);        //INFO
Log.w(String tag, String msg);     //WARN
Log.e(String tag, String msg);      //ERROR

以上log的级别依次升高,VERBOSE DEBUG信息应当只存在于开发中,INFO,WARN,ERROR这三种log将出现在发布版本中。

对于JAVA类中,可以声明一个字符串常量TAG,Logcat可以根据他来区分不同的log,例如在WindowsManagerService.java的类中,定义如下所示:
static final Sting TAG = "WindowManager"
需要打log的地方
Log.v(TAG, "Figuring out where to add app window" + client.asBinder() + "(token=" + token + ")");

logcat使用方法如下所示:

logcat [options] [filterspecs]
option "-s" 用来设置过滤器,格式是这样的 [:priority]
其中 表示log的component, tag (或者使用 * 表示所有) ,priority如下所示:
V Verbose
D Debug
I Info
W Warn
E Error
F Fatal
S Silent

例:
logcat -s *:s  不打任何log
logcat -s WindowMnager:V   <-- 打印WindowManagerService 中 Verbose 信息
如果在eclipse中查看Android log 输出,也就是logcat信息,可以 选择Windows > Show View > Other... > Android > LogCat。


logcat的参数说明:
Usage: logcat [options] [filterspecs] 
options include: 
  -s              Set default filter to silent. 
                  Like specifying filterspec '*:s' 
  -f    Log to file. Default to stdout 
  -r []   Rotate log every kbytes. (16 if unspecified). Requires -f 
  -n       Sets max number of rotated logs to , default 4 
  -v      Sets the log print format, where is one of: 
 
                  brief process tag thread raw time long 
 
  -c              clear (flush) the entire log and exit 
  -d              dump the log and then exit (don't block) 
  -g              get the size of the log's ring buffer and exit 
  -b      request alternate ring buffer, defaults to 'main' 
filterspecs are a series of 
  [:priority] 
 
where is a log component tag (or * for all) and priority is: 
  V    Verbose 
  D    Debug 
  I    Info 
  W    Warn 
  E    Error 
  F    Fatal 
  S    Silent (supress all output) 
 
'*' means '*:d' and by itself means :v 
 
If not specified on the commandline, filterspec is set from ANDROID_LOG_TAG 
If no filterspec is found, filter defaults to '*:I' 
 
If not specified with -v, format is set from ANDROID_PRINTF_LOG 
or defaults to "brief"
阅读(210) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~