mirror of
https://github.com/weaveworks/scope.git
synced 2026-03-03 18:20:27 +00:00
Merge pull request #513 from weaveworks/416-audit-add-node-usage
Audit uses to Topology.Nodes, use AddNode where appropriate.
This commit is contained in:
@@ -39,7 +39,7 @@ func (r *Reporter) containerTopology() report.Topology {
|
||||
|
||||
r.registry.WalkContainers(func(c Container) {
|
||||
nodeID := report.MakeContainerNodeID(r.scope, c.ID())
|
||||
result.Nodes[nodeID] = c.GetNode()
|
||||
result.AddNode(nodeID, c.GetNode())
|
||||
})
|
||||
|
||||
return result
|
||||
@@ -59,7 +59,7 @@ func (r *Reporter) containerImageTopology() report.Topology {
|
||||
}
|
||||
|
||||
nodeID := report.MakeContainerNodeID(r.scope, image.ID)
|
||||
result.Nodes[nodeID] = nmd
|
||||
result.AddNode(nodeID, nmd)
|
||||
})
|
||||
|
||||
return result
|
||||
|
||||
@@ -45,8 +45,8 @@ func (t *Tagger) Tag(r report.Report) (report.Report, error) {
|
||||
}
|
||||
|
||||
func (t *Tagger) tag(tree process.Tree, topology *report.Topology) {
|
||||
for nodeID, nodeMetadata := range topology.Nodes {
|
||||
pidStr, ok := nodeMetadata.Metadata[process.PID]
|
||||
for nodeID, node := range topology.Nodes {
|
||||
pidStr, ok := node.Metadata[process.PID]
|
||||
if !ok {
|
||||
continue
|
||||
}
|
||||
@@ -79,10 +79,8 @@ func (t *Tagger) tag(tree process.Tree, topology *report.Topology) {
|
||||
continue
|
||||
}
|
||||
|
||||
md := report.MakeNodeWith(map[string]string{
|
||||
topology.AddNode(nodeID, report.MakeNodeWith(map[string]string{
|
||||
ContainerID: c.ID(),
|
||||
})
|
||||
|
||||
topology.Nodes[nodeID] = nodeMetadata.Merge(md)
|
||||
}))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -38,12 +38,12 @@ func TestTagger(t *testing.T) {
|
||||
)
|
||||
|
||||
input := report.MakeReport()
|
||||
input.Process.Nodes[pid1NodeID] = report.MakeNodeWith(map[string]string{"pid": "1"})
|
||||
input.Process.Nodes[pid2NodeID] = report.MakeNodeWith(map[string]string{"pid": "2"})
|
||||
input.Process.AddNode(pid1NodeID, report.MakeNodeWith(map[string]string{"pid": "1"}))
|
||||
input.Process.AddNode(pid2NodeID, report.MakeNodeWith(map[string]string{"pid": "2"}))
|
||||
|
||||
want := report.MakeReport()
|
||||
want.Process.Nodes[pid1NodeID] = report.MakeNodeWith(map[string]string{"pid": "1"}).Merge(wantNode)
|
||||
want.Process.Nodes[pid2NodeID] = report.MakeNodeWith(map[string]string{"pid": "2"}).Merge(wantNode)
|
||||
want.Process.AddNode(pid1NodeID, report.MakeNodeWith(map[string]string{"pid": "1"}).Merge(wantNode))
|
||||
want.Process.AddNode(pid2NodeID, report.MakeNodeWith(map[string]string{"pid": "2"}).Merge(wantNode))
|
||||
|
||||
tagger := docker.NewTagger(mockRegistryInstance, nil)
|
||||
have, err := tagger.Tag(input)
|
||||
|
||||
@@ -68,7 +68,7 @@ func (r *Reporter) Report() (report.Report, error) {
|
||||
return rep, err
|
||||
}
|
||||
|
||||
rep.Host.Nodes[report.MakeHostNodeID(r.hostID)] = report.MakeNodeWith(map[string]string{
|
||||
rep.Host.AddNode(report.MakeHostNodeID(r.hostID), report.MakeNodeWith(map[string]string{
|
||||
Timestamp: Now(),
|
||||
HostName: r.hostName,
|
||||
LocalNetworks: strings.Join(localCIDRs, " "),
|
||||
@@ -76,7 +76,7 @@ func (r *Reporter) Report() (report.Report, error) {
|
||||
Load: GetLoad(),
|
||||
KernelVersion: kernel,
|
||||
Uptime: uptime.String(),
|
||||
})
|
||||
}))
|
||||
|
||||
return rep, nil
|
||||
}
|
||||
|
||||
@@ -45,7 +45,7 @@ func TestReporter(t *testing.T) {
|
||||
host.Now = func() string { return now }
|
||||
|
||||
want := report.MakeReport()
|
||||
want.Host.Nodes[report.MakeHostNodeID(hostID)] = report.MakeNodeWith(map[string]string{
|
||||
want.Host.AddNode(report.MakeHostNodeID(hostID), report.MakeNodeWith(map[string]string{
|
||||
host.Timestamp: now,
|
||||
host.HostName: hostname,
|
||||
host.LocalNetworks: network,
|
||||
@@ -53,7 +53,7 @@ func TestReporter(t *testing.T) {
|
||||
host.Load: load,
|
||||
host.Uptime: uptime,
|
||||
host.KernelVersion: kernel,
|
||||
})
|
||||
}))
|
||||
have, _ := host.NewReporter(hostID, hostname, localNets).Report()
|
||||
if !reflect.DeepEqual(want, have) {
|
||||
t.Errorf("%s", test.Diff(want, have))
|
||||
|
||||
@@ -22,8 +22,8 @@ func (t Tagger) Tag(r report.Report) (report.Report, error) {
|
||||
// Explicity don't tag Endpoints and Addresses - These topologies include pseudo nodes,
|
||||
// and as such do their own host tagging
|
||||
for _, topology := range []report.Topology{r.Process, r.Container, r.ContainerImage, r.Host, r.Overlay} {
|
||||
for id, md := range topology.Nodes {
|
||||
topology.Nodes[id] = md.Merge(other)
|
||||
for id := range topology.Nodes {
|
||||
topology.AddNode(id, other)
|
||||
}
|
||||
}
|
||||
return r, nil
|
||||
|
||||
@@ -17,7 +17,7 @@ func TestTagger(t *testing.T) {
|
||||
)
|
||||
|
||||
r := report.MakeReport()
|
||||
r.Process.Nodes[endpointNodeID] = nodeMetadata
|
||||
r.Process.AddNode(endpointNodeID, nodeMetadata)
|
||||
want := nodeMetadata.Merge(report.MakeNodeWith(map[string]string{
|
||||
report.HostNodeID: report.MakeHostNodeID(hostID),
|
||||
}))
|
||||
|
||||
@@ -195,10 +195,10 @@ func (w *Weave) Report() (report.Report, error) {
|
||||
|
||||
r := report.MakeReport()
|
||||
for _, peer := range w.status.Router.Peers {
|
||||
r.Overlay.Nodes[report.MakeOverlayNodeID(peer.Name)] = report.MakeNodeWith(map[string]string{
|
||||
r.Overlay.AddNode(report.MakeOverlayNodeID(peer.Name), report.MakeNodeWith(map[string]string{
|
||||
WeavePeerName: peer.Name,
|
||||
WeavePeerNickName: peer.NickName,
|
||||
})
|
||||
}))
|
||||
}
|
||||
return r, nil
|
||||
}
|
||||
|
||||
@@ -20,12 +20,12 @@ func TestInterpolateCounts(t *testing.T) {
|
||||
r := report.MakeReport()
|
||||
r.Sampling.Count = samplingCount
|
||||
r.Sampling.Total = samplingTotal
|
||||
r.Endpoint.Nodes[srcNodeID] = report.MakeNode().WithEdge(dstNodeID, report.EdgeMetadata{
|
||||
r.Endpoint.AddNode(srcNodeID, report.MakeNode().WithEdge(dstNodeID, report.EdgeMetadata{
|
||||
EgressPacketCount: newu64(packetCount),
|
||||
IngressPacketCount: newu64(packetCount),
|
||||
EgressByteCount: newu64(byteCount),
|
||||
IngressByteCount: newu64(byteCount),
|
||||
})
|
||||
}))
|
||||
|
||||
interpolateCounts(r)
|
||||
|
||||
|
||||
@@ -58,8 +58,8 @@ func (topologyTagger) Tag(r report.Report) (report.Report, error) {
|
||||
"overlay": &(r.Overlay),
|
||||
} {
|
||||
other := report.MakeNodeWith(map[string]string{Topology: val})
|
||||
for id, md := range topology.Nodes {
|
||||
topology.Nodes[id] = md.Merge(other)
|
||||
for id := range topology.Nodes {
|
||||
topology.AddNode(id, other)
|
||||
}
|
||||
}
|
||||
return r, nil
|
||||
|
||||
@@ -16,8 +16,8 @@ func TestApply(t *testing.T) {
|
||||
)
|
||||
|
||||
r := report.MakeReport()
|
||||
r.Endpoint.Nodes[endpointNodeID] = endpointNode
|
||||
r.Address.Nodes[addressNodeID] = addressNode
|
||||
r.Endpoint.AddNode(endpointNodeID, endpointNode)
|
||||
r.Address.AddNode(addressNodeID, addressNode)
|
||||
r = Apply(r, []Tagger{newTopologyTagger()})
|
||||
|
||||
for _, tuple := range []struct {
|
||||
|
||||
@@ -17,10 +17,10 @@ func TestCollector(t *testing.T) {
|
||||
c := xfer.NewCollector(window)
|
||||
|
||||
r1 := report.MakeReport()
|
||||
r1.Endpoint.Nodes["foo"] = report.MakeNode()
|
||||
r1.Endpoint.AddNode("foo", report.MakeNode())
|
||||
|
||||
r2 := report.MakeReport()
|
||||
r2.Endpoint.Nodes["bar"] = report.MakeNode()
|
||||
r2.Endpoint.AddNode("bar", report.MakeNode())
|
||||
|
||||
if want, have := report.MakeReport(), c.Report(); !reflect.DeepEqual(want, have) {
|
||||
t.Error(test.Diff(want, have))
|
||||
|
||||
Reference in New Issue
Block a user