Documentation
¶
Overview ¶
Package bcache provides access to statistics exposed by the bcache (Linux block cache).
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BcacheStats ¶
type BcacheStats struct {
AverageKeySize uint64
BtreeCacheSize uint64
CacheAvailablePercent uint64
Congested uint64
RootUsagePercent uint64
TreeDepth uint64
Internal InternalStats
FiveMin PeriodStats
Total PeriodStats
}
BcacheStats contains statistics tied to a bcache ID.
type BdevStats ¶
type BdevStats struct {
Name string
DirtyData uint64
FiveMin PeriodStats
Total PeriodStats
WritebackRateDebug WritebackRateDebugStats
}
BdevStats contains statistics for one backing device.
type CacheStats ¶
type CacheStats struct {
Name string
IOErrors uint64
MetadataWritten uint64
Written uint64
Priority PriorityStats
}
CacheStats contains statistics for one cache device.
type FS ¶
type FS struct {
// contains filtered or unexported fields
}
FS represents the pseudo-filesystem proc, which provides an interface to kernel data structures.
func NewDefaultFS ¶ added in v0.0.2
func NewDefaultFS() (FS, error)
NewDefaultFS returns a new Bcache using the default sys fs mount point. It will error if the mount point can't be read.
func NewFS ¶
func NewFS(mountPoint string) (FS, error)
NewFS returns a new Bcache using the given sys fs mount point. It will error if the mount point can't be read.
func (FS) Stats ¶
func (fs FS) Stats() ([]*Stats, error)
Stats is a wrapper around stats(). It returns full available statistics.
func (FS) StatsWithoutPriority ¶ added in v0.0.11
func (fs FS) StatsWithoutPriority() ([]*Stats, error)
StatsWithoutPriority is a wrapper around stats(). It ignores priority_stats file, because it is expensive to read.
type InternalStats ¶
type InternalStats struct {
ActiveJournalEntries uint64
BtreeNodes uint64
BtreeReadAverageDurationNanoSeconds uint64
CacheReadRaces uint64
}
InternalStats contains internal bcache statistics.
type PeriodStats ¶
type PeriodStats struct {
Bypassed uint64
CacheBypassHits uint64
CacheBypassMisses uint64
CacheHits uint64
CacheMissCollisions uint64
CacheMisses uint64
CacheReadaheads uint64
}
PeriodStats contains statistics for a time period (5 min or total).
type PriorityStats ¶
type PriorityStats struct {
UnusedPercent uint64
MetadataPercent uint64
}
PriorityStats contains statistics from the priority_stats file.
type Stats ¶
type Stats struct {
// The name of the bcache used to source these statistics.
Name string
Bcache BcacheStats
Bdevs []BdevStats
Caches []CacheStats
}
Stats contains bcache runtime statistics, parsed from /sys/fs/bcache/.
The names and meanings of each statistic were taken from bcache.txt and files in drivers/md/bcache in the Linux kernel source. Counters are uint64 (in-kernel counters are mostly unsigned long).
type WritebackRateDebugStats ¶ added in v0.1.0
type WritebackRateDebugStats struct {
Rate uint64
Dirty uint64
Target uint64
Proportional int64
Integral int64
Change int64
NextIO int64
}
WritebackRateDebugStats contains bcache writeback statistics.