Documentation
¶
Overview ¶
Package eventmonitor holds eventmonitor related files
Package eventmonitor holds eventmonitor related files
Index ¶
- type CWSStatusProvider
- type EventConsumer
- type EventConsumerHandler
- type EventConsumerPostProbeStartHandler
- type EventMonitor
- func (m *EventMonitor) AddEventConsumerHandler(consumer EventConsumerHandler) error
- func (m *EventMonitor) Close()
- func (m *EventMonitor) GetStats() map[string]interface{}
- func (m *EventMonitor) Init() error
- func (m *EventMonitor) Register(_ *module.Router) error
- func (m *EventMonitor) RegisterEventConsumer(consumer EventConsumer)
- func (m *EventMonitor) SendStats()
- func (m *EventMonitor) SetCWSStatusProvider(provider CWSStatusProvider)
- func (m *EventMonitor) Start() error
- type Opts
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CWSStatusProvider ¶
CWSStatusProvider defines an interface to get CWS status
type EventConsumer ¶
type EventConsumer interface {
// IDer implements the ID method to return unique ID of the event consumer
probe.IDer
// Start starts the event consumer
Start() error
// Stop stops the event consumer
Stop()
}
EventConsumer provides a state interface for any consumers of the event_monitor module. Each event consumer should also implement the EventConsumerHandler interface to handle the retrieved events
type EventConsumerHandler ¶
type EventConsumerHandler interface {
probe.EventConsumerHandler
}
EventConsumerHandler provides an interface for event consumer handlers
type EventConsumerPostProbeStartHandler ¶
type EventConsumerPostProbeStartHandler interface {
// PostProbeStart is called after the event stream (the probe) is started
PostProbeStart() error
}
EventConsumerPostProbeStartHandler defines an event consumer that can respond to PostProbeStart events
type EventMonitor ¶
type EventMonitor struct {
sync.RWMutex
Probe *probe.Probe
Config *config.Config
StatsdClient statsd.ClientInterface
// contains filtered or unexported fields
}
EventMonitor represents the system-probe module for kernel event monitoring
func NewEventMonitor ¶
func NewEventMonitor(config *config.Config, secconfig *secconfig.Config, hostname string, opts Opts) (*EventMonitor, error)
NewEventMonitor instantiates an event monitoring system-probe module
func (*EventMonitor) AddEventConsumerHandler ¶
func (m *EventMonitor) AddEventConsumerHandler(consumer EventConsumerHandler) error
AddEventConsumerHandler registers an event handler
func (*EventMonitor) GetStats ¶
func (m *EventMonitor) GetStats() map[string]interface{}
GetStats returns statistics about the module
func (*EventMonitor) Register ¶
func (m *EventMonitor) Register(_ *module.Router) error
Register the event monitoring module
func (*EventMonitor) RegisterEventConsumer ¶
func (m *EventMonitor) RegisterEventConsumer(consumer EventConsumer)
RegisterEventConsumer registers an event consumer
func (*EventMonitor) SetCWSStatusProvider ¶
func (m *EventMonitor) SetCWSStatusProvider(provider CWSStatusProvider)
SetCWSStatusProvider sets the CWS status provider
Directories
¶
| Path | Synopsis |
|---|---|
|
Package config holds config related files
|
Package config holds config related files |
|
Package consumers contains consumers that can be readily used by other packages without having to implement the EventConsumerHandler interface manually: - ProcessConsumer (process.go): a consumer of process exec/exit events that can be subscribed to via callbacks
|
Package consumers contains consumers that can be readily used by other packages without having to implement the EventConsumerHandler interface manually: - ProcessConsumer (process.go): a consumer of process exec/exit events that can be subscribed to via callbacks |
|
Package examples provides an example of how to use the event monitor module using a basic consumer
|
Package examples provides an example of how to use the event monitor module using a basic consumer |
|
Package testutil provides utilities for using the event monitor in tests
|
Package testutil provides utilities for using the event monitor in tests |