diff --git a/render/filters.go b/render/filters.go index 9aa35642b..ba3ffd426 100644 --- a/render/filters.go +++ b/render/filters.go @@ -169,6 +169,18 @@ func FilterUnconnected(r Renderer) Renderer { ) } +// SilentFilterUnconnected produces a renderer that filters unconnected nodes +// from the given renderer; nodes filtered by this are not reported in stats. +func SilentFilterUnconnected(r Renderer) Renderer { + return MakeSilentFilter( + func(node report.Node) bool { + _, ok := node.Latest.Lookup(IsConnected) + return ok + }, + ColorConnected(r), + ) +} + // FilterNoop does nothing. func FilterNoop(in Renderer) Renderer { return in diff --git a/render/topologies.go b/render/topologies.go index beca05974..3752dcac1 100644 --- a/render/topologies.go +++ b/render/topologies.go @@ -84,7 +84,7 @@ var ContainerRenderer = MakeReduce( // We need to be careful to ensure we only include each edge once. Edges brought in // by the above renders will have a pid, so its enough to filter out any nodes with // pids. - FilterUnconnected(MakeMap( + SilentFilterUnconnected(MakeMap( MapIP2Container, MakeReduce( MakeMap(