package com.monitor.common;
import android.util.Log;
public class LevelLogUtils {
// android.util.Log常用的方法有以下5个:
// Log.v() ,Log.d() ,Log.i() ,Log.w() ,Log.e()
// 按照日志级别从高到低为ERROR, WARN, INFO, DEBUG, VERBOSE.至于日志级别本身的含义.
//
// 下面是对各种日志级别的输出介绍:
//
// 1、Log.v 的输出颜色为黑色的,输出大于或等于VERBOSE日志级别的信息
//
// 2、Log.d的输出颜色是蓝色的,输出大于或等于DEBUG日志级别的信息
//
// 3、Log.i的输出为绿色,输出大于或等于INFO日志级别的信息
//
// 4、Log.w的输出为橙色, 输出大于或等于WARN日志级别的信息
//
// 5、Log.e的输出为红色,仅输出ERROR日志级别的信息.
private static final int VERBOSE = 1;
private static final int DEBUG = 2;
private static final int INFO = 3;
private static final int WARN = 4;
private static final int ERROR = 5;
private static final int NOLOG = 6;
private static final int LEVEL = VERBOSE; // app log's level
private static LevelLogUtils levelLog;
private LevelLogUtils(){
}
public static LevelLogUtils getInstance(){
if (levelLog == null) {
synchronized (LevelLogUtils.class) {
if (levelLog == null) {
levelLog = new LevelLogUtils();
}
}
}
return levelLog;
}
public void v(String tag, String msg) {
if (LEVEL <= VERBOSE) {
Log.v(tag, msg);
}
}
public void d(String tag, String msg) {
if (LEVEL <= DEBUG) {
Log.d(tag, msg);
}
}
public void i(String tag, String msg) {
if (LEVEL <= INFO) {
Log.i(tag, msg);
}
}
public void w(String tag, String msg) {
if (LEVEL <= WARN) {
Log.w(tag, msg);
}
}
public void e(String tag, String msg) {
if (LEVEL <= ERROR) {
Log.e(tag, msg);
}
}
}
修改常量LEVEL的值,可以控制哪些级别的Log被打印出来。
本类是单例模式
public static LevelLogUtils getInstance(){
if (levelLog == null) {
synchronized (LevelLogUtils.class) {
if (levelLog == null) {
levelLog = new LevelLogUtils();
}
}
}
return levelLog;
}
getInstance()方法用了Double-Check Locking