解决方法: 使用日志记录库(如log4j、logback等),可以配置不同级别的日志记录到不同的位置。
以下是一个使用log4j的示例:
log4j
log4j
1.2.17
# 配置根日志级别为INFO,并输出到控制台和文件中
log4j.rootLogger=INFO, console, file
# 控制台输出
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.Target=System.out
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} [%p] %m%n
# 文件输出
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=/path/to/log/file.log
log4j.appender.file.MaxFileSize=10MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} [%p] %m%n
# 配置特定包的日志级别为DEBUG,并输出到特定文件中
log4j.logger.com.example.package=DEBUG, packageFile
log4j.appender.packageFile=org.apache.log4j.RollingFileAppender
log4j.appender.packageFile.File=/path/to/package/file.log
log4j.appender.packageFile.MaxFileSize=10MB
log4j.appender.packageFile.MaxBackupIndex=10
log4j.appender.packageFile.layout=org.apache.log4j.PatternLayout
log4j.appender.packageFile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} [%p] %m%n
import org.apache.log4j.Logger;
public class MyClass {
private static final Logger logger = Logger.getLogger(MyClass.class);
public void doSomething() {
logger.debug("Debug message");
logger.info("Info message");
logger.warn("Warn message");
logger.error("Error message");
}
}
以上示例中,根日志级别为INFO,会将日志输出到控制台和文件中。而特定包(com.example.package)的日志级别为DEBUG,会将日志输出到特定的文件中。
这样就实现了不同级别的日志记录到不同位置的功能。
上一篇:不同级别的列合并两个数据框
下一篇:不同级别用户登录的问题