diff --git a/probe/kubernetes/reporter.go b/probe/kubernetes/reporter.go index fcf7ea9fa..4ac78bd4b 100644 --- a/probe/kubernetes/reporter.go +++ b/probe/kubernetes/reporter.go @@ -18,11 +18,12 @@ import ( // Exposed for testing var ( PodMetadataTemplates = report.MetadataTemplates{ - PodID: {ID: PodID, Label: "ID", From: report.FromLatest, Priority: 1}, - PodState: {ID: PodState, Label: "State", From: report.FromLatest, Priority: 2}, - PodIP: {ID: PodIP, Label: "IP", From: report.FromLatest, Priority: 3}, - Namespace: {ID: Namespace, Label: "Namespace", From: report.FromLatest, Priority: 5}, - PodCreated: {ID: PodCreated, Label: "Created", From: report.FromLatest, Priority: 6}, + PodID: {ID: PodID, Label: "ID", From: report.FromLatest, Priority: 1}, + PodState: {ID: PodState, Label: "State", From: report.FromLatest, Priority: 2}, + PodIP: {ID: PodIP, Label: "IP", From: report.FromLatest, Priority: 3}, + report.Container: {ID: report.Container, Label: "# Containers", From: report.FromCounters, Datatype: "number", Priority: 4}, + Namespace: {ID: Namespace, Label: "Namespace", From: report.FromLatest, Priority: 5}, + PodCreated: {ID: PodCreated, Label: "Created", From: report.FromLatest, Priority: 6}, } ServiceMetadataTemplates = report.MetadataTemplates{ @@ -31,6 +32,7 @@ var ( ServiceCreated: {ID: ServiceCreated, Label: "Created", From: report.FromLatest, Priority: 3}, ServicePublicIP: {ID: ServicePublicIP, Label: "Public IP", From: report.FromLatest, Priority: 4}, ServiceIP: {ID: ServiceIP, Label: "Internal IP", From: report.FromLatest, Priority: 5}, + report.Pod: {ID: report.Pod, Label: "# Pods", From: report.FromCounters, Datatype: "number", Priority: 6}, } PodTableTemplates = report.TableTemplates{ diff --git a/render/detailed/node.go b/render/detailed/node.go index 11e110e35..10a037353 100644 --- a/render/detailed/node.go +++ b/render/detailed/node.go @@ -7,6 +7,7 @@ import ( "github.com/weaveworks/scope/probe/docker" "github.com/weaveworks/scope/probe/host" + "github.com/weaveworks/scope/probe/kubernetes" "github.com/weaveworks/scope/probe/process" "github.com/weaveworks/scope/report" ) @@ -144,6 +145,22 @@ var ( NodeSummaryGroup: NodeSummaryGroup{ TopologyID: "pods", Label: "Pods", + + Columns: []Column{ + {ID: report.Container, Label: "# Containers"}, + {ID: kubernetes.PodIP, Label: "IP"}, + }, + }, + }, + { + topologyID: report.Service, + NodeSummaryGroup: NodeSummaryGroup{ + TopologyID: "pods-by-service", + Label: "Services", + Columns: []Column{ + {ID: report.Pod, Label: "# Pods"}, + {ID: kubernetes.ServiceIP, Label: "IP"}, + }, }, }, { diff --git a/render/detailed/node_test.go b/render/detailed/node_test.go index 9345a5c2c..c96fd671d 100644 --- a/render/detailed/node_test.go +++ b/render/detailed/node_test.go @@ -6,6 +6,7 @@ import ( "github.com/weaveworks/scope/probe/docker" "github.com/weaveworks/scope/probe/host" + "github.com/weaveworks/scope/probe/kubernetes" "github.com/weaveworks/scope/probe/process" "github.com/weaveworks/scope/render" "github.com/weaveworks/scope/render/detailed" @@ -97,8 +98,11 @@ func TestMakeDetailedHostNode(t *testing.T) { { Label: "Pods", TopologyID: "pods", - Columns: nil, - Nodes: []detailed.NodeSummary{podNodeSummary}, + Columns: []detailed.Column{ + {ID: report.Container, Label: "# Containers"}, + {ID: kubernetes.PodIP, Label: "IP"}, + }, + Nodes: []detailed.NodeSummary{podNodeSummary}, }, { Label: "Containers", @@ -325,6 +329,7 @@ func TestMakeDetailedPodNode(t *testing.T) { Metadata: []report.MetadataRow{ {ID: "kubernetes_pod_id", Label: "ID", Value: "ping/pong-b", Priority: 1}, {ID: "kubernetes_pod_state", Label: "State", Value: "running", Priority: 2}, + {ID: "container", Label: "# Containers", Value: "1", Priority: 4, Datatype: "number"}, {ID: "kubernetes_namespace", Label: "Namespace", Value: "ping", Priority: 5}, }, },