add loading progress bar

This commit is contained in:
Robin Appelman 2024-11-05 19:53:22 +01:00
commit 1e33ad60db
3 changed files with 45 additions and 2 deletions

View file

@ -6,6 +6,7 @@ use crate::matcher::{MatchResult, Matcher};
use crate::ui::run_ui;
use base64::prelude::*;
use clap::Parser;
use indicatif::{ParallelProgressIterator};
use logsmash_data::{default_apps, get_statements, SourceDefinition};
use main_error::MainResult;
use rayon::prelude::*;
@ -70,6 +71,8 @@ fn main() -> MainResult {
);
let matcher = Matcher::new(&statements);
let line_count = lines.len();
let mut results: Vec<_> = lines
.into_par_iter()
.map(|(index, line)| {
@ -80,11 +83,14 @@ fn main() -> MainResult {
parsed.map_err(|err| (index, line, err))
})
.map(|parsed| {
parsed.map(|parsed| {
let res = parsed.map(|parsed| {
let log_match = matcher.match_log(&parsed);
(parsed, log_match)
})
});
// bar.inc(1);
res
})
.progress_count(line_count as u64)
.collect();
results.sort_by_key(|res| match res {