From 3cda3289760bf858a65bb006db41619f157bf591 Mon Sep 17 00:00:00 2001 From: Paul Bellamy Date: Mon, 18 Jan 2016 10:36:31 +0000 Subject: [PATCH] remove hostID from container image node ids --- probe/docker/container.go | 2 +- probe/docker/container_test.go | 2 +- probe/docker/reporter.go | 4 +--- probe/docker/reporter_test.go | 4 +--- probe/docker/tagger.go | 6 ++---- probe/docker/tagger_test.go | 4 ++-- prog/probe.go | 2 +- render/mapping.go | 2 +- report/id.go | 4 ++-- test/fixture/report_fixture.go | 4 ++-- 10 files changed, 14 insertions(+), 20 deletions(-) diff --git a/probe/docker/container.go b/probe/docker/container.go index 16e8ea3fa..0abe6baec 100644 --- a/probe/docker/container.go +++ b/probe/docker/container.go @@ -334,7 +334,7 @@ func (c *container) GetNode(hostID string, localAddrs []net.IP) report.Node { ).WithMetrics( c.metrics(), ).WithParents(report.Sets{ - "container_image": report.MakeStringSet(report.MakeContainerImageNodeID(hostID, c.container.Image)), + "container_image": report.MakeStringSet(report.MakeContainerImageNodeID(c.container.Image)), }) if c.container.State.Paused { diff --git a/probe/docker/container_test.go b/probe/docker/container_test.go index 609fbb05e..0dc624596 100644 --- a/probe/docker/container_test.go +++ b/probe/docker/container_test.go @@ -93,7 +93,7 @@ func TestContainer(t *testing.T) { "cpu_total_usage": report.MakeMetric(), "memory_usage": report.MakeMetric().Add(now, 12345), }).WithParents(report.Sets{ - "container_image": report.MakeStringSet(report.MakeContainerImageNodeID("scope", "baz")), + "container_image": report.MakeStringSet(report.MakeContainerImageNodeID("baz")), }) test.Poll(t, 100*time.Millisecond, want, func() interface{} { node := c.GetNode("scope", []net.IP{}) diff --git a/probe/docker/reporter.go b/probe/docker/reporter.go index bef4d1160..fd7800f7d 100644 --- a/probe/docker/reporter.go +++ b/probe/docker/reporter.go @@ -117,8 +117,6 @@ func (r *Reporter) containerImageTopology() report.Topology { r.registry.WalkImages(func(image *docker_client.APIImages) { nmd := report.MakeNodeWith(map[string]string{ ImageID: image.ID, - }).WithParents(report.Sets{ - "host": report.MakeStringSet(report.MakeHostNodeID(r.hostID)), }) AddLabels(nmd, image.Labels) @@ -126,7 +124,7 @@ func (r *Reporter) containerImageTopology() report.Topology { nmd.Metadata[ImageName] = image.RepoTags[0] } - nodeID := report.MakeContainerImageNodeID(r.hostID, image.ID) + nodeID := report.MakeContainerImageNodeID(image.ID) result.AddNode(nodeID, nmd) }) diff --git a/probe/docker/reporter_test.go b/probe/docker/reporter_test.go index c19eee696..dc944e6b6 100644 --- a/probe/docker/reporter_test.go +++ b/probe/docker/reporter_test.go @@ -101,11 +101,9 @@ func TestReporter(t *testing.T) { } want.ContainerImage = report.Topology{ Nodes: report.Nodes{ - report.MakeContainerImageNodeID("host1", "baz"): report.MakeNodeWith(map[string]string{ + report.MakeContainerImageNodeID("baz"): report.MakeNodeWith(map[string]string{ docker.ImageID: "baz", docker.ImageName: "bang", - }).WithParents(report.Sets{ - "host": report.MakeStringSet(report.MakeHostNodeID("host1")), }), }, Controls: report.Controls{}, diff --git a/probe/docker/tagger.go b/probe/docker/tagger.go index 1c7d3564e..320ea9991 100644 --- a/probe/docker/tagger.go +++ b/probe/docker/tagger.go @@ -23,15 +23,13 @@ var ( // nodes that have a PID. type Tagger struct { registry Registry - hostID string procWalker process.Walker } // NewTagger returns a usable Tagger. -func NewTagger(registry Registry, hostID string, procWalker process.Walker) *Tagger { +func NewTagger(registry Registry, procWalker process.Walker) *Tagger { return &Tagger{ registry: registry, - hostID: hostID, procWalker: procWalker, } } @@ -88,7 +86,7 @@ func (t *Tagger) tag(tree process.Tree, topology *report.Topology) { ContainerID: c.ID(), }).WithParents(report.Sets{ "container": report.MakeStringSet(report.MakeContainerNodeID(c.ID())), - "container_image": report.MakeStringSet(report.MakeContainerImageNodeID(t.hostID, c.Image())), + "container_image": report.MakeStringSet(report.MakeContainerImageNodeID(c.Image())), })) } } diff --git a/probe/docker/tagger_test.go b/probe/docker/tagger_test.go index f58e7df05..55445729c 100644 --- a/probe/docker/tagger_test.go +++ b/probe/docker/tagger_test.go @@ -42,7 +42,7 @@ func TestTagger(t *testing.T) { docker.ContainerID: "ping", }).WithParents(report.Sets{ "container": report.MakeStringSet(report.MakeContainerNodeID("ping")), - "container_image": report.MakeStringSet(report.MakeContainerImageNodeID("somehost.com", "baz")), + "container_image": report.MakeStringSet(report.MakeContainerImageNodeID("baz")), }) ) @@ -54,7 +54,7 @@ func TestTagger(t *testing.T) { want.Process.AddNode(pid1NodeID, report.MakeNodeWith(map[string]string{process.PID: "2"}).Merge(wantNode)) want.Process.AddNode(pid2NodeID, report.MakeNodeWith(map[string]string{process.PID: "3"}).Merge(wantNode)) - tagger := docker.NewTagger(mockRegistryInstance, "somehost.com", nil) + tagger := docker.NewTagger(mockRegistryInstance, nil) have, err := tagger.Tag(input) if err != nil { t.Errorf("%v", err) diff --git a/prog/probe.go b/prog/probe.go index 3742e80cf..f8aa9ed1b 100644 --- a/prog/probe.go +++ b/prog/probe.go @@ -131,7 +131,7 @@ func probeMain() { } if registry, err := docker.NewRegistry(*dockerInterval, clients); err == nil { defer registry.Stop() - p.AddTagger(docker.NewTagger(registry, hostID, processCache)) + p.AddTagger(docker.NewTagger(registry, processCache)) p.AddReporter(docker.NewReporter(registry, hostID, p)) } else { log.Printf("Docker: failed to start registry: %v", err) diff --git a/render/mapping.go b/render/mapping.go index a1b675007..b3ded7a74 100644 --- a/render/mapping.go +++ b/render/mapping.go @@ -524,7 +524,7 @@ func MapContainer2ContainerImage(n RenderableNode, _ report.Networks) Renderable result.Children = result.Children.Add(n.Node) result.Node.Topology = "container_image" - result.Node.ID = report.MakeContainerImageNodeID(report.ExtractHostID(n.Node), imageID) + result.Node.ID = report.MakeContainerImageNodeID(imageID) return RenderableNodes{id: result} } diff --git a/report/id.go b/report/id.go index f8401cb5a..23561a7f6 100644 --- a/report/id.go +++ b/report/id.go @@ -107,8 +107,8 @@ func MakeContainerNodeID(containerID string) string { } // MakeContainerImageNodeID produces a container image node ID from its composite parts. -func MakeContainerImageNodeID(hostID, containerImageID string) string { - return hostID + ScopeDelim + containerImageID +func MakeContainerImageNodeID(containerImageID string) string { + return containerImageID + ScopeDelim + "" } // MakePodNodeID produces a pod node ID from its composite parts. diff --git a/test/fixture/report_fixture.go b/test/fixture/report_fixture.go index fa9785a5e..7597cbd5f 100644 --- a/test/fixture/report_fixture.go +++ b/test/fixture/report_fixture.go @@ -79,8 +79,8 @@ var ( ClientContainerImageID = "imageid123" ServerContainerImageID = "imageid456" - ClientContainerImageNodeID = report.MakeContainerImageNodeID(ClientHostID, ClientContainerImageID) - ServerContainerImageNodeID = report.MakeContainerImageNodeID(ServerHostID, ServerContainerImageID) + ClientContainerImageNodeID = report.MakeContainerImageNodeID(ClientContainerImageID) + ServerContainerImageNodeID = report.MakeContainerImageNodeID(ServerContainerImageID) ClientContainerImageName = "image/client" ServerContainerImageName = "image/server"