Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CPUStats

type CPUStats struct {
	CPU    string
	User   float64
	System float64
	Idle   float64
	Total  float64
}

    CPUStats represents stats related to cpu usage

    type CpuStats

    type CpuStats struct {
    	// contains filtered or unexported fields
    }

      CpuStats calculates cpu usage percentage

      func NewCpuStats

      func NewCpuStats() *CpuStats

        NewCpuStats returns a cpu stats calculator

        func (*CpuStats) Percent

        func (c *CpuStats) Percent(cpuTime float64) float64

          Percent calculates the cpu usage percentage based on the current cpu usage and the previous cpu usage where usage is given as time in nanoseconds spend in the cpu

          func (*CpuStats) TicksConsumed

          func (c *CpuStats) TicksConsumed(percent float64) float64

            TicksConsumed calculates the total ticks consumes by the process across all cpu cores

            type DeviceGroupStats

            type DeviceGroupStats = device.DeviceGroupStats

              DeviceGroupStats represents stats related to device group

              type DeviceStatsCollector

              type DeviceStatsCollector func() []*DeviceGroupStats

                DeviceStatsCollector is used to retrieve all the latest statistics for all devices.

                type DiskStats

                type DiskStats struct {
                	Device            string
                	Mountpoint        string
                	Size              uint64
                	Used              uint64
                	Available         uint64
                	UsedPercent       float64
                	InodesUsedPercent float64
                }

                  DiskStats represents stats related to disk usage

                  type HostCpuStatsCalculator

                  type HostCpuStatsCalculator struct {
                  	// contains filtered or unexported fields
                  }

                    HostCpuStatsCalculator calculates cpu usage percentages

                    func NewHostCpuStatsCalculator

                    func NewHostCpuStatsCalculator() *HostCpuStatsCalculator

                      NewHostCpuStatsCalculator returns a HostCpuStatsCalculator

                      func (*HostCpuStatsCalculator) Calculate

                      func (h *HostCpuStatsCalculator) Calculate(times cpu.TimesStat) (idle float64, user float64, system float64, total float64)

                        Calculate calculates the current cpu usage percentages

                        type HostStats

                        type HostStats struct {
                        	Memory           *MemoryStats
                        	CPU              []*CPUStats
                        	DiskStats        []*DiskStats
                        	AllocDirStats    *DiskStats
                        	DeviceStats      []*DeviceGroupStats
                        	Uptime           uint64
                        	Timestamp        int64
                        	CPUTicksConsumed float64
                        }

                          HostStats represents resource usage stats of the host running a Nomad client

                          type HostStatsCollector

                          type HostStatsCollector struct {
                          	// contains filtered or unexported fields
                          }

                            HostStatsCollector collects host resource usage stats

                            func NewHostStatsCollector

                            func NewHostStatsCollector(logger hclog.Logger, allocDir string, deviceStatsCollector DeviceStatsCollector) *HostStatsCollector

                              NewHostStatsCollector returns a HostStatsCollector. The allocDir is passed in so that we can present the disk related statistics for the mountpoint where the allocation directory lives

                              func (*HostStatsCollector) Collect

                              func (h *HostStatsCollector) Collect() error

                                Collect collects stats related to resource usage of a host

                                func (*HostStatsCollector) Stats

                                func (h *HostStatsCollector) Stats() *HostStats

                                  Stats returns the host stats that has been collected

                                  type MemoryStats

                                  type MemoryStats struct {
                                  	Total     uint64
                                  	Available uint64
                                  	Used      uint64
                                  	Free      uint64
                                  }

                                    MemoryStats represents stats related to virtual memory usage

                                    type NodeStatsCollector

                                    type NodeStatsCollector interface {
                                    	Collect() error
                                    	Stats() *HostStats
                                    }

                                      NodeStatsCollector is an interface which is used for the purposes of mocking the HostStatsCollector in the tests