sen Bahar kullanarak olduğundan kullanabilirsiniz:
public class LogbackConfigurator implements ApplicationListener<ContextRefreshedEvent>
{
// configure your configuration file here
private static final String LOGBACK_CONFIGURATION = "some/where/application.properties";
@Override
public void onApplicationEvent(ContextRefreshedEvent event)
{
LoggerContext loggerContext = (LoggerContext) LoggerFactory.getILoggerFactory();
try
{
// creating JoranConfigurator
JoranConfigurator joranConfigurator = new JoranConfigurator();
// setting logger context for JoranConfiguratior
joranConfigurator.setContext(loggerContext);
// resetting context, override default configuration
loggerContext.reset();
// configuring Logback with resource
joranConfigurator.doConfigure(new Resource(LOGBACK_CONFIGURATION).getInputStream());
}
catch (Exception exception)
{
// exception handling
}
}
}
fasulye idam etmek, bizim Java yapılandırmasında bu satırı eklendi Geri Bildirim Ver Daha fazla bilgi için aşağıdaki bağlantılardan birini kullanın: logback-ext-spring
Bu kitaplık temel olarak, bahar günlüğüne erişmenizi sağlayan yaylı geçişli nesnelere gerçek günlüğe kaydetme yetkisi verme olanağı sağlar. Environment
değişkenlerine ve dolayısıyla application.properties
'a erişebileceğiniz Spring konfigürasyonunda ekleyiciler oluşturabilir ve yapılandırabilirsiniz.
Sen GitHub sayfasında daha fazla bilgi bulabilirsiniz ama burada konsol appender için desen ortam özelliği
"consolePattern"
alınır bağlantı, sağlanan örnek dayalı bir örnek yapılandırma olabilir
:
logback .xml:
<configuration>
<appender name="consoleAppender" class="ch.qos.logback.ext.spring.DelegatingLogbackAppender"/>
<root level="INFO">
<appender-ref ref="consoleAppender"/>
</root>
</configuration>
LogbackConfig.java:
import ch.qos.logback.classic.LoggerContext;
import ch.qos.logback.classic.encoder.PatternLayoutEncoder;
import ch.qos.logback.core.ConsoleAppender;
import ch.qos.logback.ext.spring.ApplicationContextHolder;
import org.slf4j.LoggerFactory;
import org.springframework.core.env.Environment;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class LogbackConfig {
@Autowired
private Environment environment;
@Bean
public static ApplicationContextHolder applicationContextHolder() {
return new ApplicationContextHolder();
}
@Bean
public static LoggerContext loggerContext() {
return (LoggerContext) LoggerFactory.getILoggerFactory();
}
@Bean (initMethod = "start", destroyMethod = "stop")
public static PatternLayoutEncoder encoder (LoggerContext ctx) {
PatternLayoutEncoder encoder = new PatternLayoutEncoder();
encoder.setContext(ctx);
encoder.setPattern(environment.getProperty("consolePattern");
return encoder;
}
@Bean (initMethod = "start", destroyMethod = "stop")
public static ConsoleAppender consoleAppender (LoggerContext ctx, PatternLayoutEncoder encoder) {
ConsoleAppender appender = new ConsoleAppender();
appender.setContext(ctx);
appender.setEncoder(encoder);
return appender;
}
}
Important
Please note that the spring bean name must match the name of the appender in the logback.xml
, in the example "consoleAppender"
. Also don't forget to specify the initMethod
and destroyMethod
.
Bu, yolu sabitlememenin yolunu bulmanıza yardımcı olur.Eğer Uygulamayı çalıştırmak için bahar çizme kullanıyorsanız,
Sorgumun açık olmasaydı, ancak ortamlar arasında farklılık gösteren bir çift değerle birlikte bir oturum açma yapılandırma dosyasına sahip olmak isterdim. – javafan