Documentation
¶
Index ¶
- Constants
- func CreateNetEvent(eventMeta bufferdecoder.NetEventMetadata, ctx procinfo.ProcessCtx, ...) trace.Event
- func GetCaptureEventsList(cfg Config) map[events.ID]eventConfig
- func GetEssentialEventsList() map[events.ID]eventConfig
- func MatchFilter(filters []string, argValStr string) bool
- func MergeErrors(cs ...<-chan error) <-chan error
- type CaptureConfig
- type Config
- type Filter
- type InitValues
- type NetIfaces
- type OutputConfig
- type Tracee
Constants ¶
const ( StructFopsPointer int = iota Iterate )
Variables ¶
This section is empty.
Functions ¶
func CreateNetEvent ¶
func CreateNetEvent(eventMeta bufferdecoder.NetEventMetadata, ctx procinfo.ProcessCtx, eventName string) trace.Event
CreateNetEvent creates and returns event 'eventName'
func GetCaptureEventsList ¶ added in v0.8.0
GetCaptureEventsList sets events used to capture data
func GetEssentialEventsList ¶ added in v0.8.0
GetEssentialEventsList sets the default events used by tracee
func MatchFilter ¶ added in v0.8.0
func MergeErrors ¶
MergeErrors merges multiple channels of errors. Based on https://blog.golang.org/pipelines.
Types ¶
type CaptureConfig ¶
type Config ¶
type Config struct {
Filter *Filter
Capture *CaptureConfig
Output *OutputConfig
Cache queue.CacheConfig
PerfBufferSize int
BlobPerfBufferSize int
Debug bool
BTFObjPath string
BPFObjPath string
BPFObjBytes []byte
KernelConfig *helpers.KernelConfig
ChanEvents chan trace.Event
ChanErrors chan error
ProcessInfo bool
OSInfo *helpers.OSInfo
Sockets runtime.Sockets
ContainersEnrich bool
// contains filtered or unexported fields
}
Config is a struct containing user defined configuration of tracee
type Filter ¶
type Filter struct {
EventsToTrace []events.ID
UIDFilter *filters.UIntFilter
PIDFilter *filters.UIntFilter
NewPidFilter *filters.BoolFilter
MntNSFilter *filters.UIntFilter
PidNSFilter *filters.UIntFilter
UTSFilter *filters.StringFilter
CommFilter *filters.StringFilter
ContFilter *filters.BoolFilter
NewContFilter *filters.BoolFilter
ContIDFilter *filters.ContIDFilter
RetFilter *filters.RetFilter
ArgFilter *filters.ArgFilter
ProcessTreeFilter *filters.ProcessTreeFilter
Follow bool
NetFilter *NetIfaces
}
type InitValues ¶ added in v0.8.1
type InitValues struct {
// contains filtered or unexported fields
}
InitValues determines if to initialize values that might be needed by eBPF programs
type NetIfaces ¶ added in v0.8.1
type NetIfaces struct {
Ifaces []string
}
func (*NetIfaces) Interfaces ¶ added in v0.8.1
type OutputConfig ¶
type Tracee ¶
type Tracee struct {
StackAddressesMap *bpf.BPFMap
FDArgPathMap *bpf.BPFMap
// contains filtered or unexported fields
}
Tracee traces system calls and system events using eBPF
func New ¶
New creates a new Tracee instance based on a given valid Config It is expected that New will not cause external system side effects (reads, writes, etc.)
func (*Tracee) Init ¶ added in v0.8.1
Initialize tracee instance and it's various subsystems, potentially performing external system operations to initialize them NOTE: any initialization logic, especially one that causes side effects, should go here and not New().
func (*Tracee) WaitForPipeline ¶
WaitForPipeline waits for results from all error channels.