Sé que hay una operación reloadDefaultConfiguration() jmx, pero sin obtener una instancia de MBean e invocar esta operación, hay una aplicación Logback para volver a cargar la configuración predeterminada (opcionalmente se especifica una configuración de registro ruta de archivo)?¿Cómo puedo programar Logback para volver a cargar la configuración
14
A
Respuesta
11
Este es el código fuente de JMXConfigurator.reloadDefaultConfiguration()
:
public void reloadDefaultConfiguration() throws JoranException {
ContextInitializer ci = new ContextInitializer(loggerContext);
URL url = ci.findURLOfDefaultConfigurationFile(true);
loggerContext.reset();
ci.configureByResource(url);
}
¿Qué pasa con solo ejecutar este código siempre que lo necesite?
El único problema es la variable loggerContext
. Puede obtenerlo usando:
(LoggerContext)LoggerFactory.getILoggerFactory()
Por desgracia, no se ve como hay API bien factorizada de hacer esto, ¿qué pasa levantando una issue? Además, ¿sabe que Logback tiene una función integrada de refresco automático?
12
He utilizado el siguiente código para este propósito:
public static void reloadLogger() {
LoggerContext loggerContext = (LoggerContext) LoggerFactory.getILoggerFactory();
ContextInitializer ci = new ContextInitializer(loggerContext);
URL url = ci.findURLOfDefaultConfigurationFile(true);
try {
JoranConfigurator configurator = new JoranConfigurator();
configurator.setContext(loggerContext);
loggerContext.reset();
configurator.doConfigure(url);
} catch (JoranException je) {
// StatusPrinter will handle this
}
StatusPrinter.printInCaseOfErrorsOrWarnings(loggerContext);
}
+0
Esto no maneja configurando logback usando un archivo .groovy ... throws 'org.xml.sax.SAXParseException' – JohnTheBeloved
Cuestiones relacionadas
- 1. ¿Puedo usar la configuración de Log4j.xml para SLF4J y Logback?
- 2. ¿Cómo volver a cargar TreeStore?
- 3. ¿Cómo volver a cargar gdbinit?
- 4. ¿Cómo volver a cargar un div sin volver a cargar toda la página?
- 5. ¿Cómo puedo volver a cargar un script en IRB?
- 6. Cambiar la configuración regional: ¿se fuerza la actividad para volver a cargar los recursos?
- 7. ¿Cómo puedo actualizar o volver a cargar el JFrame?
- 8. ¿Cómo volver a cargar una propiedad de configuración creada dinámicamente la próxima vez?
- 9. FileNamePattern en RollingFileAppender - logback Configuración
- 10. JavaScript para volver a cargar la página como solicitud GET
- 11. ¿Volver a cargar hojas de estilo CSS sin volver a cargar la página?
- 12. ¿Cómo puedo volver a cargar fácilmente el código de ceceo de Emacs cuando lo estoy editando?
- 13. ¿Alguien sabe cómo volver a cargar la configuración de Hudson sin reiniciar?
- 14. Obligar a ConfigurationManager a volver a cargar todas las secciones
- 15. Volver a cargar la ventana primaria desde la ventana secundaria
- 16. ¿Cómo forzo a ActiveRecord a volver a cargar una clase?
- 17. Configuración de Emacs para programar Erlang
- 18. Tell eclipse para volver a cargar variables de entorno
- 19. ¿Cómo puedo obtener una "def" para no volver a cargar en clojure?
- 20. ¿Cómo forzar a un script a volver a cargar y volver a ejecutar?
- 21. cómo volver a cargar solo scripts a través de firebug
- 22. ¿Volver a cargar una sola fila jqGrid?
- 23. ¿Cómo puedo programar a la defensiva en Ruby?
- 24. reiniciar (o volver a cargar la configuración de) Eclipse-CS mediante programación
- 25. ¿Volver a cargar rubygems en irb?
- 26. Actualizar/volver a cargar Flot en Javascript
- 27. ¿Cómo puedo volver a cargar la página actual en Ruby on Rails?
- 28. actualizar o volver a cargar la tabla de datos
- 29. cambio de log4j a logback
- 30. Programar la máquina para reactivar
Sí, pensado en utilizar la función de auto-refrescante, pero las costuras un poco de miedo a activarlo en otra cosa que no sea mi entorno de desarrollo – Yony