Documentation
¶
Overview ¶
Package modules is all the module definitions for system-probe
Index ¶
Constants ¶
This section is empty.
Variables ¶
var All = sync.OnceValue(func() []*module.Factory { slices.SortStableFunc(all, func(a, b *module.Factory) int { return slices.Index(moduleOrder, a.Name) - slices.Index(moduleOrder, b.Name) }) return all })
All is the list of supported modules in the order specified by `moduleOrder`
var ComplianceModule = &module.Factory{ Name: config.ComplianceModule, ConfigNamespaces: []string{}, Fn: func(_ *sysconfigtypes.Config, _ module.FactoryDependencies) (module.Module, error) { return &complianceModule{}, nil }, NeedsEBPF: func() bool { return false }, }
ComplianceModule is a system-probe module that exposes an HTTP api to perform compliance checks that require more privileges than security-agent can offer.
For instance, being able to run cross-container checks at runtime by directly accessing the /proc/<pid>/root mount point.
var DiscoveryModule = &module.Factory{ Name: config.DiscoveryModule, ConfigNamespaces: []string{"discovery"}, Fn: discoverymodule.NewDiscoveryModule, NeedsEBPF: func() bool { return false }, OptionalEBPF: true, }
DiscoveryModule is the discovery module factory.
var EventMonitor = &module.Factory{ Name: config.EventMonitorModule, ConfigNamespaces: eventMonitorModuleConfigNamespaces, Fn: createEventMonitorModule, NeedsEBPF: func() bool { return !secconfig.IsEBPFLessModeEnabled() }, }
EventMonitor - Event monitor Factory
var LanguageDetectionModule = &module.Factory{ Name: config.LanguageDetectionModule, ConfigNamespaces: []string{"language_detection"}, Fn: func(_ *sysconfigtypes.Config, _ module.FactoryDependencies) (module.Module, error) { return &languageDetectionModule{ languageDetector: privileged.NewLanguageDetector(), }, nil }, NeedsEBPF: func() bool { return false }, }
LanguageDetectionModule is the language detection module factory
var Pinger = &module.Factory{ Name: config.PingModule, ConfigNamespaces: []string{"ping"}, Fn: func(_ *sysconfigtypes.Config, _ module.FactoryDependencies) (module.Module, error) { return &pinger{}, nil }, NeedsEBPF: func() bool { return false }, }
Pinger is a factory for NDMs Ping module
var Process = &module.Factory{ Name: config.ProcessModule, ConfigNamespaces: []string{}, Fn: func(_ *sysconfigtypes.Config, _ module.FactoryDependencies) (module.Module, error) { log.Infof("Creating process module for: %s", filepath.Base(os.Args[0])) p := procutil.NewProcessProbe(procutil.WithReturnZeroPermStats(false)) return &process{ probe: p, }, nil }, NeedsEBPF: func() bool { return false }, }
Process is a module that fetches process level data
var Traceroute = &module.Factory{ Name: config.TracerouteModule, ConfigNamespaces: tracerouteConfigNamespaces, Fn: createTracerouteModule, NeedsEBPF: func() bool { return false }, }
Traceroute is a factory for NDMs Traceroute module
Functions ¶
This section is empty.
Types ¶
This section is empty.