Documentation
¶
Index ¶
- Variables
- func NewTopologyProbeBundleFromConfig(g *graph.Graph) (*probe.ProbeBundle, error)
- type FlowClient
- type FlowClientConn
- type FlowClientPool
- type FlowConnectionType
- type FlowServer
- type FlowServerConn
- func (a *FlowServerConn) Accept() (*FlowServerConn, error)
- func (a *FlowServerConn) Cleanup()
- func (a *FlowServerConn) Close()
- func (a *FlowServerConn) Mode() FlowConnectionType
- func (a *FlowServerConn) Read(data []byte) (int, error)
- func (a *FlowServerConn) SetDeadline(t time.Time)
- func (a *FlowServerConn) Timeout(err error) bool
- type Server
- type TopologyForwarder
- type TopologyForwarderPeer
- type TopologyServer
Constants ¶
This section is empty.
Variables ¶
Functions ¶
Types ¶
type FlowClient ¶ added in v0.10.0
func NewFlowClient ¶ added in v0.10.0
func NewFlowClient(addr string, port int) *FlowClient
func (*FlowClient) SendFlow ¶ added in v0.10.0
func (c *FlowClient) SendFlow(f *flow.Flow) error
func (*FlowClient) SendFlows ¶ added in v0.10.0
func (c *FlowClient) SendFlows(flows []*flow.Flow)
type FlowClientConn ¶ added in v0.10.0
type FlowClientConn struct {
// contains filtered or unexported fields
}
func NewFlowClientConn ¶ added in v0.10.0
func NewFlowClientConn(addr *net.UDPAddr) (a *FlowClientConn, err error)
func (*FlowClientConn) Close ¶ added in v0.10.0
func (a *FlowClientConn) Close()
func (*FlowClientConn) Write ¶ added in v0.10.0
func (a *FlowClientConn) Write(b []byte) (int, error)
type FlowClientPool ¶ added in v0.10.0
type FlowClientPool struct {
sync.RWMutex
shttp.DefaultWSClientEventHandler
// contains filtered or unexported fields
}
func NewFlowClientPool ¶ added in v0.10.0
func NewFlowClientPool(wspool *shttp.WSAsyncClientPool) *FlowClientPool
NewFlowClientPool returns a new FlowClientPool using the websocket connections to maintain the pool of client up to date according to the websocket connections status.
func (*FlowClientPool) Close ¶ added in v0.10.0
func (p *FlowClientPool) Close()
func (*FlowClientPool) OnConnected ¶ added in v0.10.0
func (p *FlowClientPool) OnConnected(c *shttp.WSAsyncClient)
func (*FlowClientPool) OnDisconnected ¶ added in v0.10.0
func (p *FlowClientPool) OnDisconnected(c *shttp.WSAsyncClient)
func (*FlowClientPool) SendFlows ¶ added in v0.10.0
func (p *FlowClientPool) SendFlows(flows []*flow.Flow)
type FlowConnectionType ¶ added in v0.10.0
type FlowConnectionType int
const ( UDP FlowConnectionType = 1 + iota TLS )
type FlowServer ¶ added in v0.10.0
type FlowServer struct {
Addr string
Port int
Storage storage.Storage
FlowEnhancerPipeline *flow.FlowEnhancerPipeline
// contains filtered or unexported fields
}
func NewFlowServer ¶ added in v0.10.0
func NewFlowServer(addr string, port int, g *graph.Graph, store storage.Storage, probe *probe.ProbeBundle) (*FlowServer, error)
func (*FlowServer) Start ¶ added in v0.10.0
func (s *FlowServer) Start()
func (*FlowServer) Stop ¶ added in v0.10.0
func (s *FlowServer) Stop()
type FlowServerConn ¶ added in v0.10.0
type FlowServerConn struct {
// contains filtered or unexported fields
}
func NewFlowServerConn ¶ added in v0.10.0
func NewFlowServerConn(addr *net.UDPAddr) (a *FlowServerConn, err error)
func (*FlowServerConn) Accept ¶ added in v0.10.0
func (a *FlowServerConn) Accept() (*FlowServerConn, error)
func (*FlowServerConn) Cleanup ¶ added in v0.10.0
func (a *FlowServerConn) Cleanup()
func (*FlowServerConn) Close ¶ added in v0.10.0
func (a *FlowServerConn) Close()
func (*FlowServerConn) Mode ¶ added in v0.10.0
func (a *FlowServerConn) Mode() FlowConnectionType
func (*FlowServerConn) Read ¶ added in v0.10.0
func (a *FlowServerConn) Read(data []byte) (int, error)
func (*FlowServerConn) SetDeadline ¶ added in v0.10.0
func (a *FlowServerConn) SetDeadline(t time.Time)
func (*FlowServerConn) Timeout ¶ added in v0.10.0
func (a *FlowServerConn) Timeout(err error) bool
type Server ¶
type Server struct {
HTTPServer *shttp.Server
WSServer *shttp.WSServer
TopologyForwarder *TopologyForwarder
TopologyServer *TopologyServer
AlertServer *alert.AlertServer
OnDemandClient *ondemand.OnDemandProbeClient
FlowServer *FlowServer
ProbeBundle *probe.ProbeBundle
Storage storage.Storage
EmbeddedEtcd *etcd.EmbeddedEtcd
EtcdClient *etcd.EtcdClient
// contains filtered or unexported fields
}
type TopologyForwarder ¶ added in v0.10.0
type TopologyForwarder struct {
shttp.DefaultWSServerEventHandler
Graph *graph.Graph
AuthOptions *shttp.AuthenticationOpts
// contains filtered or unexported fields
}
func NewTopologyForwarder ¶ added in v0.10.0
func NewTopologyForwarder(g *graph.Graph, server *shttp.WSServer, authOptions *shttp.AuthenticationOpts) *TopologyForwarder
func NewTopologyForwarderFromConfig ¶ added in v0.10.0
func NewTopologyForwarderFromConfig(g *graph.Graph, server *shttp.WSServer) *TopologyForwarder
func (*TopologyForwarder) ConnectAll ¶ added in v0.10.0
func (a *TopologyForwarder) ConnectAll()
func (*TopologyForwarder) DisconnectAll ¶ added in v0.10.0
func (a *TopologyForwarder) DisconnectAll()
type TopologyForwarderPeer ¶ added in v0.10.0
type TopologyForwarderPeer struct {
shttp.DefaultWSClientEventHandler
Addr string
Port int
Graph *graph.Graph
AuthOptions *shttp.AuthenticationOpts
// contains filtered or unexported fields
}
func (*TopologyForwarderPeer) OnConnected ¶ added in v0.10.0
func (p *TopologyForwarderPeer) OnConnected(c *shttp.WSAsyncClient)
OnConnected send the whole local graph the remote peer(analyzer) once connected
type TopologyServer ¶ added in v0.10.0
type TopologyServer struct {
sync.RWMutex
shttp.DefaultWSServerEventHandler
Graph *graph.Graph
GraphServer *graph.GraphServer
// contains filtered or unexported fields
}
func NewTopologyServer ¶ added in v0.10.0
func NewTopologyServer(host string, server *shttp.WSServer) (*TopologyServer, error)
func NewTopologyServerFromConfig ¶ added in v0.10.0
func NewTopologyServerFromConfig(server *shttp.WSServer) (*TopologyServer, error)
func (*TopologyServer) OnGraphMessage ¶ added in v0.11.0
func (*TopologyServer) OnUnregisterClient ¶ added in v0.10.0
func (t *TopologyServer) OnUnregisterClient(c *shttp.WSClient)
Source Files
¶
- flow_client.go
- flow_server.go
- probes.go
- server.go
- topology_forwarder.go
- topology_server.go
Click to show internal directories.
Click to hide internal directories.