Log Parse
v0.1.0Ajouté le 26 sept. 2026Données d'exempleAnalyse le syslog (RFC 3164 / 5424) et les journaux d'accès des serveurs web courants en enregistrements structurés.
cargo install kura-rs
kura add log-parseCopie 3 fichiers source dans votre projet. Le code vous appartient ensuite.
Si un autre outil installe déjà une commande kura, lance cargo install kura-rs --bin kura-rs et utilise kura-rs add à la place.
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);
}Vérification
Données d'exempleVérifié par rapport à re 3.12 (Python). Méthode : Fichiers de référence (golden files). Les mêmes entrées sont fournies aux deux implémentations, puis leurs sorties sont comparées.
Ces valeurs sont fictives. Elles n'ont pas encore été mesurées et ne doivent pas être lues comme des résultats réels. Ce composant est marqué "sample": true dans son fichier de registre.
Benchmarks
Données d'exemplekura-rs (Rust) comparé à re sur plusieurs tailles d'entrée. Plus rapide pour toutes les tailles d'entrée mesurées, jusqu'à 20× plus rapide.
Ces valeurs sont fictives. Elles n'ont pas encore été mesurées et ne doivent pas être lues comme des résultats réels. Ce composant est marqué "sample": true dans son fichier de registre.
Afficher le tableau de données
| Taille d'entrée | kura-rs (Rust) | re | Accélération |
|---|---|---|---|
| 100 | 0,03 ms | 0,4 ms | 13× |
| 1 000 | 0,21 ms | 3,9 ms | 19× |
| 10 000 | 2 ms | 39 ms | 20× |
| 100 000 | 20 ms | 395 ms | 20× |
| 1 000 000 | 196 ms | 3,96 s | 20× |
Fichiers
- parts/log_parse/mod.rs
- parts/log_parse/syslog.rs
- parts/log_parse/access.rs