Concurrentloghandler

Handler de registro concurrente (reemplazo de Drop-in para RotatingFileHandler)
Descargar ahora

Concurrentloghandler Clasificación y resumen

Anuncio publicitario

  • Rating:
  • Licencia:
  • The Apache License 2.0
  • Precio:
  • FREE
  • Nombre del editor:
  • Lowell Alleman

Concurrentloghandler Etiquetas


Concurrentloghandler Descripción

Handler de registro concurrente (reemplazo de Drop-in para RotatingFileHandler) Concurrentloghandler es un módulo de Python que proporciona un controlador de registro adicional para el paquete de registro estándar de Python (PEP 282). Este controlador escribirá eventos de registro para registrar el archivo que se gira cuando el archivo de registro alcanza un cierto tamaño. Múltiples procesos pueden escribir de manera segura al mismo archivo de registro. Concurrentemente. Detailsthe ConcurrentRotatingFileHandler Class es un reemplazo de suplementos para el controlador de registro estándar de Python RotatingFileHandler. Este módulo utiliza el bloqueo de archivos para que múltiples procesos puedan iniciar sesión de forma simultánea en un solo archivo sin ceder o eventos de registro de clavos. Este módulo proporciona un esquema de rotación de archivos como con RotatingFilehanler. Se toma un cuidado adicional para garantizar que los registros puedan ser girados de manera segura antes de que se inicie el proceso de rotación. (Este módulo funciona alrededor del problema de cambio de nombre del archivo con RotatingFileHandler en Windows, donde un fallo de rotación significa que todos los eventos de registro subsiguientes se eliminan). Este módulo intenta preservar los registros de registro a todos los costos. Esto significa que los archivos de registro aumentarán más grandes que el tamaño máximo (rotación) especificado. Por lo tanto, si el espacio en el disco es ajustado, es posible que desee adherirse a RotatingFileHandler, que se adhirará estrictamente al tamaño máximo del archivo. Si tiene varias instancias de un script (o múltiples scripts) que se ejecutan al mismo tiempo y escribiendo al mismo registro Archivo, luego todos los scripts deben estar usando ConcurrentRotatingFileHandler. No debe intentar mezclar y coincidir con RotatingFileHandler y ConcurrentRotatingFileHandler. Este paquete Bundles Portal bloqueo para lidiar con el bloqueo de archivos. Tenga en cuenta que Portalocker solo es compatible con las plataformas UNIX (POSIX) en este momento, y por lo tanto, este paquete solo admite esas plataformas también .IntallationUSEUTE El siguiente comando para instalar este paquete: Easy_Install Concurrentloghandlerif que está instalando desde la fuente: Python Setup.py InstallexMpleessimplePlesimple es un ejemplo que demuestra cómo usar este módulo directamente (desde dentro del código Python): desde el registro de entrada Getlogger, Infofrom Cloghandler Importar concurrentRotatingFileHandlerImports oslog = getlogger () # Use una ruta absoluta para evitar la rotación de archivos problemle.logfile = os.path.abspath ("mylogfile.log") # Gire el registro después de alcanzar 512K, mantenga 5 antiguas copias.RotateHandler = ConcurrentRotatingFileHandler (Logfile, "A", 512 * 1024, 5) Log.addHandler (RotateHandler) Log.Setlevel ( Info) log.info ("Aquí hay un mensaje de registro muy emocionante, solo para usted") Fallback automático Ejemplica que está distribuyendo su código y no está seguro de que el paquete de Concurrentloghandler ha sido Instalada en todas partes que se ejecutará su código, Python facilita con gracia a la ficha incorporada en RotatingFileHandler, aquí hay un ejemplo: intente: Desde Cloghandler Importar concurrentRotatingFileHandler como rfhandlerexcept ImportError: # Siguiente 2 líneas son opcionales: emita una advertencia al usuario de las advertencias de advertencias Importar Warn Warn ("Paquete de concurrentloghandler no instalado. Usando el controlador de registro incorporado ") desde la iniciativa de registro. IMPORTTOR DE ROTATINGFILEHANDLERS AS RFHANDERLOG = Getlogger () RotateHandler = RFHANDLER (" / ruta / to / mylogfile.log "," A ", 1048576, 15) Log.addHandler (RotateHandler) Config (RotateHandler) Config (RotateHandler) Config (RotateHandler) Config (RotateHandler) Config (RotateHandler) Config (RotateHandler) Ejemply Ejemplo le muestra cómo usar este controlador de registro con el analizador de archivos de configuración de registro. Esto le permite mantener su código de configuración de registro separado de su código de aplicación. ARCHIVO DE CONFIGURACIÓN DE LA APLICACIÓN: Logging.ini: Keys = Root Keys = Hand01 Keys = Form01 Nivel = Notsethandlers = Hand01 Class = Handlers.ConCurrentRotatingFileHandlerLevel = NotSetFormatter = Form01ARGS = ("Rotating.log", "A", 512 * 1024, 5) FORMADA % (ascitio) s% (NivelNAME) S% (Mensaje) Sexample Python Código: app.py:Igport logging, logging.configimport cathandlerlogging.config.fileconfig ("loggging.ini") log = loggging.getlogger () log.info ("Aquí hay un mensaje de registro muy emocionante, solo para usted") Requisitos: · Python ¿Qué hay de nuevo en este lanzamiento: · Problema de nombramiento de archivos de bloqueo fijo · Resovó un problema menor en el que los archivos de bloqueo se denominarían incorrectamente si el archivo de registro contenía ".log" en el medio del nombre del registro. Por ejemplo, si el archivo de registro fue "/var/log/mycany.logging.mysource.log", el archivo de bloqueo se llamará "/var/log/mycompany.ging.mysource.lock", que no es correcto. Gracias a Dirk Rothe por señalar esto. Dado que esto introduce una ligera diferencia de comportamiento de archivos de bloqueo, asegúrese de que todos los escritores de concurrencia se actualicen a 0.8.4 al mismo tiempo si este problema lo afecta. · Actualizado EZ_SETUP.PY a 0.6C11


Concurrentloghandler Software relacionado

ntrack

Biblioteca de seguimiento de estado en línea de red para aplicaciones de escritorio ...

112

Descargar