[英]set logger level dynamically
我需要動態設置Pentaho水壺作業的日志記錄級別。 就像將級別設置為INFO,ERROR等。我需要從屬性文件中獲取級別
Properties prop = new Properties();
InputStream input = null;
input = new FileInputStream("D:\\config.properties");
prop.load(input);
System.out.println(prop.getProperty("logLevel"));
job.setLogLevel((LogLevel) prop.getProperty("logLevel"));
我不能這樣設置,因為prop.getProperty是字符串。 不能將其強制轉換為LogLevel
如何動態獲取此級別?
我不知道您正在使用的庫,但這可以正常工作:
LogLevel ll = null;
switch (prop.getProperty("logLevel")) {
case "info" : ll = LogLevel.INFO; break;
case "debug" : ll = LogLevel.DEBUG; break;
case "warn" : ll = LogLevel.WARN; break;
default : ll = LogLevel.ERROR; break;
}
job.setLogLevel(ll);
對於不同的日志庫,實現可能有所不同。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.