mirror of
https://github.com/weaveworks/scope.git
synced 2026-07-21 22:36:39 +00:00
Add Weave summary generator and fix Weave renderer
This commit is contained in:
@@ -84,7 +84,7 @@ func handleWebsocket(
|
||||
for { // just discard everything the browser sends
|
||||
if _, _, err := c.ReadMessage(); err != nil {
|
||||
if !xfer.IsExpectedWSCloseError(err) {
|
||||
log.Println("err:", err)
|
||||
log.Error("err:", err)
|
||||
}
|
||||
close(quit)
|
||||
break
|
||||
|
||||
@@ -8,6 +8,7 @@ import (
|
||||
"github.com/weaveworks/scope/probe/endpoint"
|
||||
"github.com/weaveworks/scope/probe/host"
|
||||
"github.com/weaveworks/scope/probe/kubernetes"
|
||||
"github.com/weaveworks/scope/probe/overlay"
|
||||
"github.com/weaveworks/scope/probe/process"
|
||||
"github.com/weaveworks/scope/render"
|
||||
"github.com/weaveworks/scope/report"
|
||||
@@ -68,6 +69,7 @@ var renderers = map[string]func(NodeSummary, report.Node) (NodeSummary, bool){
|
||||
report.Deployment: podGroupNodeSummary,
|
||||
report.ReplicaSet: podGroupNodeSummary,
|
||||
report.Host: hostNodeSummary,
|
||||
report.Overlay: weaveNodeSummary,
|
||||
}
|
||||
|
||||
var templates = map[string]struct{ Label, LabelMinor string }{
|
||||
@@ -253,6 +255,18 @@ func hostNodeSummary(base NodeSummary, n report.Node) (NodeSummary, bool) {
|
||||
return base, true
|
||||
}
|
||||
|
||||
func weaveNodeSummary(base NodeSummary, n report.Node) (NodeSummary, bool) {
|
||||
var (
|
||||
nickname, _ = n.Latest.Lookup(overlay.WeavePeerNickName)
|
||||
)
|
||||
|
||||
_, peerName := report.ParseOverlayNodeID(n.ID)
|
||||
|
||||
base.Label, base.LabelMinor = nickname, peerName
|
||||
|
||||
return base, true
|
||||
}
|
||||
|
||||
// groupNodeSummary renders the summary for a group node. n.Topology is
|
||||
// expected to be of the form: group:container:hostname
|
||||
func groupNodeSummary(base NodeSummary, r report.Report, n report.Node) (NodeSummary, bool) {
|
||||
@@ -298,6 +312,7 @@ type NodeSummaries map[string]NodeSummary
|
||||
|
||||
// Summaries converts RenderableNodes into a set of NodeSummaries
|
||||
func Summaries(r report.Report, rns report.Nodes) NodeSummaries {
|
||||
|
||||
result := NodeSummaries{}
|
||||
for id, node := range rns {
|
||||
if summary, ok := MakeNodeSummary(r, node); ok {
|
||||
|
||||
@@ -13,17 +13,20 @@ var WeaveRenderer = MakeMap(
|
||||
|
||||
// MapWeaveIdentity maps an overlay topology node to a weave topology node.
|
||||
func MapWeaveIdentity(m report.Node, _ report.Networks) report.Nodes {
|
||||
|
||||
peerPrefix, peerName := report.ParseOverlayNodeID(m.ID)
|
||||
peerPrefix, _ := report.ParseOverlayNodeID(m.ID)
|
||||
if peerPrefix != report.WeaveOverlayPeerPrefix {
|
||||
return nil
|
||||
}
|
||||
|
||||
var node = NewDerivedNode(peerName, m)
|
||||
var (
|
||||
node = m
|
||||
nickname, _ = m.Latest.Lookup(overlay.WeavePeerNickName)
|
||||
)
|
||||
|
||||
if _, ok := node.Latest.Lookup(report.HostNodeID); !ok {
|
||||
nickname, _ := m.Latest.Lookup(overlay.WeavePeerNickName)
|
||||
id := MakePseudoNodeID(UnmanagedID, nickname)
|
||||
node = NewDerivedPseudoNode(id, m)
|
||||
}
|
||||
return report.Nodes{peerName: node}
|
||||
|
||||
return report.Nodes{node.ID: node}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user