Java 内部类中的Logback记录器
我有外部Java 内部类中的Logback记录器,java,react-native,logging,logback,inner-classes,Java,React Native,Logging,Logback,Inner Classes,我有外部公共类分类器模块和内部公共类分类器模块。在外部类中实现的记录器工作良好。但当我试图在内部类中实现它时,它根本不起作用。我的意思是,没有错误,但是logback不会创建日志 如何在内部类中实现记录器?(到目前为止,我已经知道它应该是非ststic的) 这是我的密码: //outer class public class ClassifierModule extends ReactContextBaseJavaModule implements BufferListener { p
公共类分类器模块
和内部公共类分类器模块
。在外部类中实现的记录器工作良好。但当我试图在内部类中实现它时,它根本不起作用。我的意思是,没有错误,但是logback不会创建日志
如何在内部类中实现记录器?(到目前为止,我已经知道它应该是非ststic的)
这是我的密码:
//outer class
public class ClassifierModule extends ReactContextBaseJavaModule implements BufferListener {
public ClassifierModule(ReactApplicationContext reactContext) {
super(reactContext);
appState = ((MainApplication)reactContext.getApplicationContext());
}
@Override
public String getName() {
return "Classifier";
}
@ReactMethod
public void saveLog() {
logger.info("Hello world");
}
//inner class
public class ClassifierRunnable implements Runnable {
public ClassifierRunnable(double[][] buffer) {
rawBuffer = buffer;
PSD = new double[NUM_CHANNELS][nbBins];
}
private final Logger logger = LoggerFactory.getLogger(ClassifierRunnable.class);
@Override
public void run() {
if(isLogging) {
int a = 11;
int b = 24;
logger.info(a)
}
}
}
My logback.xml的配置如下:
<configuration>
<!-- Create a file appender for a log in the application's data directory -->
<appender name="file" class="ch.qos.logback.core.FileAppender">
<file>/data/data/com.eeg_project/files/log/eegdata.log</file>
<encoder>
<pattern>%d{HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<!-- Write INFO (and higher-level) messages to the log file -->
<root level="INFO">
<appender-ref ref="file" />
</root>
</configuration>
/data/data/com.eeg_project/files/log/eegdata.log
%d{HH:mm:ss}[%thread]-5级别%logger{36}-%msg%n
如果要为内部类添加日志级别,需要将以下配置添加到logback.xml文件中。这对我有用
因为它是一个内部类,所以需要使用$sign将它与父类分开
<logger name="packagename.ClassifierModule$ClassifierRunnable " level="INFO" additivity="false">
<appender-ref ref="file" />
</logger>
希望这对您的配置有所帮助。谢谢您可以在代码中添加您如何实际初始化这些记录器的代码吗?这将转到类
private final static Logger Logger Logger=LoggerFactory.getLogger(name of class.class)当我想在日志中写东西时,我在方法中使用:logger.info(“Hello world”)代码>在问题中的代码中?您调用[LOG],但在何处初始化此[LOG]?在示例类的内部/外部类中看不到init?更新了我的问题。我想在日志中写入的内部类中有inta
和intb
?此外,您初始化记录器
,但调用日志
?
<logger name="packagename.ClassifierModule$ClassifierRunnable " level="INFO" additivity="false">
<appender-ref ref="file" />
</logger>