Documentation ¶
Overview ¶
Package collector includes all individual collectors to gather and export system metrics.
Index ¶
- Variables
- func BusinessMonitorHttpHandle(w http.ResponseWriter, r *http.Request)
- func DisableDefaultCollectors()
- func InitNewLogger(logger log.Logger)
- func IsNoDataError(err error) bool
- func LogMonitorHttpHandle(w http.ResponseWriter, r *http.Request)
- func LogMonitorRowsHttpHandle(w http.ResponseWriter, r *http.Request)
- func ProcessMonitorHttpHandle(w http.ResponseWriter, r *http.Request)
- func StartBusinessAggCron()
- type Collector
- func BusinessMonitorCollector(logger log.Logger) (Collector, error)
- func NewARPCollector(logger log.Logger) (Collector, error)
- func NewBcacheCollector(logger log.Logger) (Collector, error)
- func NewBondingCollector(logger log.Logger) (Collector, error)
- func NewBtrfsCollector(logger log.Logger) (Collector, error)
- func NewBuddyinfoCollector(logger log.Logger) (Collector, error)
- func NewCPUCollector(logger log.Logger) (Collector, error)
- func NewCPUFreqCollector(logger log.Logger) (Collector, error)
- func NewConntrackCollector(logger log.Logger) (Collector, error)
- func NewDiskstatsCollector(logger log.Logger) (Collector, error)
- func NewEdacCollector(logger log.Logger) (Collector, error)
- func NewEntropyCollector(logger log.Logger) (Collector, error)
- func NewFileFDStatCollector(logger log.Logger) (Collector, error)
- func NewFilesystemCollector(logger log.Logger) (Collector, error)
- func NewHwMonCollector(logger log.Logger) (Collector, error)
- func NewIPVSCollector(logger log.Logger) (Collector, error)
- func NewInfiniBandCollector(logger log.Logger) (Collector, error)
- func NewInterruptsCollector(logger log.Logger) (Collector, error)
- func NewKsmdCollector(logger log.Logger) (Collector, error)
- func NewLoadavgCollector(logger log.Logger) (Collector, error)
- func NewLogMonitorCollector(logger log.Logger) (Collector, error)
- func NewLogindCollector(logger log.Logger) (Collector, error)
- func NewMdadmCollector(logger log.Logger) (Collector, error)
- func NewMeminfoCollector(logger log.Logger) (Collector, error)
- func NewMeminfoNumaCollector(logger log.Logger) (Collector, error)
- func NewMountStatsCollector(logger log.Logger) (Collector, error)
- func NewNFSdCollector(logger log.Logger) (Collector, error)
- func NewNetClassCollector(logger log.Logger) (Collector, error)
- func NewNetDevCollector(logger log.Logger) (Collector, error)
- func NewNetStatCollector(logger log.Logger) (Collector, error)
- func NewNfsCollector(logger log.Logger) (Collector, error)
- func NewNtpCollector(logger log.Logger) (Collector, error)
- func NewPerfCollector(logger log.Logger) (Collector, error)
- func NewPowerSupplyClassCollector(logger log.Logger) (Collector, error)
- func NewPressureStatsCollector(logger log.Logger) (Collector, error)
- func NewProcessMonitorCollector(logger log.Logger) (Collector, error)
- func NewProcessStatCollector(logger log.Logger) (Collector, error)
- func NewQdiscStatCollector(logger log.Logger) (Collector, error)
- func NewRaplCollector(logger log.Logger) (Collector, error)
- func NewRunitCollector(logger log.Logger) (Collector, error)
- func NewSchedstatCollector(logger log.Logger) (Collector, error)
- func NewSockStatCollector(logger log.Logger) (Collector, error)
- func NewSoftnetCollector(logger log.Logger) (Collector, error)
- func NewStatCollector(logger log.Logger) (Collector, error)
- func NewSupervisordCollector(logger log.Logger) (Collector, error)
- func NewSystemdCollector(logger log.Logger) (Collector, error)
- func NewTCPStatCollector(logger log.Logger) (Collector, error)
- func NewTextFileCollector(logger log.Logger) (Collector, error)
- func NewThermalZoneCollector(logger log.Logger) (Collector, error)
- func NewTimeCollector(logger log.Logger) (Collector, error)
- func NewTimexCollector(logger log.Logger) (Collector, error)
- func NewUDPqueuesCollector(logger log.Logger) (Collector, error)
- func NewWifiCollector(logger log.Logger) (Collector, error)
- func NewXFSCollector(logger log.Logger) (Collector, error)
- func NewZFSCollector(logger log.Logger) (Collector, error)
- func NewvmStatCollector(logger log.Logger) (Collector, error)
- type NodeCollector
Constants ¶
This section is empty.
Variables ¶
var BusinessCollectorStore businessCollectorStore
var ErrNoData = errors.New("collector returned no data")
ErrNoData indicates the collector found no data to collect, but had no other error.
var LogCollectorStore logCollectorStore
var ProcessCacheObj processCache
Functions ¶
func BusinessMonitorHttpHandle ¶
func BusinessMonitorHttpHandle(w http.ResponseWriter, r *http.Request)
func DisableDefaultCollectors ¶ added in v1.8.0
func DisableDefaultCollectors()
DisableDefaultCollectors sets the collector state to false for all collectors which have not been explicitly enabled on the command line.
func InitNewLogger ¶ added in v1.8.0
func IsNoDataError ¶ added in v1.8.0
func LogMonitorHttpHandle ¶
func LogMonitorHttpHandle(w http.ResponseWriter, r *http.Request)
func LogMonitorRowsHttpHandle ¶ added in v1.8.0
func LogMonitorRowsHttpHandle(w http.ResponseWriter, r *http.Request)
func ProcessMonitorHttpHandle ¶
func ProcessMonitorHttpHandle(w http.ResponseWriter, r *http.Request)
func StartBusinessAggCron ¶ added in v1.8.0
func StartBusinessAggCron()
Types ¶
type Collector ¶
type Collector interface { // Get new metrics and expose them via prometheus registry. Update(ch chan<- prometheus.Metric) error }
Collector is the interface a collector has to implement.
func NewARPCollector ¶
NewARPCollector returns a new Collector exposing ARP stats.
func NewBcacheCollector ¶
NewBcacheCollector returns a newly allocated bcacheCollector. It exposes a number of Linux bcache statistics.
func NewBondingCollector ¶
NewBondingCollector returns a newly allocated bondingCollector. It exposes the number of configured and active slave of linux bonding interfaces.
func NewBtrfsCollector ¶ added in v1.8.0
NewBtrfsCollector returns a new Collector exposing Btrfs statistics.
func NewBuddyinfoCollector ¶
NewBuddyinfoCollector returns a new Collector exposing buddyinfo stats.
func NewCPUCollector ¶
NewCPUCollector returns a new Collector exposing kernel/system statistics.
func NewCPUFreqCollector ¶
NewCPUFreqCollector returns a new Collector exposing kernel/system statistics.
func NewConntrackCollector ¶
NewConntrackCollector returns a new Collector exposing conntrack stats.
func NewDiskstatsCollector ¶
NewDiskstatsCollector returns a new Collector exposing disk device stats. Docs from https://www.kernel.org/doc/Documentation/iostats.txt
func NewEdacCollector ¶
NewEdacCollector returns a new Collector exposing edac stats.
func NewEntropyCollector ¶
NewEntropyCollector returns a new Collector exposing entropy stats.
func NewFileFDStatCollector ¶
NewFileFDStatCollector returns a new Collector exposing file-nr stats.
func NewFilesystemCollector ¶
NewFilesystemCollector returns a new Collector exposing filesystems stats.
func NewHwMonCollector ¶
NewHwMonCollector returns a new Collector exposing /sys/class/hwmon stats (similar to lm-sensors).
func NewIPVSCollector ¶
NewIPVSCollector sets up a new collector for IPVS metrics. It accepts the "procfs" config parameter to override the default proc location (/proc).
func NewInfiniBandCollector ¶
NewInfiniBandCollector returns a new Collector exposing InfiniBand stats.
func NewInterruptsCollector ¶
NewInterruptsCollector returns a new Collector exposing interrupts stats.
func NewKsmdCollector ¶
NewKsmdCollector returns a new Collector exposing kernel/system statistics.
func NewLoadavgCollector ¶
NewLoadavgCollector returns a new Collector exposing load average stats.
func NewLogindCollector ¶
NewLogindCollector returns a new Collector exposing logind statistics.
func NewMdadmCollector ¶
NewMdadmCollector returns a new Collector exposing raid statistics.
func NewMeminfoCollector ¶
NewMeminfoCollector returns a new Collector exposing memory stats.
func NewMeminfoNumaCollector ¶
NewMeminfoNumaCollector returns a new Collector exposing memory stats.
func NewMountStatsCollector ¶
NewMountStatsCollector returns a new Collector exposing NFS statistics.
func NewNFSdCollector ¶
NewNFSdCollector returns a new Collector exposing /proc/net/rpc/nfsd statistics.
func NewNetClassCollector ¶
NewNetClassCollector returns a new Collector exposing network class stats.
func NewNetDevCollector ¶
NewNetDevCollector returns a new Collector exposing network device stats.
func NewNetStatCollector ¶
NewNetStatCollector takes and returns a new Collector exposing network stats.
func NewNfsCollector ¶
NewNfsCollector returns a new Collector exposing NFS statistics.
func NewNtpCollector ¶
NewNtpCollector returns a new Collector exposing sanity of local NTP server. Default definition of "local" is: - collector.ntp.server address is a loopback address (or collector.ntp.server-is-mine flag is turned on) - the server is reachable with outgoin IP_TTL = 1
func NewPerfCollector ¶
NewPerfCollector returns a new perf based collector, it creates a profiler per CPU.
func NewPowerSupplyClassCollector ¶ added in v1.8.0
func NewPressureStatsCollector ¶
NewPressureStatsCollector returns a Collector exposing pressure stall information
func NewProcessStatCollector ¶
NewProcessStatCollector returns a new Collector exposing process data read from the proc filesystem.
func NewQdiscStatCollector ¶
NewQdiscStatCollector returns a new Collector exposing queuing discipline statistics.
func NewRaplCollector ¶ added in v1.8.0
NewRaplCollector returns a new Collector exposing RAPL metrics.
func NewRunitCollector ¶
NewRunitCollector returns a new Collector exposing runit statistics.
func NewSchedstatCollector ¶
NewSchedstatCollector returns a new Collector exposing task scheduler statistics
func NewSockStatCollector ¶
NewSockStatCollector returns a new Collector exposing socket stats.
func NewSoftnetCollector ¶ added in v1.8.0
NewSoftnetCollector returns a new Collector exposing softnet metrics.
func NewStatCollector ¶
NewStatCollector returns a new Collector exposing kernel/system statistics.
func NewSupervisordCollector ¶
NewSupervisordCollector returns a new Collector exposing supervisord statistics.
func NewSystemdCollector ¶
NewSystemdCollector returns a new Collector exposing systemd statistics.
func NewTCPStatCollector ¶
NewTCPStatCollector returns a new Collector exposing network stats.
func NewTextFileCollector ¶
NewTextFileCollector returns a new Collector exposing metrics read from files in the given textfile directory.
func NewThermalZoneCollector ¶
NewThermalZoneCollector returns a new Collector exposing kernel/system statistics.
func NewTimeCollector ¶
NewTimeCollector returns a new Collector exposing the current system time in seconds since epoch.
func NewTimexCollector ¶
NewTimexCollector returns a new Collector exposing adjtime(3) stats.
func NewUDPqueuesCollector ¶ added in v1.8.0
NewUDPqueuesCollector returns a new Collector exposing network udp queued bytes.
func NewWifiCollector ¶
NewWifiCollector returns a new Collector exposing Wifi statistics.
func NewXFSCollector ¶
NewXFSCollector returns a new Collector exposing XFS statistics.
func NewZFSCollector ¶
NewZFSCollector returns a new Collector exposing ZFS statistics.
type NodeCollector ¶
type NodeCollector struct { Collectors map[string]Collector // contains filtered or unexported fields }
NodeCollector implements the prometheus.Collector interface.
func NewNodeCollector ¶
func NewNodeCollector(logger log.Logger, filters ...string) (*NodeCollector, error)
NewNodeCollector creates a new NodeCollector.
func (NodeCollector) Collect ¶
func (n NodeCollector) Collect(ch chan<- prometheus.Metric)
Collect implements the prometheus.Collector interface.
func (NodeCollector) Describe ¶
func (n NodeCollector) Describe(ch chan<- *prometheus.Desc)
Describe implements the prometheus.Collector interface.
Source Files ¶
- arp_linux.go
- bcache_linux.go
- bonding_linux.go
- btrfs_linux.go
- buddyinfo.go
- business_monitor_linux.go
- collector.go
- conntrack_linux.go
- cpu_common.go
- cpu_linux.go
- cpufreq_linux.go
- diskstats_common.go
- diskstats_linux.go
- drbd_linux.go
- edac_linux.go
- entropy_linux.go
- filefd_linux.go
- filesystem_common.go
- filesystem_linux.go
- helper.go
- hwmon_linux.go
- infiniband_linux.go
- interrupts_common.go
- interrupts_linux.go
- ipvs_linux.go
- ksmd_linux.go
- loadavg.go
- loadavg_linux.go
- log_monitor_linux.go
- logind_linux.go
- mdadm_linux.go
- meminfo.go
- meminfo_linux.go
- meminfo_numa_linux.go
- mountstats_linux.go
- netclass_linux.go
- netdev_common.go
- netdev_linux.go
- netstat_linux.go
- nfs_linux.go
- nfsd_linux.go
- ntp.go
- paths.go
- perf_linux.go
- powersupplyclass.go
- pressure_linux.go
- process_monitor_linux.go
- processes_linux.go
- qdisc_linux.go
- rapl_linux.go
- runit.go
- schedstat_linux.go
- sockstat_linux.go
- softnet_linux.go
- stat_linux.go
- supervisord.go
- systemd_linux.go
- tcpstat_linux.go
- textfile.go
- thermal_zone_linux.go
- time.go
- timex.go
- udp_queues_linux.go
- uname.go
- uname_linux.go
- vmstat_linux.go
- wifi_linux.go
- xfs_linux.go
- zfs.go
- zfs_linux.go