mirror of
https://github.com/alibaba/testable-mock.git
synced 2025-02-13 21:31:08 +08:00
simplify log level config
This commit is contained in:
parent
844323af3a
commit
f5475aa18e
@ -26,8 +26,7 @@ public class DiagnoseUtil {
|
||||
private static void setupDiagnose(AnnotationNode an, String fieldDiagnose) {
|
||||
LogLevel level = AnnotationUtil.getAnnotationParameter(an, fieldDiagnose, null, LogLevel.class);
|
||||
if (level != null) {
|
||||
LogUtil.setLevel(level == LogLevel.ENABLE ? LogUtil.LogLevel.LEVEL_DIAGNOSE :
|
||||
(level == LogLevel.VERBOSE ? LogUtil.LogLevel.LEVEL_VERBOSE : LogUtil.LogLevel.LEVEL_MUTE));
|
||||
LogUtil.setLevel(level);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,5 +1,6 @@
|
||||
package com.alibaba.testable.agent.util;
|
||||
|
||||
import com.alibaba.testable.core.model.LogLevel;
|
||||
import com.alibaba.testable.core.model.MockScope;
|
||||
import com.alibaba.testable.core.util.LogUtil;
|
||||
|
||||
@ -20,13 +21,13 @@ public class GlobalConfig {
|
||||
|
||||
public static boolean setLogLevel(String level) {
|
||||
if (level.equals(MUTE)) {
|
||||
LogUtil.setDefaultLevel(LogUtil.LogLevel.LEVEL_MUTE);
|
||||
LogUtil.setDefaultLevel(LogLevel.DISABLE);
|
||||
return true;
|
||||
} else if (level.equals(DEBUG)) {
|
||||
LogUtil.setDefaultLevel(LogUtil.LogLevel.LEVEL_DIAGNOSE);
|
||||
LogUtil.setDefaultLevel(LogLevel.ENABLE);
|
||||
return true;
|
||||
} else if (level.equals(VERBOSE)) {
|
||||
LogUtil.setDefaultLevel(LogUtil.LogLevel.LEVEL_VERBOSE);
|
||||
LogUtil.setDefaultLevel(LogLevel.VERBOSE);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
|
@ -3,22 +3,26 @@ package com.alibaba.testable.core.model;
|
||||
/**
|
||||
* @author flin
|
||||
*/
|
||||
|
||||
public enum LogLevel {
|
||||
|
||||
/**
|
||||
* Be quiet
|
||||
* Mute
|
||||
*/
|
||||
DISABLE,
|
||||
|
||||
DISABLE(0),
|
||||
/**
|
||||
* Print diagnose logs
|
||||
* Warn only
|
||||
*/
|
||||
ENABLE,
|
||||
|
||||
DEFAULT(1),
|
||||
/**
|
||||
* Print verbose log
|
||||
* Show diagnose messages
|
||||
*/
|
||||
VERBOSE
|
||||
ENABLE(2),
|
||||
/**
|
||||
* Show detail progress logs
|
||||
*/
|
||||
VERBOSE(3);
|
||||
|
||||
public int level;
|
||||
LogLevel(int level) {
|
||||
this.level = level;
|
||||
}
|
||||
}
|
||||
|
@ -1,36 +1,14 @@
|
||||
package com.alibaba.testable.core.util;
|
||||
|
||||
import com.alibaba.testable.core.model.LogLevel;
|
||||
|
||||
/**
|
||||
* @author flin
|
||||
*/
|
||||
public class LogUtil {
|
||||
|
||||
public enum LogLevel {
|
||||
/**
|
||||
* Mute
|
||||
*/
|
||||
LEVEL_MUTE(0),
|
||||
/**
|
||||
* Warn only
|
||||
*/
|
||||
LEVEL_WARN(1),
|
||||
/**
|
||||
* Show diagnose messages
|
||||
*/
|
||||
LEVEL_DIAGNOSE(2),
|
||||
/**
|
||||
* Show detail progress logs
|
||||
*/
|
||||
LEVEL_VERBOSE(3);
|
||||
|
||||
int level;
|
||||
LogLevel(int l) {
|
||||
level = l;
|
||||
}
|
||||
}
|
||||
|
||||
private static LogLevel defaultLogLevel = LogLevel.LEVEL_WARN;
|
||||
private static LogLevel currentLogLevel = LogLevel.LEVEL_WARN;
|
||||
private static LogLevel defaultLogLevel = LogLevel.DEFAULT;
|
||||
private static LogLevel currentLogLevel = LogLevel.DEFAULT;
|
||||
|
||||
public static void verbose(String msg, Object... args) {
|
||||
if (isVerboseEnabled()) {
|
||||
@ -39,13 +17,13 @@ public class LogUtil {
|
||||
}
|
||||
|
||||
public static void diagnose(String msg, Object... args) {
|
||||
if (currentLogLevel.level >= LogLevel.LEVEL_DIAGNOSE.level) {
|
||||
if (currentLogLevel.level >= LogLevel.ENABLE.level) {
|
||||
System.out.println(String.format("[DIAGNOSE] " + msg, args));
|
||||
}
|
||||
}
|
||||
|
||||
public static void warn(String msg, Object... args) {
|
||||
if (currentLogLevel.level >= LogLevel.LEVEL_WARN.level) {
|
||||
if (currentLogLevel.level >= LogLevel.DEFAULT.level) {
|
||||
System.err.println(String.format("[WARN] " + msg, args));
|
||||
}
|
||||
}
|
||||
@ -58,7 +36,7 @@ public class LogUtil {
|
||||
* a pre-check method for reduce verbose parameter calculation
|
||||
*/
|
||||
public static boolean isVerboseEnabled() {
|
||||
return currentLogLevel.level >= LogLevel.LEVEL_VERBOSE.level;
|
||||
return currentLogLevel.level >= LogLevel.VERBOSE.level;
|
||||
}
|
||||
|
||||
public static void setLevel(LogLevel level) {
|
||||
|
Loading…
Reference in New Issue
Block a user