Documentation
¶
Index ¶
Constants ¶
View Source
const ( ClassNameLen = 32 MethodNameLen = 64 PathLen = 128 )
View Source
const ( RequestUnwindInformation = 1 << 63 RequestProcessMappings = 1 << 62 RequestRefreshProcInfo = 1 << 61 )
Variables ¶
View Source
var (
ErrNeedMoreProfilingRounds = errors.New("not enough profiling rounds with this unwind info")
)
Functions ¶
Types ¶
type CPU ¶
type CPU struct {
// contains filtered or unexported fields
}
func NewCPUProfiler ¶
func NewCPUProfiler( logger log.Logger, reg prometheus.Registerer, processInfoManager profiler.ProcessInfoManager, profileConverter *pprof.Manager, profileWriter profiler.ProfileStore, config *Config, bpfProgramLoaded chan bool, ) *CPU
func (*CPU) LastProfileStartedAt ¶
func (*CPU) ProcessLastErrors ¶
type Config ¶
type Config struct {
ProfilingDuration time.Duration
ProfilingSamplingFrequency uint64
PerfEventBufferPollInterval time.Duration
PerfEventBufferProcessingInterval time.Duration
PerfEventBufferWorkerCount int
MemlockRlimit uint64
DebugProcessNames []string
DWARFUnwindingDisabled bool
DWARFUnwindingMixedModeEnabled bool
BPFVerboseLoggingEnabled bool
PythonUnwindingEnabled bool
RubyUnwindingEnabled bool
}
func (Config) DebugModeEnabled ¶ added in v0.24.0
type Symbol ¶ added in v0.24.0
type Symbol struct {
ClassName [ClassNameLen]byte
MethodName [MethodNameLen]byte
Path [PathLen]byte
Lineno uint32
}
Click to show internal directories.
Click to hide internal directories.