Skip to content

Commit 47e7ff7

Browse files
authored
Merge pull request #1274 from cgwalters/log-filtered-more
store: Improve logging for filtered content
2 parents f1621fa + 95d3252 commit 47e7ff7

File tree

1 file changed

+14
-4
lines changed

1 file changed

+14
-4
lines changed

ostree-ext/src/container/store.rs

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ use oci_spec::image::{
2929
use ostree::prelude::{Cast, FileEnumeratorExt, FileExt, ToVariant};
3030
use ostree::{gio, glib};
3131
use std::collections::{BTreeMap, BTreeSet, HashMap};
32+
use std::fmt::Write as _;
3233
use std::iter::FromIterator;
3334
use tokio::sync::mpsc::{Receiver, Sender};
3435

@@ -959,10 +960,19 @@ impl ImageImporter {
959960
.await
960961
.with_context(|| format!("Parsing layer blob {}", layer.layer.digest()))?;
961962
layer_commits.push(r.commit);
962-
if !r.filtered.is_empty() {
963-
let filtered = HashMap::from_iter(r.filtered.into_iter());
964-
tracing::debug!("Found {} filtered toplevels", filtered.len());
965-
layer_filtered_content.insert(layer.layer.digest().to_string(), filtered);
963+
let filtered_owned = HashMap::from_iter(r.filtered.clone());
964+
if let Some((filtered, n_rest)) =
965+
bootc_utils::iterator_split_nonempty_rest_count(r.filtered.iter(), 5)
966+
{
967+
let mut msg = String::new();
968+
for (path, n) in filtered {
969+
write!(msg, "{path}: {n} ").unwrap();
970+
}
971+
if n_rest > 0 {
972+
write!(msg, "...and {n_rest} more").unwrap();
973+
}
974+
tracing::debug!("Found filtered toplevels: {msg}");
975+
layer_filtered_content.insert(layer.layer.digest().to_string(), filtered_owned);
966976
} else {
967977
tracing::debug!("No filtered content");
968978
}

0 commit comments

Comments
 (0)