Java JBOSS中的自定义日志
大家好Java JBOSS中的自定义日志,java,jboss,application-server,Java,Jboss,Application Server,大家好 我对记录器有问题。我想登录到自定义文件,但这些文件为空。 有人能帮忙吗? 基本记录器: import org.apache.log4j.FileAppender; import org.apache.log4j.Logger; import org.apache.log4j.PatternLayout; import java.io.File; import java.io.IOException; public class BaseLogger { private Logge
我对记录器有问题。我想登录到自定义文件,但这些文件为空。 有人能帮忙吗?
基本记录器:
import org.apache.log4j.FileAppender;
import org.apache.log4j.Logger;
import org.apache.log4j.PatternLayout;
import java.io.File;
import java.io.IOException;
public class BaseLogger {
private Logger logger;
private BaseLogger(){
}
public BaseLogger(String loggerName) {
this.logger = Logger.getLogger(loggerName);
try {
this.logger.addAppender(createAppender(loggerName + "_APP.LOG"));
} catch (IOException e) {
e.printStackTrace();
}
logger.info("logger init.");
}
public void logInfo(String info){
logger.info(info);
}
public void logInfo(String info, Throwable t){
logger.info(info, t);
}
public void logError(String error) {
logger.error(error);
}
public void logError(String error, Throwable t) {
logger.error(error, t);
}
public void logFatal(String fatal) {
logger.fatal(fatal);
}
public void logFatal(String fatal, Throwable t) {
logger.fatal(fatal, t);
}
private FileAppender createAppender(String fileName) throws IOException {
return new FileAppender(new PatternLayout(), System.getProperty("jboss.server.log.dir") + File.separator + fileName);
}
}
记录器类别:
public class ServicesLogger {
public static final BaseLogger GENERAL_LOGGER = new BaseLogger("GENERAL_LOGGER");
public static final BaseLogger SERVICE_EXECUTOR = new BaseLogger("SERVICE_EXECUTOR");
}
当我调用ServicesLogger.SERVICE_EXECUTOR.logInfo(“info”);在jboss控制台中显示此文本,但在文件中不显示。
问题出在哪里?您只能在代码中添加以下内容:
import org.apache.log4j.Logger;
...
public class SomeClass {
private Logger logger = Logger.getLogger("GENERAL_LOGGER");
...
logger.info("some info");
}
然后将appender添加到服务器配置文件:
<subsystem xmlns="urn:jboss:domain:logging:1.1">
...
<periodic-rotating-file-handler name="GENERAL_LOGGER_handler">
<formatter>
<pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/>
</formatter>
<file relative-to="jboss.server.log.dir" path="GENERAL_LOGGER_APP.LOG"/>
<suffix value=".yyyy-MM-dd"/>
<append value="true"/>
</periodic-rotating-file-handler>
<logger category="GENERAL_LOGGER">
<level name="DEBUG"/>
<handlers>
<handler name="GENERAL_LOGGER_handler"/>
</handlers>
</logger>
...
...
...
您能告诉我它在weblogic app server中是如何工作的吗?