Documentation ¶
Index ¶
- Constants
- func LoadProfile() (*ebpf.CollectionSpec, error)
- func LoadProfileObjects(obj interface{}, opts *ebpf.CollectionOptions) error
- type PidOp
- type ProfileGlobalConfigT
- type ProfileMapSpecs
- type ProfileMaps
- type ProfileObjects
- type ProfilePidConfig
- type ProfilePidEvent
- type ProfileProgramSpecs
- type ProfilePrograms
- type ProfileSampleKey
- type ProfileSpecs
- type ProfilingType
- type SampleKeyFlag
Constants ¶
const MapNamePIDs = "pids"
Variables ¶
This section is empty.
Functions ¶
func LoadProfile ¶
func LoadProfile() (*ebpf.CollectionSpec, error)
LoadProfile returns the embedded CollectionSpec for Profile.
func LoadProfileObjects ¶
func LoadProfileObjects(obj interface{}, opts *ebpf.CollectionOptions) error
LoadProfileObjects loads Profile and converts it into a struct.
The following types are suitable as obj argument:
*ProfileObjects *ProfilePrograms *ProfileMaps
See ebpf.CollectionSpec.LoadAndAssign documentation for details.
Types ¶
type ProfileGlobalConfigT ¶ added in v0.4.3
type ProfileGlobalConfigT struct{ NsPidIno uint64 }
type ProfileMapSpecs ¶
type ProfileMapSpecs struct { Counts *ebpf.MapSpec `ebpf:"counts"` Events *ebpf.MapSpec `ebpf:"events"` Pids *ebpf.MapSpec `ebpf:"pids"` Progs *ebpf.MapSpec `ebpf:"progs"` Stacks *ebpf.MapSpec `ebpf:"stacks"` }
ProfileMapSpecs contains maps before they are loaded into the kernel.
It can be passed ebpf.CollectionSpec.Assign.
type ProfileMaps ¶
type ProfileMaps struct { Counts *ebpf.Map `ebpf:"counts"` Events *ebpf.Map `ebpf:"events"` Pids *ebpf.Map `ebpf:"pids"` Progs *ebpf.Map `ebpf:"progs"` Stacks *ebpf.Map `ebpf:"stacks"` }
ProfileMaps contains all maps after they have been loaded into the kernel.
It can be passed to LoadProfileObjects or ebpf.CollectionSpec.LoadAndAssign.
func (*ProfileMaps) Close ¶
func (m *ProfileMaps) Close() error
type ProfileObjects ¶
type ProfileObjects struct { ProfilePrograms ProfileMaps }
ProfileObjects contains all objects after they have been loaded into the kernel.
It can be passed to LoadProfileObjects or ebpf.CollectionSpec.LoadAndAssign.
func (*ProfileObjects) Close ¶
func (o *ProfileObjects) Close() error
type ProfilePidConfig ¶
type ProfilePidEvent ¶
type ProfileProgramSpecs ¶
type ProfileProgramSpecs struct { DisassociateCtty *ebpf.ProgramSpec `ebpf:"disassociate_ctty"` DoPerfEvent *ebpf.ProgramSpec `ebpf:"do_perf_event"` Exec *ebpf.ProgramSpec `ebpf:"exec"` }
ProfileSpecs contains programs before they are loaded into the kernel.
It can be passed ebpf.CollectionSpec.Assign.
type ProfilePrograms ¶
type ProfilePrograms struct { DisassociateCtty *ebpf.Program `ebpf:"disassociate_ctty"` DoPerfEvent *ebpf.Program `ebpf:"do_perf_event"` Exec *ebpf.Program `ebpf:"exec"` }
ProfilePrograms contains all programs after they have been loaded into the kernel.
It can be passed to LoadProfileObjects or ebpf.CollectionSpec.LoadAndAssign.
func (*ProfilePrograms) Close ¶
func (p *ProfilePrograms) Close() error
type ProfileSampleKey ¶
type ProfileSpecs ¶
type ProfileSpecs struct { ProfileProgramSpecs ProfileMapSpecs }
ProfileSpecs contains maps and programs before they are loaded into the kernel.
It can be passed ebpf.CollectionSpec.Assign.
type ProfilingType ¶
type ProfilingType uint8
var ( ProfilingTypeUnknown ProfilingType = 1 ProfilingTypeFramepointers ProfilingType = 2 ProfilingTypePython ProfilingType = 3 ProfilingTypeError ProfilingType = 4 )
type SampleKeyFlag ¶ added in v0.4.3
type SampleKeyFlag uint32
var ( SampleKeyFlagPythonStack SampleKeyFlag = 1 SampleKeyFlagStackTruncated SampleKeyFlag = 2 )