diff options
Diffstat (limited to 'src/com/android/messaging/util/LogUtil.java')
-rw-r--r-- | src/com/android/messaging/util/LogUtil.java | 274 |
1 files changed, 0 insertions, 274 deletions
diff --git a/src/com/android/messaging/util/LogUtil.java b/src/com/android/messaging/util/LogUtil.java deleted file mode 100644 index 021f39b..0000000 --- a/src/com/android/messaging/util/LogUtil.java +++ /dev/null @@ -1,274 +0,0 @@ -/* - * Copyright (C) 2015 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.android.messaging.util; - -/** - * Log utility class. - */ -public class LogUtil { - public static final String BUGLE_TAG = "MessagingApp"; - public static final String PROFILE_TAG = "MessagingAppProf"; - public static final String BUGLE_DATABASE_TAG = "MessagingAppDb"; - public static final String BUGLE_DATABASE_PERF_TAG = "MessagingAppDbPerf"; - public static final String BUGLE_DATAMODEL_TAG = "MessagingAppDataModel"; - public static final String BUGLE_IMAGE_TAG = "MessagingAppImage"; - public static final String BUGLE_NOTIFICATIONS_TAG = "MessagingAppNotif"; - public static final String BUGLE_WIDGET_TAG = "MessagingAppWidget"; - - public static final int DEBUG = android.util.Log.DEBUG; - public static final int WARN = android.util.Log.WARN; - public static final int VERBOSE = android.util.Log.VERBOSE; - public static final int INFO = android.util.Log.INFO; - public static final int ERROR = android.util.Log.ERROR; - - // If this is non-null, DEBUG and higher logs will be tracked in-memory. It will not include - // VERBOSE logs. - private static LogSaver sDebugLogSaver; - private static volatile boolean sCaptureDebugLogs; - - /** - * Read Gservices to see if logging should be enabled. - */ - public static void refreshGservices(final BugleGservices gservices) { - sCaptureDebugLogs = gservices.getBoolean( - BugleGservicesKeys.ENABLE_LOG_SAVER, - BugleGservicesKeys.ENABLE_LOG_SAVER_DEFAULT); - if (sCaptureDebugLogs && (sDebugLogSaver == null || !sDebugLogSaver.isCurrent())) { - // We were not capturing logs before. We are now. - sDebugLogSaver = LogSaver.newInstance(); - } else if (!sCaptureDebugLogs && sDebugLogSaver != null) { - // We were capturing logs. We aren't anymore. - sDebugLogSaver = null; - } - } - - // This is called from FactoryImpl once the Gservices class is initialized. - public static void initializeGservices (final BugleGservices gservices) { - gservices.registerForChanges(new Runnable() { - @Override - public void run() { - refreshGservices(gservices); - } - }); - refreshGservices(gservices); - } - - /** - * Send a {@link #VERBOSE} log message. - * @param tag Used to identify the source of a log message. It usually identifies - * the class or activity where the log call occurs. - * @param msg The message you would like logged. - */ - public static void v(final String tag, final String msg) { - println(android.util.Log.VERBOSE, tag, msg); - } - - /** - * Send a {@link #VERBOSE} log message. - * @param tag Used to identify the source of a log message. It usually identifies - * the class or activity where the log call occurs. - * @param msg The message you would like logged. - * @param tr An exception to log - */ - public static void v(final String tag, final String msg, final Throwable tr) { - println(android.util.Log.VERBOSE, tag, msg + '\n' - + android.util.Log.getStackTraceString(tr)); - } - - /** - * Send a {@link #DEBUG} log message. - * @param tag Used to identify the source of a log message. It usually identifies - * the class or activity where the log call occurs. - * @param msg The message you would like logged. - */ - public static void d(final String tag, final String msg) { - println(android.util.Log.DEBUG, tag, msg); - } - - /** - * Send a {@link #DEBUG} log message and log the exception. - * @param tag Used to identify the source of a log message. It usually identifies - * the class or activity where the log call occurs. - * @param msg The message you would like logged. - * @param tr An exception to log - */ - public static void d(final String tag, final String msg, final Throwable tr) { - println(android.util.Log.DEBUG, tag, msg + '\n' - + android.util.Log.getStackTraceString(tr)); - } - - /** - * Send an {@link #INFO} log message. - * @param tag Used to identify the source of a log message. It usually identifies - * the class or activity where the log call occurs. - * @param msg The message you would like logged. - */ - public static void i(final String tag, final String msg) { - println(android.util.Log.INFO, tag, msg); - } - - /** - * Send a {@link #INFO} log message and log the exception. - * @param tag Used to identify the source of a log message. It usually identifies - * the class or activity where the log call occurs. - * @param msg The message you would like logged. - * @param tr An exception to log - */ - public static void i(final String tag, final String msg, final Throwable tr) { - println(android.util.Log.INFO, tag, msg + '\n' - + android.util.Log.getStackTraceString(tr)); - } - - /** - * Send a {@link #WARN} log message. - * @param tag Used to identify the source of a log message. It usually identifies - * the class or activity where the log call occurs. - * @param msg The message you would like logged. - */ - public static void w(final String tag, final String msg) { - println(android.util.Log.WARN, tag, msg); - } - - /** - * Send a {@link #WARN} log message and log the exception. - * @param tag Used to identify the source of a log message. It usually identifies - * the class or activity where the log call occurs. - * @param msg The message you would like logged. - * @param tr An exception to log - */ - public static void w(final String tag, final String msg, final Throwable tr) { - println(android.util.Log.WARN, tag, msg); - println(android.util.Log.WARN, tag, android.util.Log.getStackTraceString(tr)); - } - - /** - * Send an {@link #ERROR} log message. - * @param tag Used to identify the source of a log message. It usually identifies - * the class or activity where the log call occurs. - * @param msg The message you would like logged. - */ - public static void e(final String tag, final String msg) { - println(android.util.Log.ERROR, tag, msg); - } - - /** - * Send a {@link #ERROR} log message and log the exception. - * @param tag Used to identify the source of a log message. It usually identifies - * the class or activity where the log call occurs. - * @param msg The message you would like logged. - * @param tr An exception to log - */ - public static void e(final String tag, final String msg, final Throwable tr) { - println(android.util.Log.ERROR, tag, msg); - println(android.util.Log.ERROR, tag, android.util.Log.getStackTraceString(tr)); - } - - /** - * What a Terrible Failure: Report a condition that should never happen. - * The error will always be logged at level ASSERT with the call stack. - * Depending on system configuration, a report may be added to the - * {@link android.os.DropBoxManager} and/or the process may be terminated - * immediately with an error dialog. - * @param tag Used to identify the source of a log message. - * @param msg The message you would like logged. - */ - public static void wtf(final String tag, final String msg) { - // Make sure this goes into our log buffer - println(android.util.Log.ASSERT, tag, "wtf\n" + msg); - android.util.Log.wtf(tag, msg, new Exception()); - } - - /** - * What a Terrible Failure: Report a condition that should never happen. - * The error will always be logged at level ASSERT with the call stack. - * Depending on system configuration, a report may be added to the - * {@link android.os.DropBoxManager} and/or the process may be terminated - * immediately with an error dialog. - * @param tag Used to identify the source of a log message. - * @param msg The message you would like logged. - * @param tr An exception to log - */ - public static void wtf(final String tag, final String msg, final Throwable tr) { - // Make sure this goes into our log buffer - println(android.util.Log.ASSERT, tag, "wtf\n" + msg + '\n' + - android.util.Log.getStackTraceString(tr)); - android.util.Log.wtf(tag, msg, tr); - } - - /** - * Low-level logging call. - * @param level The priority/type of this log message - * @param tag Used to identify the source of a log message. It usually identifies - * the class or activity where the log call occurs. - * @param msg The message you would like logged. - */ - private static void println(final int level, final String tag, final String msg) { - android.util.Log.println(level, tag, msg); - - LogSaver serviceLog = sDebugLogSaver; - if (serviceLog != null && level >= android.util.Log.DEBUG) { - serviceLog.log(level, tag, msg); - } - } - - /** - * Save logging into LogSaver only, for dumping to bug report - * - * @param level The priority/type of this log message - * @param tag Used to identify the source of a log message. It usually identifies - * the class or activity where the log call occurs. - * @param msg The message you would like logged. - */ - public static void save(final int level, final String tag, final String msg) { - LogSaver serviceLog = sDebugLogSaver; - if (serviceLog != null) { - serviceLog.log(level, tag, msg); - } - } - - /** - * Checks to see whether or not a log for the specified tag is loggable at the specified level. - * See {@link android.util.Log#isLoggable(String, int)} for more discussion. - */ - public static boolean isLoggable(final String tag, final int level) { - return android.util.Log.isLoggable(tag, level); - } - - /** - * Returns text as is if {@value #BUGLE_TAG}'s log level is set to DEBUG or VERBOSE; - * returns "--" otherwise. Useful for log statements where we don't want to log - * various strings (e.g., usernames) with default logging to avoid leaking PII in logcat. - */ - public static String sanitizePII(final String text) { - if (text == null) { - return null; - } - - if (android.util.Log.isLoggable(BUGLE_TAG, android.util.Log.DEBUG)) { - return text; - } else { - return "Redacted-" + text.length(); - } - } - - public static void dump(java.io.PrintWriter out) { - final LogSaver logsaver = sDebugLogSaver; - if (logsaver != null) { - logsaver.dump(out); - } - } -} |