Enable debug logs only for debug builds on server
Print the logs only if their level is not under the threshold, which is defined to INFO in release mode and DEBUG in debug mode.
This commit is contained in:
parent
ad41bacb48
commit
a5b6c6cc2d
1 changed files with 30 additions and 9 deletions
|
@ -10,28 +10,49 @@ public final class Ln {
|
|||
|
||||
private static final String TAG = "scrcpy";
|
||||
|
||||
enum Level {
|
||||
DEBUG,
|
||||
INFO,
|
||||
WARN,
|
||||
ERROR;
|
||||
}
|
||||
|
||||
private static final Level THRESHOLD = BuildConfig.DEBUG ? Level.DEBUG : Level.INFO;
|
||||
|
||||
private Ln() {
|
||||
// not instantiable
|
||||
}
|
||||
|
||||
public static boolean isEnabled(Level level) {
|
||||
return level.ordinal() >= THRESHOLD.ordinal();
|
||||
}
|
||||
|
||||
public static void d(String message) {
|
||||
Log.d(TAG, message);
|
||||
System.out.println("DEBUG: " + message);
|
||||
if (isEnabled(Level.DEBUG)) {
|
||||
Log.d(TAG, message);
|
||||
System.out.println("DEBUG: " + message);
|
||||
}
|
||||
}
|
||||
|
||||
public static void i(String message) {
|
||||
Log.i(TAG, message);
|
||||
System.out.println("INFO: " + message);
|
||||
if (isEnabled(Level.INFO)) {
|
||||
Log.i(TAG, message);
|
||||
System.out.println("INFO: " + message);
|
||||
}
|
||||
}
|
||||
|
||||
public static void w(String message) {
|
||||
Log.w(TAG, message);
|
||||
System.out.println("WARN: " + message);
|
||||
if (isEnabled(Level.WARN)) {
|
||||
Log.w(TAG, message);
|
||||
System.out.println("WARN: " + message);
|
||||
}
|
||||
}
|
||||
|
||||
public static void e(String message, Throwable throwable) {
|
||||
Log.e(TAG, message, throwable);
|
||||
System.out.println("ERROR: " + message);
|
||||
throwable.printStackTrace();
|
||||
if (isEnabled(Level.ERROR)) {
|
||||
Log.e(TAG, message, throwable);
|
||||
System.out.println("ERROR: " + message);
|
||||
throwable.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue