Log Parse

v0.1.0Añadido el 26 sept 2026Datos de ejemplo

Analiza syslog (RFC 3164 / 5424) y logs de acceso de servidores web comunes en registros estructurados.

Datos de ejemplo. Estas cifras son provisionales, no mediciones.

cargo install kura-rs
kura add log-parse

Copia 3 archivos de código fuente en tu proyecto. A partir de ahí, el código es tuyo.

Si otra herramienta ya instala un comando kura, ejecuta cargo install kura-rs --bin kura-rs y usa kura-rs add en su lugar.

use crate::parts::log_parse::{parse_line, Format};

for line in reader.lines() {
    let record = parse_line(Format::Rfc5424, &line?)?;
    println!("{} {}", record.host, record.message);
}

Verificación

Datos de ejemplo

Verificado frente a re 3.12 (Python). Método: Archivos golden. Las mismas entradas se pasan a ambas implementaciones y se comparan las salidas.

Referencia
re
Python 3.12
Casos de prueba
1200
Archivos golden
Superados
1200 / 1200
Todos los casos coinciden
Última ejecución
26 sept 2026
UTC

Estas cifras son provisionales. Todavía no se han medido y no deben interpretarse como resultados reales. Esta pieza está marcada con "sample": true en su archivo del registro.

Benchmarks

Datos de ejemplo

kura-rs (Rust) frente a re con distintos tamaños de entrada. Más rápido en todos los tamaños de entrada medidos, hasta 20× más rápido.

Estas cifras son provisionales. Todavía no se han medido y no deben interpretarse como resultados reales. Esta pieza está marcada con "sample": true en su archivo del registro.

kura-rs (Rust)re
Tiempo real por ejecución (menos es mejor).
Mostrar tabla de datos
Tamaño de entradakura-rs (Rust)reAceleración
1000,03 ms0,4 ms13×
10000,21 ms3,9 ms19×
10.0002 ms39 ms20×
100.00020 ms395 ms20×
1.000.000196 ms3,96 s20×

Archivos

  • parts/log_parse/mod.rs
  • parts/log_parse/syslog.rs
  • parts/log_parse/access.rs

Dependencias (crates)