Documentation
¶
Index ¶
- func AnnotateFrame(frame *StackFrame, moduleName string)
- type GoroutineCollector
- func (gc *GoroutineCollector) CollectorName() string
- func (gc *GoroutineCollector) Disable()
- func (gc *GoroutineCollector) DumpGoroutines()
- func (gc *GoroutineCollector) Enable()
- func (gc *GoroutineCollector) GetGoRoutineName(goId int64) (string, bool)
- func (gc *GoroutineCollector) InitCollector(controller ds.Controller, config any) error
- func (gc *GoroutineCollector) SetGoRoutineName(goId int64, name string)
- type ParsedGoRoutine
- type PreprocessedGoRoutineLines
- type StackFrame
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AnnotateFrame ¶
func AnnotateFrame(frame *StackFrame, moduleName string)
AnnotateFrame sets the IsImportant and IsSys flags on a stack frame based on the module name and package information
Types ¶
type GoroutineCollector ¶
type GoroutineCollector struct {
// contains filtered or unexported fields
}
GoroutineCollector implements the collector.Collector interface for goroutine collection
func GetInstance ¶
func GetInstance() *GoroutineCollector
GetInstance returns the singleton instance of GoroutineCollector
func (*GoroutineCollector) CollectorName ¶
func (gc *GoroutineCollector) CollectorName() string
CollectorName returns the unique name of the collector
func (*GoroutineCollector) Disable ¶
func (gc *GoroutineCollector) Disable()
func (*GoroutineCollector) DumpGoroutines ¶
func (gc *GoroutineCollector) DumpGoroutines()
DumpGoroutines dumps all goroutines and sends the information
func (*GoroutineCollector) Enable ¶
func (gc *GoroutineCollector) Enable()
Enable is called when the collector should start collecting data
func (*GoroutineCollector) GetGoRoutineName ¶
func (gc *GoroutineCollector) GetGoRoutineName(goId int64) (string, bool)
GetGoRoutineName gets the name for a goroutine
func (*GoroutineCollector) InitCollector ¶
func (gc *GoroutineCollector) InitCollector(controller ds.Controller, config any) error
InitCollector initializes the goroutine collector with a controller and configuration
func (*GoroutineCollector) SetGoRoutineName ¶
func (gc *GoroutineCollector) SetGoRoutineName(goId int64, name string)
SetGoRoutineName sets a name for a goroutine
type ParsedGoRoutine ¶
type ParsedGoRoutine = rpctypes.ParsedGoRoutine
func ParseGoRoutineStackTrace ¶
func ParseGoRoutineStackTrace(stackTrace string, moduleName string, goId int64, state string) (ParsedGoRoutine, error)
ParseGoRoutineStackTrace parses a Go routine stack trace string into a struct moduleName is the name of the module that the app belongs to, used to identify important frames goId and state are required parameters since the stacktrace no longer includes the goroutine header line
type PreprocessedGoRoutineLines ¶
type PreprocessedGoRoutineLines struct {
StackFrames []rawStackFrame // Stack frames, where each frame has a function line and optional file line
CreatedBy rawStackFrame // The "created by" information
}
PreprocessedGoRoutineLines represents a preprocessed goroutine stack trace
type StackFrame ¶
type StackFrame = rpctypes.StackFrame