Add Btrfs collector (#1512)
* Add procfs/btrfs to vendor folder * Add Btrfs collector Resolves #1100 Signed-off-by: Silke Hofstra <silke@slxh.eu>
This commit is contained in:
parent
ca1ac435ea
commit
8faa843fc4
9 changed files with 1272 additions and 0 deletions
67
vendor/github.com/prometheus/procfs/btrfs/btrfs.go
generated
vendored
Normal file
67
vendor/github.com/prometheus/procfs/btrfs/btrfs.go
generated
vendored
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
// Copyright 2019 The Prometheus Authors
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
// Package btrfs provides access to statistics exposed by Btrfs filesystems.
|
||||
package btrfs
|
||||
|
||||
// Stats contains statistics for a single Btrfs filesystem.
|
||||
// See Linux fs/btrfs/sysfs.c for more information.
|
||||
type Stats struct {
|
||||
UUID, Label string
|
||||
Allocation Allocation
|
||||
Devices map[string]*Device
|
||||
Features []string
|
||||
CloneAlignment uint64
|
||||
NodeSize uint64
|
||||
QuotaOverride uint64
|
||||
SectorSize uint64
|
||||
}
|
||||
|
||||
// Allocation contains allocation statistics for data, metadata and system data.
|
||||
type Allocation struct {
|
||||
GlobalRsvReserved, GlobalRsvSize uint64
|
||||
Data, Metadata, System *AllocationStats
|
||||
}
|
||||
|
||||
// AllocationStats contains allocation statistics for a data type.
|
||||
type AllocationStats struct {
|
||||
// Usage statistics
|
||||
DiskUsedBytes uint64
|
||||
DiskTotalBytes uint64
|
||||
MayUseBytes uint64
|
||||
PinnedBytes uint64
|
||||
TotalPinnedBytes uint64
|
||||
ReadOnlyBytes uint64
|
||||
ReservedBytes uint64
|
||||
UsedBytes uint64
|
||||
TotalBytes uint64
|
||||
|
||||
// Flags marking filesystem state
|
||||
// See Linux fs/btrfs/ctree.h for more information.
|
||||
Flags uint64
|
||||
|
||||
// Additional disk usage statistics depending on the disk layout.
|
||||
// At least one of these will exist and not be nil.
|
||||
Layouts map[string]*LayoutUsage
|
||||
}
|
||||
|
||||
// LayoutUsage contains additional usage statistics for a disk layout.
|
||||
type LayoutUsage struct {
|
||||
UsedBytes, TotalBytes uint64
|
||||
Ratio float64
|
||||
}
|
||||
|
||||
// Device contains information about a device that is part of a Btrfs filesystem.
|
||||
type Device struct {
|
||||
Size uint64
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue