El Python logging module es engorroso de usar. ¿Hay una alternativa más elegante? La integración con las notificaciones de escritorio sería un plus.python logging alternatives
Respuesta
Puede consultar Twiggy, es un intento inicial de crear una alternativa más pitonica al módulo de registro.
¡ja! log -> twig – hoju
Estoy de acuerdo! ¡Decir ah! Me llevó un segundo obtenerlo. – synthesizerpatel
parece muerto ... el último commit fue hace más de un año – Tshepang
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import logging
import logging.handlers
from logging.config import dictConfig
logger = logging.getLogger(__name__)
DEFAULT_LOGGING = {
'version': 1,
'disable_existing_loggers': False,
}
def configure_logging(logfile_path):
"""
Initialize logging defaults for Project.
:param logfile_path: logfile used to the logfile
:type logfile_path: string
This function does:
- Assign INFO and DEBUG level to logger file handler and console handler
"""
dictConfig(DEFAULT_LOGGING)
default_formatter = logging.Formatter(
"[%(asctime)s] [%(levelname)s] [%(name)s] [%(funcName)s():%(lineno)s] [PID:%(process)d TID:%(thread)d] %(message)s",
"%d/%m/%Y %H:%M:%S")
file_handler = logging.handlers.RotatingFileHandler(logfile_path, maxBytes=10485760,backupCount=300, encoding='utf-8')
file_handler.setLevel(logging.INFO)
console_handler = logging.StreamHandler()
console_handler.setLevel(logging.DEBUG)
file_handler.setFormatter(default_formatter)
console_handler.setFormatter(default_formatter)
logging.root.setLevel(logging.DEBUG)
logging.root.addHandler(file_handler)
logging.root.addHandler(console_handler)
[31/10/2015 22:00:33] [DEBUG] [yourmodulename] [yourfunction_name():9] [PID:61314 TID:140735248744448] this is logger infomation from hello module
puede config archivo de registro con la consola y el archivo, no creo Notificaciones por escritorio es una buena idea, se puede ver la información del registro de la consola y los archivos de registro
Es posible que desee echar un vistazo a pysimplelog. Es pitón puro, muy sencillo de utilizar, instalable PIP y ofrece lo que necesita
from pysimplelog import Logger
L=Logger()
print L
>>> Logger (Version 0.2.1)
>>> log type |log name |level |std flag |file flag |
>>> ----------|----------|----------|----------|----------|
>>> debug |DEBUG |0.0 |True |True |
>>> info |INFO |10.0 |True |True |
>>> warn |WARNING |20.0 |True |True |
>>> error |ERROR |30.0 |True |True |
>>> critical |CRITICAL |100.0 |True |True |
L.info('I am an info')
>>> 2016-09-26 15:01:17 - logger <INFO> I am an info
L.warn('I am a warning')
>>> 2016-09-26 15:01:17 - logger <WARNING> I am a warning
L.error('I am an error')
>>> 2016-09-26 15:01:17 - logger <ERROR> I am an error
y con esos parámetros, un archivo 'simplelog.log' se creará y se actualizan automáticamente para usted
+1 ¡Oye, eso se ve genial! Sin embargo, una nota: no recomendaría usar el registro * fuera de una definición de función * antes de que se sepa [si eso es seguro] (https://stackoverflow.com/questions/46356672/). –
- 1. Python Logging setlevel
- 2. window.opener alternatives
- 3. Pickle alternatives
- 4. SVG alternatives?
- 5. java.util.Vector - alternatives
- 6. webistrano alternatives?
- 7. ASP.NET MVC alternatives?
- 8. MPMoviePlayerController alternatives on iPhone?
- 9. MySQL Query Browser alternatives
- 10. Hibernate Union alternatives
- 11. SQLite Alternatives for C++
- 12. MathJax/jsMath alternatives?
- 13. Logging * Business * Events - use logging framework?
- 14. py.test logging control
- 15. JS validator alternatives to JSLint?
- 16. SynchronizationLockException + Logging
- 17. Pyramid logging
- 18. Glassfish Logging
- 19. Logging NSNotifications
- 20. python logging cómo crear el archivo de registro como html
- 21. mensajes de registro que aparecen dos veces con Python Logging
- 22. Rails Logging API
- 23. C logging libraries
- 24. Spring hibernate Transaction Logging
- 25. JBoss AS 7: Logging
- 26. logging con filtros
- 27. Ant: Logging via Log4j
- 28. Glassfish v3 logging
- 29. Logging with Vala
- 30. Restkit, Stop Logging?
parece prometedor: http : //packages.python.org/Logbook – hoju
¿De qué manera considera que el módulo de registro es engorroso? ¿Qué le parece que falta en sus capacidades? –
¿lo has usado? No es pitónico. – hoju