package com.ectrip.cyt.utils; import android.text.TextUtils; import android.util.Log; import com.ectrip.cyt.exceptionsave.debug.ConfigureLog4J; import org.apache.log4j.Logger; import java.io.ByteArrayOutputStream; import java.io.PrintStream; /** * Log统一管理类 */ public class LogUtil { public static boolean isDebug = true;// 是否需要打印bug,可以在application的onCreate函数里面初始化 private static final String TAG = "MyAndroid"; private static boolean isConfigured = false; // 下面四个是默认tag的函数 public static void d(String tag, String message) { if (isDebug) { Logger LOGGER = getLogger(tag); LOGGER.debug(message); } } public static void d(String tag, String message, Throwable exception) { if (isDebug) { Logger LOGGER = getLogger(tag); LOGGER.debug(message, exception); } } public static void i(String tag, String message) { if (isDebug) { Logger LOGGER = getLogger(tag); LOGGER.info(message); } } public static void i(String tag, String message, Throwable exception) { if (isDebug) { Logger LOGGER = getLogger(tag); LOGGER.info(message, exception); } } public static void w(String tag, String message) { if (isDebug) { Logger LOGGER = getLogger(tag); LOGGER.warn(message); } } public static void w(String tag, String message, Throwable exception) { if (isDebug) { Logger LOGGER = getLogger(tag); LOGGER.warn(message, exception); } } public static void e(String tag, String message) { if (isDebug) { Logger LOGGER = getLogger(tag); LOGGER.error(message); } } public static void e(String tag, String message, Throwable exception) { if (isDebug) { Logger LOGGER = getLogger(tag); LOGGER.error(message, exception); } } private static Logger getLogger(String tag) { if (!isConfigured) { ConfigureLog4J configureLog4J = new ConfigureLog4J(); configureLog4J.configure(); isConfigured = true; } Logger logger; if (TextUtils.isEmpty(tag)) { logger = Logger.getRootLogger(); } else { logger = Logger.getLogger(tag); } return logger; } public static String getExMsg(Exception e) { e.printStackTrace(); ByteArrayOutputStream baos = new ByteArrayOutputStream(); e.printStackTrace(new PrintStream(baos)); String exception = baos.toString(); return exception; } }