2008-10-09 11 views
6

He estado buscando bastante tiempo para una aplicación que cumple el mismo rol que Logparser, una increíble pieza de tecnología, pero para Unix. ¿Alguien sabe algo de esto? (He visto a Splunk pero es una exageración, una simple línea de comandos es todo lo que realmente necesito)Logparser (de Microsoft) o similar para Unix?

Nota: Ser capaz de realizar consultas SQL en registros aleatorios, es genial y mucho más eficiente que grepping y sus kin (porque puede aplicar la lógica relacional basada en SQL al filtrado) y SQL es mucho más legible que Grep para fines de mantenimiento cuando entrega un proyecto a otros equipos.

Respuesta

4

Hay una pareja que me viene a la mente.

  1. yaala
  2. asql
  3. select

apoyo Yaala más tipos de archivos de registro, y tiene un SQL como lenguaje de consulta.

asql solo es compatible con el formato de registro de Apache, y tiene un lenguaje de consulta SQL simple.

seleccione admitir muchos formatos de registro, y tiene un lenguaje de consulta SQL.

+1

¿Tiene un nuevo enlace para "seleccionar" el enlace parece haber ido mal y buscar "seleccionar SQL" no devuelve nada útil ;-) –

+0

Sí, podemos suponer que el enlace "seleccionar" está muerto. – Drachenfels

0

El problema con Linux no es realmente un formato de 'registro' estándar. No estoy tan seguro de haber visto un registro como los mencionados en el ejemplo.

creo que es mejor construir una base de analizar el registro (s) que le interesa basado en awk y grep.

Mirando el ejemplo que muestran

SELECT TimeGenerated, SourceName, 
EventCategoryName, Message INTO report.txt FROM Security WHERE 
EventID = 528 AND SID LIKE '%TESTUSER%' 

podría lograrse mediante instrucción de selección:

cat logfile | awk '{print $(1), $(2), $(3)}' 

Como referencia: los grabados Statment awk las columnas 1, 2 y 3 respectivamente.

refinamiento paso cláusula where:

./base.sh | grep '528' > report.txt 

Creo que con un poco de finura y esta respuesta no artificial, que podría llegar a algo adecuado rápidamente.

+0

De acuerdo, esta es una posible solución, aunque solo como una nota. El analizador de registros no depende de ningún formato de registro conocido, sino que lo resuelve sobre la marcha. Le he dado todo tipo de registros no estándar y personalizados y ha sido bastante inteligente sobre cómo descifrarlos en las columnas –

+1

. Estoy bastante seguro de que su pregunta específicamente dice que sabe sobre grep y no le parece adecuado. – SquareCog

+0

Y a medida que te mueves a condicionales más complejos como (entre 6 y 17), grep se vuelve menos útil. Además, tener una interfaz más detallada tipo sql significa que al menos tiene el potencial de ser abstraído del formato de almacenamiento de registro, o al menos cambios menores en el formato (como agregar una columna de datos). –

Cuestiones relacionadas