He registrado todas mis transacciones de aplicaciones usando Log4net. ¿Hay alguna forma de que pueda deshabilitar y habilitar el registro desde un lugar común sin alterar el código escrito para el registro?Cómo activar/desactivar el registro usando Log4net
Respuesta
Supongo que desea alternar el registro en la aplicación en ejecución a través del código. No he intentado, pero creo que llamar al siguiente método debe deshabilitar el registro:
LogManager.GetRepository().ResetConfiguration();
Para volver a habilitar el registro que llamarían
XmlConfigurator.Configure();
(o uno de los otros métodos de la XmlConfigurator
) .
Sin embargo parece haber un issue llamando al método Configure
repetidamente. No sé si esto sería un problema para usted, pero al menos le advertí ...
+1 A diferencia de las otras respuestas, esta cierra los archivos que el registrador mantiene abiertos. –
Esto me ayudó ... – Pritam
Puede desactivarlos cambiando el archivo de configuración de log4net. Cambia específicamente el nivel del appender o nivel global al valor "OFF". Ver para más detalles here
Los niveles de registro se definen en el registrador, no en el apilador. Los appenders pueden usar filtros de nivel. También puede ser que un registrador de raíz tenga el nivel APAGADO pero un registrador hijo aún registra algo. –
Sí, claro, pero la idea sigue siendo hacerlo a través de un archivo de configuración, no de código. – Kamarey
Lo suficientemente justo. Sin embargo, tengo la impresión de que esto no es lo que el OP está pidiendo ... –
Suponiendo entiendo su pregunta, a partir de las preguntas más frecuentes: http://logging.apache.org/log4net/release/faq.html
¿Cómo se desactiva por completo todo el registro en tiempo de ejecución?
Al establecer el Umbral en la jerarquía en el nivel DESACTIVADO se deshabilitará todo el registro de esa Jerarquía. Esto se puede hacer en el archivo de configuración de log4net configurando el atributo "threshold" en el elemento de configuración de log4net en "OFF". Por ejemplo:
- 1. Registro Log4net y Unity
- 2. Logging InnerException usando Log4Net
- 3. Log4Net configurando el nivel de registro
- 4. Log4Net/C# - Deshabilitar el registro predeterminado
- 5. Eliminar el registro duplicado en log4net
- 6. ¿Cómo registro un IObjectRenderer personalizado en log4net?
- 7. Cómo habilitar el registro de la dirección IP con Log4Net
- 8. ¿Cómo agregar una línea en blanco en el archivo de registro usando log4net?
- 9. ¿Log4Net puede eliminar archivos de registro automáticamente?
- 10. ¿Cambiar el nivel de registro mediante programación en log4net?
- 11. Redirigir el registro de log4net en el directorio de usuario
- 12. Log4net EventLogAppender No de registro para registro personalizado Evento
- 13. ¿Dónde creará log4net este archivo de registro?
- 14. log4net logging no creando el archivo de registro
- 15. Get log4net archivo de registro en C#
- 16. log4net registro centralizado para múltiples componentes
- 17. Log4Net o Bloque de aplicación de registro
- 18. ¿Cómo puedo incluir SessionID en archivos de registro usando log4net en ASP.NET?
- 19. Vs2010 usando log4net con Intellisense
- 20. ¿Qué otras alternativas existen para el registro log4net?
- 21. Cambiar el nivel de registro de log4net programáticamente
- 22. ¿Cómo usar log4net como mecanismo de registro para SSIS?
- 23. Cómo registrar el seguimiento de la pila usando log4net (C#)
- 24. Cómo cifrar los archivos de registro de log4net
- 25. Usando StructureMap con la envoltura log4net
- 26. Cómo usar el registro continuo usando log4c?
- 27. Configuración de un registro de eventos personalizado para log4net
- 28. Uso de otros niveles de registro log4net que los habituales
- 29. Registrar todas las excepciones en la aplicación .NET usando log4net
- 30. Log4Net performance
¿Se refiere a como en la aplicación.config? – Mark
a través de web.config – saknet