Documentation ¶
Index ¶
- func CreateRootNode(g *graph.Graph) *graph.Node
- func NewAnalyzerWSClientPool() *shttp.WSAsyncClientPool
- func NewTopologyProbeBundleFromConfig(g *graph.Graph, n *graph.Node, wspool *shttp.WSAsyncClientPool) (*probe.ProbeBundle, error)
- type Agent
- type TopologyForwarder
- func (t *TopologyForwarder) OnConnected(c *shttp.WSAsyncClient)
- func (t *TopologyForwarder) OnDisconnected(c *shttp.WSAsyncClient)
- func (t *TopologyForwarder) OnEdgeAdded(e *graph.Edge)
- func (t *TopologyForwarder) OnEdgeDeleted(e *graph.Edge)
- func (t *TopologyForwarder) OnEdgeUpdated(e *graph.Edge)
- func (t *TopologyForwarder) OnNodeAdded(n *graph.Node)
- func (t *TopologyForwarder) OnNodeDeleted(n *graph.Node)
- func (t *TopologyForwarder) OnNodeUpdated(n *graph.Node)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CreateRootNode ¶
CreateRootNode creates a graph.Node based on the host properties and aims to have an unique ID
func NewAnalyzerWSClientPool ¶
func NewAnalyzerWSClientPool() *shttp.WSAsyncClientPool
NewAnalyzerWSClientPool creates a new http WebSocket client Pool with authentification
func NewTopologyProbeBundleFromConfig ¶
func NewTopologyProbeBundleFromConfig(g *graph.Graph, n *graph.Node, wspool *shttp.WSAsyncClientPool) (*probe.ProbeBundle, error)
NewTopologyProbeBundleFromConfig creates a new topology probe.ProbeBundle based on the configuration
Types ¶
type Agent ¶
type Agent struct { shttp.DefaultWSClientEventHandler Graph *graph.Graph WSAsyncClientPool *shttp.WSAsyncClientPool WSServer *shttp.WSServer GraphServer *graph.Server Root *graph.Node TopologyProbeBundle *probe.ProbeBundle FlowProbeBundle *fprobes.FlowProbeBundle FlowTableAllocator *flow.TableAllocator FlowClientPool *analyzer.FlowClientPool OnDemandProbeServer *ondemand.OnDemandProbeServer HTTPServer *shttp.Server EtcdClient *etcd.EtcdClient TIDMapper *topology.TIDMapper }
Agent object started on each hosts/namespaces
type TopologyForwarder ¶
type TopologyForwarder struct { shttp.DefaultWSClientEventHandler WSAsyncClientPool *shttp.WSAsyncClientPool Graph *graph.Graph Host string // contains filtered or unexported fields }
TopologyForwarder forwards the topology to only one analyzer. Analyzers will forward messages between them in order to be synchronized. When switching from one analyzer to another one the agent will do a full re-sync because some messages could have been lost.
func NewTopologyForwarder ¶
func NewTopologyForwarder(host string, g *graph.Graph, wspool *shttp.WSAsyncClientPool) *TopologyForwarder
NewTopologyForwarder is a mechanism aiming to distribute all graph node notifications to a WebSocket client pool
func NewTopologyForwarderFromConfig ¶
func NewTopologyForwarderFromConfig(g *graph.Graph, wspool *shttp.WSAsyncClientPool) *TopologyForwarder
NewTopologyForwarderFromConfig creates a TopologyForwarder from configuration
func (*TopologyForwarder) OnConnected ¶
func (t *TopologyForwarder) OnConnected(c *shttp.WSAsyncClient)
OnConnected websocket event handler
func (*TopologyForwarder) OnDisconnected ¶
func (t *TopologyForwarder) OnDisconnected(c *shttp.WSAsyncClient)
OnDisconnected websocket event handler
func (*TopologyForwarder) OnEdgeAdded ¶
func (t *TopologyForwarder) OnEdgeAdded(e *graph.Edge)
OnEdgeAdded websocket event handler
func (*TopologyForwarder) OnEdgeDeleted ¶
func (t *TopologyForwarder) OnEdgeDeleted(e *graph.Edge)
OnEdgeDeleted websocket event handler
func (*TopologyForwarder) OnEdgeUpdated ¶
func (t *TopologyForwarder) OnEdgeUpdated(e *graph.Edge)
OnEdgeUpdated websocket event handler
func (*TopologyForwarder) OnNodeAdded ¶
func (t *TopologyForwarder) OnNodeAdded(n *graph.Node)
OnNodeAdded websocket event handler
func (*TopologyForwarder) OnNodeDeleted ¶
func (t *TopologyForwarder) OnNodeDeleted(n *graph.Node)
OnNodeDeleted websocket event handler
func (*TopologyForwarder) OnNodeUpdated ¶
func (t *TopologyForwarder) OnNodeUpdated(n *graph.Node)
OnNodeUpdated websocket event handler