ebpf

package
v1.7.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 23, 2021 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func SymbolToOffset

func SymbolToOffset(file, symbol string) (uint32, error)

Types

type EBPFContext

type EBPFContext struct {
}

func LoadEBPFTracingProgram

func LoadEBPFTracingProgram() (*EBPFContext, error)

func (*EBPFContext) AttachUprobe

func (ctx *EBPFContext) AttachUprobe(pid int, name string, offset uint32) error

func (*EBPFContext) Close

func (ctx *EBPFContext) Close()

func (*EBPFContext) GetBufferedTracepoints

func (ctx *EBPFContext) GetBufferedTracepoints() []RawUProbeParams

func (*EBPFContext) UpdateArgMap

func (ctx *EBPFContext) UpdateArgMap(key uint64, goidOffset int64, args []UProbeArgMap, gAddrOffset uint64) error

type RawUProbeParam

type RawUProbeParam struct {
	Pieces   []op.Piece
	RealType godwarf.Type
	Kind     reflect.Kind
	Len      int64
	Base     uint64
	Addr     uint64
	Data     []byte
}

type RawUProbeParams

type RawUProbeParams struct {
	FnAddr      int
	GoroutineID int
	InputParams []*RawUProbeParam
}

func ParseFunctionParameterList

func ParseFunctionParameterList(rawParamBytes []byte) RawUProbeParams

type UProbeArgMap

type UProbeArgMap struct {
	Offset int64        // Offset from the stackpointer.
	Size   int64        // Size in bytes.
	Kind   reflect.Kind // Kind of variable.
	Pieces []int        // Pieces of the variables as stored in registers.
	InReg  bool         // True if this param is contained in a register.
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL