Applications (expr) topology

This commit is contained in:
Peter Bourgon
2015-09-10 18:45:41 +02:00
parent a94731c59b
commit f259f9306d
6 changed files with 39 additions and 3 deletions
+1 -1
View File
@@ -16,7 +16,7 @@ func TestAPITopology(t *testing.T) {
if err := json.Unmarshal(body, &topologies); err != nil {
t.Fatalf("JSON parse error: %s", err)
}
equals(t, 3, len(topologies))
equals(t, 4, len(topologies))
for _, topology := range topologies {
is200(t, ts, topology.URL)
+16
View File
@@ -12,6 +12,7 @@ import (
"github.com/gorilla/mux"
"github.com/weaveworks/scope/render"
"github.com/weaveworks/scope/render/dsl"
"github.com/weaveworks/scope/report"
"github.com/weaveworks/scope/xfer"
)
@@ -137,6 +138,21 @@ var topologyRegistry = map[string]topologyView{
parent: "",
renderer: render.FilterUnconnected(render.ProcessWithContainerNameRenderer{}),
},
"applications-expr": {
human: "Applications (expr)",
parent: "",
renderer: render.CustomRenderer{
Renderer: render.Map{
Renderer: render.SelectAll,
MapFunc: render.MapIdentity,
},
RenderFunc: dsl.ParseExpressions(
"ALL GROUPBY {{pid}}",
"NOT WITH {{pid}} REMOVE",
"NOT CONNECTED REMOVE",
).Eval,
},
},
"applications-by-name": {
human: "by name",
parent: "applications",