Merge pull request #3093 from weaveworks/simplify-docker-tagger

More efficient docker Tagger
This commit is contained in:
Matthias Radestock
2018-02-26 13:43:13 +00:00
committed by GitHub

View File

@@ -4,6 +4,7 @@ import (
"strconv"
"strings"
"github.com/weaveworks/common/mtime"
"github.com/weaveworks/scope/probe/process"
"github.com/weaveworks/scope/report"
)
@@ -80,7 +81,7 @@ func (t *Tagger) Tag(r report.Report) (report.Report, error) {
}
func (t *Tagger) tag(tree process.Tree, topology *report.Topology) {
for nodeID, node := range topology.Nodes {
for _, node := range topology.Nodes {
pidStr, ok := node.Latest.Lookup(process.PID)
if !ok {
continue
@@ -114,9 +115,8 @@ func (t *Tagger) tag(tree process.Tree, topology *report.Topology) {
continue
}
node := report.MakeNodeWith(nodeID, map[string]string{
ContainerID: c.ID(),
}).WithParents(report.MakeSets().
node = node.WithLatest(ContainerID, mtime.Now(), c.ID())
node = node.WithParents(report.MakeSets().
Add(report.Container, report.MakeStringSet(report.MakeContainerNodeID(c.ID()))),
)
@@ -129,6 +129,6 @@ func (t *Tagger) tag(tree process.Tree, topology *report.Topology) {
)
}
topology.AddNode(node)
topology.ReplaceNode(node)
}
}