agent

package
v0.13.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 12, 2017 License: Apache-2.0 Imports: 24 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateRootNode added in v0.9.0

func CreateRootNode(g *graph.Graph) *graph.Node

CreateRootNode creates a graph.Node based on the host properties and aims to have an unique ID

func NewAnalyzerWSJSONClientPool added in v0.13.0

func NewAnalyzerWSJSONClientPool() (*shttp.WSJSONClientPool, error)

NewAnalyzerWSJSONClientPool creates a new http WebSocket client Pool with authentification

func NewTopologyProbeBundleFromConfig added in v0.9.0

func NewTopologyProbeBundleFromConfig(g *graph.Graph, n *graph.Node) (*probe.ProbeBundle, error)

NewTopologyProbeBundleFromConfig creates a new topology probe.ProbeBundle based on the configuration

Types

type Agent

type Agent struct {
	shttp.DefaultWSSpeakerEventHandler
	// contains filtered or unexported fields
}

Agent object started on each hosts/namespaces

func NewAgent

func NewAgent() (*Agent, error)

NewAgent instanciates a new Agent aiming to launch probes (topology and flow)

func (*Agent) GetStatus added in v0.13.0

func (a *Agent) GetStatus() interface{}

GetStatus returns the status of an agent

func (*Agent) Start

func (a *Agent) Start()

Start the agent services

func (*Agent) Stop

func (a *Agent) Stop()

Stop agent services

type AgentStatus added in v0.13.0

type AgentStatus struct {
	Clients   map[string]shttp.WSConnStatus
	Analyzers map[string]AnalyzerConnStatus
}

AgentStatus represents the status of an agent

type AnalyzerConnStatus added in v0.13.0

type AnalyzerConnStatus struct {
	shttp.WSConnStatus
	IsMaster bool
}

AnalyzerConnStatus represents the status of a connection to an analyzer

type TopologyForwarder added in v0.12.0

type TopologyForwarder struct {
	// contains filtered or unexported fields
}

TopologyForwarder forwards the topology to only one master server. When switching from one analyzer to another one the agent does a full re-sync since some messages could have been lost.

func NewTopologyForwarder added in v0.12.0

func NewTopologyForwarder(host string, g *graph.Graph, pool shttp.WSJSONSpeakerPool) *TopologyForwarder

NewTopologyForwarder returns a new Graph forwarder which forwards event of the given graph to the given WebSocket JSON speakers.

func NewTopologyForwarderFromConfig added in v0.12.0

func NewTopologyForwarderFromConfig(g *graph.Graph, pool shttp.WSJSONSpeakerPool) *TopologyForwarder

NewTopologyForwarderFromConfig creates a TopologyForwarder from configuration

func (*TopologyForwarder) GetMaster added in v0.13.0

func (t *TopologyForwarder) GetMaster() shttp.WSSpeaker

GetMaster returns the current analyzer the agent is sending its events to

func (*TopologyForwarder) OnEdgeAdded added in v0.12.0

func (t *TopologyForwarder) OnEdgeAdded(e *graph.Edge)

OnEdgeAdded graph edge added event. Implements the GraphEventListener interface.

func (*TopologyForwarder) OnEdgeDeleted added in v0.12.0

func (t *TopologyForwarder) OnEdgeDeleted(e *graph.Edge)

OnEdgeDeleted graph edge deleted event. Implements the GraphEventListener interface.

func (*TopologyForwarder) OnEdgeUpdated added in v0.12.0

func (t *TopologyForwarder) OnEdgeUpdated(e *graph.Edge)

OnEdgeUpdated graph edge updated event. Implements the GraphEventListener interface.

func (*TopologyForwarder) OnNewMaster added in v0.13.0

func (t *TopologyForwarder) OnNewMaster(c shttp.WSSpeaker)

OnNewMaster is called by the master election mechanism when a new master is elected. In such case a "Re-sync" is triggerd in order to be in sync with the new master.

func (*TopologyForwarder) OnNodeAdded added in v0.12.0

func (t *TopologyForwarder) OnNodeAdded(n *graph.Node)

OnNodeAdded graph node added event. Implements the GraphEventListener interface.

func (*TopologyForwarder) OnNodeDeleted added in v0.12.0

func (t *TopologyForwarder) OnNodeDeleted(n *graph.Node)

OnNodeDeleted graph node deleted event. Implements the GraphEventListener interface.

func (*TopologyForwarder) OnNodeUpdated added in v0.12.0

func (t *TopologyForwarder) OnNodeUpdated(n *graph.Node)

OnNodeUpdated graph node updated event. Implements the GraphEventListener interface.

type TopologyServer added in v0.13.0

type TopologyServer struct {
	Graph *graph.Graph
	Pool  shttp.WSJSONSpeakerPool
}

TopologyServer serves Graph events through websocket connections. It forwards all the Graph events and handles specific websocket API calls. All the API calls handled by the server are of type graph.*MsgType.

func NewTopologyServer added in v0.13.0

func NewTopologyServer(g *graph.Graph, pool shttp.WSJSONSpeakerPool) *TopologyServer

NewTopologyServer returns a new graph server for the given graph and WSJSONSpeakerPool.

func (*TopologyServer) OnEdgeAdded added in v0.13.0

func (t *TopologyServer) OnEdgeAdded(e *graph.Edge)

OnEdgeAdded graph edge added event. Implements the GraphEventListener interface.

func (*TopologyServer) OnEdgeDeleted added in v0.13.0

func (t *TopologyServer) OnEdgeDeleted(e *graph.Edge)

OnEdgeDeleted graph edge deleted event. Implements the GraphEventListener interface.

func (*TopologyServer) OnEdgeUpdated added in v0.13.0

func (t *TopologyServer) OnEdgeUpdated(e *graph.Edge)

OnEdgeUpdated graph edge updated event. Implements the GraphEventListener interface.

func (*TopologyServer) OnNodeAdded added in v0.13.0

func (t *TopologyServer) OnNodeAdded(n *graph.Node)

OnNodeAdded graph node added event. Implements the GraphEventListener interface.

func (*TopologyServer) OnNodeDeleted added in v0.13.0

func (t *TopologyServer) OnNodeDeleted(n *graph.Node)

OnNodeDeleted graph node deleted event. Implements the GraphEventListener interface.

func (*TopologyServer) OnNodeUpdated added in v0.13.0

func (t *TopologyServer) OnNodeUpdated(n *graph.Node)

OnNodeUpdated graph node updated event. Implements the GraphEventListener interface.

func (*TopologyServer) OnWSJSONMessage added in v0.13.0

func (t *TopologyServer) OnWSJSONMessage(c shttp.WSSpeaker, msg *shttp.WSJSONMessage)

OnWSJSONMessage is called by the pool of Websocket JSON speakers. it Implements the shttp.WSJSONMessageHandler interface.

Source Files

  • agent.go
  • probes.go
  • topology_forwarder.go
  • topology_server.go

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL