 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
      Index ¶
Constants ¶
const ( PID = "pid" Name = "name" PPID = "ppid" Cmdline = "cmdline" Threads = "threads" CPUUsage = "process_cpu_usage_percent" MemoryUsage = "process_memory_usage_bytes" OpenFilesCount = "open_files_count" )
We use these keys in node metadata
Variables ¶
var ( MetadataTemplates = report.MetadataTemplates{ PID: {ID: PID, Label: "PID", From: report.FromLatest, Datatype: "number", Priority: 1}, Cmdline: {ID: Cmdline, Label: "Command", From: report.FromLatest, Priority: 2}, PPID: {ID: PPID, Label: "Parent PID", From: report.FromLatest, Datatype: "number", Priority: 3}, Threads: {ID: Threads, Label: "# Threads", From: report.FromLatest, Datatype: "number", Priority: 4}, } MetricTemplates = report.MetricTemplates{ CPUUsage: {ID: CPUUsage, Label: "CPU", Format: report.PercentFormat, Priority: 1}, MemoryUsage: {ID: MemoryUsage, Label: "Memory", Format: report.FilesizeFormat, Priority: 2}, OpenFilesCount: {ID: OpenFilesCount, Label: "Open Files", Format: report.IntegerFormat, Priority: 3}, } )
Exposed for testing
Functions ¶
func GetDeltaTotalJiffies ¶ added in v0.12.0
GetDeltaTotalJiffies returns the number of jiffies that have passed since it was last called. In that respect, it is side-effect-ful.
Types ¶
type CachingWalker ¶
type CachingWalker struct {
	// contains filtered or unexported fields
}
    CachingWalker is a walker than caches a copy of the output from another Walker, and then allows other concurrent readers to Walk that copy.
func NewCachingWalker ¶
func NewCachingWalker(source Walker) *CachingWalker
NewCachingWalker returns a new CachingWalker
func (*CachingWalker) Name ¶ added in v0.10.0
func (*CachingWalker) Name() string
Name of this ticker, for metrics gathering
func (*CachingWalker) Tick ¶
func (c *CachingWalker) Tick() error
Tick updates cached copy of process list
func (*CachingWalker) Walk ¶
func (c *CachingWalker) Walk(f func(Process, Process)) error
Walk walks a cached copy of process list
type Jiffies ¶ added in v0.12.0
Jiffies is the type for the function used to fetch the elapsed jiffies.
type Process ¶
type Process struct {
	PID, PPID         int
	Name              string
	Cmdline           string
	Threads           int
	Jiffies           uint64
	RSSBytes          uint64
	RSSBytesLimit     uint64
	OpenFilesCount    int
	OpenFilesLimit    uint64
	IsWaitingInAccept bool
}
    Process represents a single process.
type Reporter ¶
type Reporter struct {
	// contains filtered or unexported fields
}
    Reporter generates Reports containing the Process topology.
func NewReporter ¶
func NewReporter(walker Walker, scope string, jiffies Jiffies, noCommandLineArguments bool) *Reporter
NewReporter makes a new Reporter.
func (Reporter) Name ¶ added in v0.10.0
Name of this reporter, for metrics gathering
type Tree ¶
Tree represents all processes on the machine.
       Source Files
      ¶
      Source Files
      ¶
    
- reporter.go
- tree.go
- walker.go
- walker_linux.go