2010-05-11 26 views
7

No estoy seguro de si se lo pidieron, pero no pude encontrar algo como esto.Un formato de archivo de registro simple

Mi programa utiliza un archivo .txt simple para propósitos de registro, simplemente crea/abre un archivo y agrega líneas.

Después de un tiempo, comencé a registrar bastantes actividades, por lo que el archivo se volvió demasiado grande y difícil de leer. Sé que no es una forma de escribir para hacer esto, pero simplemente necesito tener un archivo legible.

Así que pensé que tal vez hay un formato de archivo simple para los archivos de registro y una vista suave para verlo o si usted tiene alguna otra sugerencia sobre esta pregunta?

Gracias por la ayuda con anticipación.

ACTUALIZACIÓN: 97 Acceso aplicación

es todo. Estoy registrando algunas actividades como Carga de formularios, SELECCIONAR/INSERTAR/ACTUALIZAR a MS SQL Server ... El archivo de registro no es realmente grande, solo escribo la duración de las operaciones, por lo que necesito una forma sencilla de hacerlo.

El archivo de registro se crea en la máquina de un usuario. Se usa para propósitos de monitoreo registrando las duraciones de algunas actividades.

¿Hay alguna manera de ver ese tipo de archivo de registro simple resaltado con una herramienta existente?

Simplemente, me gustaría:

1) Escribir Smth como " 'CurrentTime' 'ActivityName' 'Duración en milisegundos'" (tal vez alguna información adicional como cadena de consulta) en una archivo.

2) Ábrala con una herramienta y visualícela resaltada o de alguna manera más legible.

RESPUESTA: He encontrado una buena herramienta para hacer todo lo que he querido. Verifica mi respuesta.

LogExpert

+0

¿sería capaz de dar más detalles sobre lo que su registro y cuánto se registra, etc? Gracias. – binarycreations

+0

y el idioma que está usando ... ¿Es este Java, C, scripting de shell? –

Respuesta

4

El 3 de W:

Cuándo, qué y dónde.

Para visualizar algo así como multitail ("cola con esteroides") http://www.vanheusden.com/multitail/

o para ms puras de Windows trata mtail http://ophilipp.free.fr/op_tail.htm

Y para mantener sus archivos legibles, es posible que desee iniciar nuevos archivos cuando si el tamaño del archivo de registro actual supera cierto límite. Ejemplo:

  • activity0.log (1 mb)
  • activity1.log (1 MB)
  • activity2.log (1 MB)
  • activity3.log (1 mb)
  • activity4.log (205 bytes)
+0

hmm..consulta útil. Gracias :) – hgulyan

+0

, pero ¿hay alguna manera de hacerlo comprensible para una aplicación? – hgulyan

+0

¿Qué quiere decir "comprensible para una aplicación"? Con multitail puede filtrar o resaltar las entradas de varias maneras. – zaf

1

primer lugar, comprobar que sólo se está acumulando cosas que son útiles.

Si todo es útil, asegúrese de que sea fácilmente analizable por herramientas como grep, de esa manera puede encontrar la información que desea. Asegúrese de tener el tipo de entrada de registro, la fecha/hora todas conforme a un diseño.

Cree usted mismo algunos scripts para extraer la información por usted. De forma alternativa, use archivos de registro separados para diferentes tipos de entradas.

+0

Intento encontrar una herramienta existente. – hgulyan

1

Básicamente es mejor que simplemente divida los registros de acuerdo con la gravedad. Raramente necesitará leer todos los registros de todo el sistema. Por ejemplo, apache permite configurar el registro de errores y el registro de acceso, bastante obvio qué información tienen exactamente.

Si está bajo el sistema linux, grep es su mejor herramienta para buscar registros en registros específicos.

+0

El archivo de registro se está creando en la computadora de un usuario con WinXp en él – hgulyan

1

mirada a los archivos de registro populares como/var/log/syslog en UNIX para obtener ideas:

MMM DD HH:MM:SS hostname process[pid]: message 

Ejemplo de mi syslog:

May 11 12:58:39 raphaelm anacron[1086]: Normal exit (1 job run) 

Pero para darle la respuesta perfecta nosotros' Necesito más información sobre lo que está registrando, cuánto y cómo desea leer los registros.

+0

Pero si guardo un archivo en formato txt, no se resaltará ni se mostrará tan parecido como para que el archivo de registro sea más legible. He editado mi pregunta. – hgulyan

+0

La terminación del nombre (.txt o .log o algo más) no es relevante para el contenido. ¿Tal vez quiere darnos un ejemplo de sus archivos de registro actuales? –

+0

Puedo escribir el archivo de registro de cualquier manera. Lo que necesito es algún tipo de formato de archivo, que pueda ser entendido por un programa, que me muestre el archivo de registro resaltado o de alguna manera más legible. – hgulyan

1

Si solo el tamaño del archivo de registro es el problema, le recomiendo usar logrotate o algo similar. logrotate relojes relojes de registro y, dependiendo de cómo lo haya configurado, después de un tiempo determinado o cuando el archivo de registro excede un tamaño determinado, mueve el archivo de registro a un directorio de archivo y, opcionalmente, lo comprime. Entonces, el archivo de registro original se trunca. Por ejemplo, puede configurarlo para archivar el archivo de registro cada 24 horas o cuando el tamaño de los archivos supere los 500kb.

+0

No, el problema principal es que no es legible.Deseé encontrar una GUI para verla, pero gracias por la respuesta. No sabía sobre logrotate. – hgulyan

1

Si se trata de un programa, puede investigar las bibliotecas de registro de Apache (http://logging.apache.org/). De fábrica, le proporcionarán un formato de registro decente de fábrica. También son personalizables, por lo que puede simplificar su trabajo de análisis.

Si se trata de una secuencia de comandos, vea algunas de las otras respuestas.

+0

He usado Log4j en Java, pero no hay nada útil en el antiguo MS Access 97 para el inicio de sesión. – hgulyan

2

Una forma bastante estándar para hacer frente a la tala de una aplicación en un archivo de texto simple es:

  • dividir los registros en diferentes áreas funcionales del programa.
  • rotar los registros en una base diaria/semanal (es decir, dividir el registro en una base tamaño o fecha)
    • por lo que el registro actual es "mylog.log" o lo que sea, y el de ayer fue "mylog.log. 1" o "mylog.ddmmyyyy.log"

Esto mantiene el tamaño del registro activo manejable. Y luego puede tener reglas de caducidad para que los registros antiguos se descarten de forma regular.

Además, sería una buena idea tener diferentes niveles de registro para su aplicación (información/advertencia/error/fatal) para que no esté iniciando más de lo necesario.

+0

Gracias. Sí, sería correcto tener severidad, pero utilizo mi archivo de registro para fines de monitoreo y registro algunas duraciones de actividades, no errores. – hgulyan

Cuestiones relacionadas