weaveworks / scope

Monitoring, visualisation & management for Docker & Kubernetes

Home Page:https://www.weave.works/oss/scope/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Have graph remember past connections to maintain structure?

OmriHarary opened this issue · comments

Is there any way to have an edge between two graph nodes maintained even while the connection it represents is not active/in use?

I have Scope deployed on a Kubernetes cluster (via the Helm chart) which I am using mainly to view a relatively small set of microservices we are developing, usually in "Pods" view, and would like to be able to see which pods communicate with each other and to be able to have the representative layout even while the connections aren't active. Is there anything currently in Scope to be able to do this, or is it something that would have to be newly implemented?

What I would like to see is an option that once two nodes have been seen to be connected (maybe just once, maybe more, it should probably be configurable) instead of having the edge just go away after the connection ends, it instead fades or becomes dotted or something so that the structure of the graph can maintained, and then becomes bold or solid once the connection is used again.

I don't think there's anything like that in the code at present.
Broadly the "endpoint reporter" has a set of active connections and a set of recently-closed connections: it reports the latter once per cycle (default 1 second) then clears it out.
So it's not conceptually hard to do as you describe.

However some servers open/close connections thousands of times a second so it would need to be careful managing the data structure. (see for instance #3452)

I think this is a dup of #1674.