mirror of
https://github.com/weaveworks/scope.git
synced 2026-07-28 09:41:57 +00:00
always apply ColorConnected in process renderers
This eliminates the awkward distinction between ProcessRenderer and ColorConnectedProcessRenderer. It also ensures that processes resulting from direct rendering of the process topology (/api/topology/processes is invoking ProcessWithContainerNameRenderer and /api/topology/processes-by-name is invoking ProcessNameRenderer) are colored and hence summarising them correctly sets the 'linkable' property. This was the behaviour prior to the revamping of the rendering pipeline. However, it doesn't actually make a practical difference since process detail panels only show other processes as connection endpoints, and these are always marked linkable anyway.
This commit is contained in:
@@ -33,7 +33,7 @@ var ContainerRenderer = Memoise(MakeFilter(
|
||||
MakeReduce(
|
||||
MakeMap(
|
||||
MapProcess2Container,
|
||||
ColorConnectedProcessRenderer,
|
||||
ProcessRenderer,
|
||||
),
|
||||
ConnectionJoin(MapContainer2IP, SelectContainer),
|
||||
),
|
||||
|
||||
@@ -10,7 +10,7 @@ import (
|
||||
// not memoised
|
||||
var HostRenderer = MakeReduce(
|
||||
endpoints2Hosts{},
|
||||
CustomRenderer{RenderFunc: nodes2Hosts, Renderer: ColorConnectedProcessRenderer},
|
||||
CustomRenderer{RenderFunc: nodes2Hosts, Renderer: ProcessRenderer},
|
||||
CustomRenderer{RenderFunc: nodes2Hosts, Renderer: ContainerRenderer},
|
||||
CustomRenderer{RenderFunc: nodes2Hosts, Renderer: ContainerImageRenderer},
|
||||
CustomRenderer{RenderFunc: nodes2Hosts, Renderer: PodRenderer},
|
||||
|
||||
@@ -25,14 +25,11 @@ func renderProcesses(rpt report.Report) bool {
|
||||
var EndpointRenderer = SelectEndpoint
|
||||
|
||||
// ProcessRenderer is a Renderer which produces a renderable process
|
||||
// graph by merging the endpoint graph and the process topology.
|
||||
var ProcessRenderer = Memoise(endpoints2Processes{})
|
||||
|
||||
// ColorConnectedProcessRenderer colors connected nodes from
|
||||
// ProcessRenderer. Since the process topology views only show
|
||||
// connected processes, we need this info to determine whether
|
||||
// graph by merging the endpoint graph and the process topology. It
|
||||
// also colors connected nodes. Since the process topology views only
|
||||
// show connected processes, we need this info to determine whether
|
||||
// processes appearing in a details panel are linkable.
|
||||
var ColorConnectedProcessRenderer = Memoise(ColorConnected(ProcessRenderer))
|
||||
var ProcessRenderer = Memoise(ColorConnected(endpoints2Processes{}))
|
||||
|
||||
// processWithContainerNameRenderer is a Renderer which produces a process
|
||||
// graph enriched with container names where appropriate
|
||||
|
||||
Reference in New Issue
Block a user