mirror of
https://github.com/weaveworks/scope.git
synced 2026-08-18 03:46:45 +00:00
Filter out docker overlay peers
This commit is contained in:
@@ -13,11 +13,10 @@ import (
|
||||
|
||||
// Keys for use in Node
|
||||
const (
|
||||
ImageID = "docker_image_id"
|
||||
ImageName = "docker_image_name"
|
||||
ImageLabelPrefix = "docker_image_label_"
|
||||
OverlayPeerPrefix = "docker_peer_"
|
||||
IsInHostNetwork = "docker_is_in_host_network"
|
||||
ImageID = "docker_image_id"
|
||||
ImageName = "docker_image_name"
|
||||
ImageLabelPrefix = "docker_image_label_"
|
||||
IsInHostNetwork = "docker_is_in_host_network"
|
||||
)
|
||||
|
||||
// Exposed for testing
|
||||
@@ -261,10 +260,9 @@ func (r *Reporter) overlayTopology() report.Topology {
|
||||
}
|
||||
|
||||
})
|
||||
peerID := OverlayPeerPrefix + r.hostID
|
||||
// Add both local and global networks to the LocalNetworks Set
|
||||
// since we treat container IPs as local
|
||||
node := report.MakeNode(report.MakeOverlayNodeID(peerID)).WithSets(
|
||||
node := report.MakeNode(report.MakeOverlayNodeID(report.DockerOverlayPeerPrefix, r.hostID)).WithSets(
|
||||
report.MakeSets().Add(host.LocalNetworks, report.MakeStringSet(subnets...)))
|
||||
return report.MakeTopology().AddNode(node)
|
||||
}
|
||||
|
||||
@@ -134,8 +134,7 @@ func TestReporter(t *testing.T) {
|
||||
|
||||
// Reporter should add a container network
|
||||
{
|
||||
peerID := docker.OverlayPeerPrefix + hostID
|
||||
overlayNodeID := report.MakeOverlayNodeID(peerID)
|
||||
overlayNodeID := report.MakeOverlayNodeID(report.DockerOverlayPeerPrefix, hostID)
|
||||
node, ok := rpt.Overlay.Nodes[overlayNodeID]
|
||||
if !ok {
|
||||
t.Fatalf("Expected report to have overlay node %q, but not found", overlayNodeID)
|
||||
|
||||
@@ -164,24 +164,25 @@ func (w *Weave) Report() (report.Report, error) {
|
||||
WeaveDNSHostname: {ID: WeaveDNSHostname, Label: "Weave DNS Name", From: report.FromLatest, Priority: 18},
|
||||
})
|
||||
for _, peer := range w.statusCache.Router.Peers {
|
||||
node := report.MakeNodeWith(report.MakeOverlayNodeID(peer.Name), map[string]string{
|
||||
WeavePeerName: peer.Name,
|
||||
WeavePeerNickName: peer.NickName,
|
||||
})
|
||||
node := report.MakeNodeWith(report.MakeOverlayNodeID(report.WeaveOverlayPeerPrefix, peer.Name),
|
||||
map[string]string{
|
||||
WeavePeerName: peer.Name,
|
||||
WeavePeerNickName: peer.NickName,
|
||||
})
|
||||
if peer.Name == w.statusCache.Router.Name {
|
||||
node = node.WithLatest(report.HostNodeID, mtime.Now(), w.hostID)
|
||||
node = node.WithParents(report.EmptySets.Add(report.Host, report.MakeStringSet(w.hostID)))
|
||||
}
|
||||
for _, conn := range peer.Connections {
|
||||
if conn.Outbound {
|
||||
node = node.WithAdjacent(report.MakeOverlayNodeID(conn.Name))
|
||||
node = node.WithAdjacent(report.MakeOverlayNodeID(report.WeaveOverlayPeerPrefix, conn.Name))
|
||||
}
|
||||
}
|
||||
r.Overlay.AddNode(node)
|
||||
}
|
||||
if w.statusCache.IPAM.DefaultSubnet != "" {
|
||||
r.Overlay.AddNode(
|
||||
report.MakeNode(report.MakeOverlayNodeID(w.statusCache.Router.Name)).WithSets(
|
||||
report.MakeNode(report.MakeOverlayNodeID(report.WeaveOverlayPeerPrefix, w.statusCache.Router.Name)).WithSets(
|
||||
report.MakeSets().Add(host.LocalNetworks, report.MakeStringSet(w.statusCache.IPAM.DefaultSubnet)),
|
||||
),
|
||||
)
|
||||
|
||||
@@ -35,7 +35,7 @@ func TestWeaveTaggerOverlayTopology(t *testing.T) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
nodeID := report.MakeOverlayNodeID(weave.MockWeavePeerName)
|
||||
nodeID := report.MakeOverlayNodeID(report.WeaveOverlayPeerPrefix, weave.MockWeavePeerName)
|
||||
node, ok := have.Overlay.Nodes[nodeID]
|
||||
if !ok {
|
||||
t.Errorf("Expected overlay node %q, but not found", nodeID)
|
||||
|
||||
Reference in New Issue
Block a user