update procfs to latest (#1335)
Updates for procfs refactoring Signed-off-by: Paul Gier <pgier@redhat.com>
This commit is contained in:
parent
c7abeae816
commit
86f9079429
33 changed files with 1966 additions and 1382 deletions
|
|
@ -21,7 +21,6 @@ import (
|
|||
// https://godoc.org/github.com/prometheus/client_golang/prometheus
|
||||
"github.com/prometheus/client_golang/prometheus"
|
||||
"github.com/prometheus/procfs/bcache"
|
||||
"github.com/prometheus/procfs/sysfs"
|
||||
)
|
||||
|
||||
func init() {
|
||||
|
|
@ -30,13 +29,13 @@ func init() {
|
|||
|
||||
// A bcacheCollector is a Collector which gathers metrics from Linux bcache.
|
||||
type bcacheCollector struct {
|
||||
fs sysfs.FS
|
||||
fs bcache.FS
|
||||
}
|
||||
|
||||
// NewBcacheCollector returns a newly allocated bcacheCollector.
|
||||
// It exposes a number of Linux bcache statistics.
|
||||
func NewBcacheCollector() (Collector, error) {
|
||||
fs, err := sysfs.NewFS(*sysPath)
|
||||
fs, err := bcache.NewFS(*sysPath)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("failed to open sysfs: %v", err)
|
||||
}
|
||||
|
|
@ -49,7 +48,7 @@ func NewBcacheCollector() (Collector, error) {
|
|||
// Update reads and exposes bcache stats.
|
||||
// It implements the Collector interface.
|
||||
func (c *bcacheCollector) Update(ch chan<- prometheus.Metric) error {
|
||||
stats, err := c.fs.BcacheStats()
|
||||
stats, err := c.fs.Stats()
|
||||
if err != nil {
|
||||
return fmt.Errorf("failed to retrieve bcache stats: %v", err)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -20,7 +20,6 @@ import (
|
|||
|
||||
"github.com/prometheus/client_golang/prometheus"
|
||||
"github.com/prometheus/common/log"
|
||||
"github.com/prometheus/procfs"
|
||||
"github.com/prometheus/procfs/nfs"
|
||||
)
|
||||
|
||||
|
|
@ -29,7 +28,7 @@ const (
|
|||
)
|
||||
|
||||
type nfsCollector struct {
|
||||
fs procfs.FS
|
||||
fs nfs.FS
|
||||
nfsNetReadsDesc *prometheus.Desc
|
||||
nfsNetConnectionsDesc *prometheus.Desc
|
||||
nfsRPCOperationsDesc *prometheus.Desc
|
||||
|
|
@ -44,7 +43,7 @@ func init() {
|
|||
|
||||
// NewNfsCollector returns a new Collector exposing NFS statistics.
|
||||
func NewNfsCollector() (Collector, error) {
|
||||
fs, err := procfs.NewFS(*procPath)
|
||||
fs, err := nfs.NewFS(*procPath)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("failed to open procfs: %v", err)
|
||||
}
|
||||
|
|
@ -91,7 +90,7 @@ func NewNfsCollector() (Collector, error) {
|
|||
}
|
||||
|
||||
func (c *nfsCollector) Update(ch chan<- prometheus.Metric) error {
|
||||
stats, err := c.fs.NFSClientRPCStats()
|
||||
stats, err := c.fs.ClientRPCStats()
|
||||
if err != nil {
|
||||
if os.IsNotExist(err) {
|
||||
log.Debugf("Not collecting NFS metrics: %s", err)
|
||||
|
|
|
|||
|
|
@ -19,14 +19,13 @@ import (
|
|||
|
||||
"github.com/prometheus/client_golang/prometheus"
|
||||
"github.com/prometheus/common/log"
|
||||
"github.com/prometheus/procfs"
|
||||
"github.com/prometheus/procfs/nfs"
|
||||
)
|
||||
|
||||
// A nfsdCollector is a Collector which gathers metrics from /proc/net/rpc/nfsd.
|
||||
// See: https://www.svennd.be/nfsd-stats-explained-procnetrpcnfsd/
|
||||
type nfsdCollector struct {
|
||||
fs procfs.FS
|
||||
fs nfs.FS
|
||||
requestsDesc *prometheus.Desc
|
||||
}
|
||||
|
||||
|
|
@ -40,7 +39,7 @@ const (
|
|||
|
||||
// NewNFSdCollector returns a new Collector exposing /proc/net/rpc/nfsd statistics.
|
||||
func NewNFSdCollector() (Collector, error) {
|
||||
fs, err := procfs.NewFS(*procPath)
|
||||
fs, err := nfs.NewFS(*procPath)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("failed to open procfs: %v", err)
|
||||
}
|
||||
|
|
@ -57,7 +56,7 @@ func NewNFSdCollector() (Collector, error) {
|
|||
|
||||
// Update implements Collector.
|
||||
func (c *nfsdCollector) Update(ch chan<- prometheus.Metric) error {
|
||||
stats, err := c.fs.NFSdServerRPCStats()
|
||||
stats, err := c.fs.ServerRPCStats()
|
||||
if err != nil {
|
||||
if os.IsNotExist(err) {
|
||||
log.Debugf("Not collecting NFSd metrics: %s", err)
|
||||
|
|
|
|||
|
|
@ -17,13 +17,12 @@ import (
|
|||
"fmt"
|
||||
|
||||
"github.com/prometheus/client_golang/prometheus"
|
||||
"github.com/prometheus/procfs/sysfs"
|
||||
"github.com/prometheus/procfs/xfs"
|
||||
)
|
||||
|
||||
// An xfsCollector is a Collector which gathers metrics from XFS filesystems.
|
||||
type xfsCollector struct {
|
||||
fs sysfs.FS
|
||||
fs xfs.FS
|
||||
}
|
||||
|
||||
func init() {
|
||||
|
|
@ -32,7 +31,7 @@ func init() {
|
|||
|
||||
// NewXFSCollector returns a new Collector exposing XFS statistics.
|
||||
func NewXFSCollector() (Collector, error) {
|
||||
fs, err := sysfs.NewFS(*sysPath)
|
||||
fs, err := xfs.NewFS(*procPath, *sysPath)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("failed to open sysfs: %v", err)
|
||||
}
|
||||
|
|
@ -44,7 +43,7 @@ func NewXFSCollector() (Collector, error) {
|
|||
|
||||
// Update implements Collector.
|
||||
func (c *xfsCollector) Update(ch chan<- prometheus.Metric) error {
|
||||
stats, err := c.fs.XFSStats()
|
||||
stats, err := c.fs.SysStats()
|
||||
if err != nil {
|
||||
return fmt.Errorf("failed to retrieve XFS stats: %v", err)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue