Documentation ¶
Index ¶
Constants ¶
View Source
const ( // ErrCodeNotSupported code for NotSupported Errors. ErrCodeNotSupported int = iota + 1 ErrCodeNoPathDefined ErrCodeFsInfoFailed )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Metrics ¶
type Metrics struct { // Used represents the total bytes used by the Volume. // Note: For block devices this maybe more than the total size of the files. Used *resource.Quantity // Capacity represents the total capacity (bytes) of the volume's // underlying storage. For Volumes that share a filesystem with the host // (e.g. emptydir, hostpath) this is the size of the underlying storage, // and will not equal Used + Available as the fs is shared. Capacity *resource.Quantity // Available represents the storage space available (bytes) for the // Volume. For Volumes that share a filesystem with the host (e.g. // emptydir, hostpath), this is the available space on the underlying // storage, and is shared with host processes and other Volumes. Available *resource.Quantity // InodesUsed represents the total inodes used by the Volume. InodesUsed *resource.Quantity // Inodes represents the total number of inodes available in the volume. // For volumes that share a filesystem with the host (e.g. emptydir, hostpath), // this is the inodes available in the underlying storage, // and will not equal InodesUsed + InodesFree as the fs is shared. Inodes *resource.Quantity // InodesFree represent the inodes available for the volume. For Volumes that share // a filesystem with the host (e.g. emptydir, hostpath), this is the free inodes // on the underlying storage, and is shared with host processes and other volumes InodesFree *resource.Quantity // Normal volumes are available for use and operating optimally. // An abnormal volume does not meet these criteria. // This field is OPTIONAL. Only some csi drivers which support NodeServiceCapability_RPC_VOLUME_CONDITION // need to fill it. Abnormal *bool // The message describing the condition of the volume. // This field is OPTIONAL. Only some csi drivers which support capability_RPC_VOLUME_CONDITION // need to fill it. Message *string }
Metrics represents the used and available bytes of the Volume.
type MetricsError ¶
MetricsError to distinguish different Metrics Errors.
func NewFsInfoFailedError ¶
func NewFsInfoFailedError(err error) *MetricsError
NewFsInfoFailedError creates a new MetricsError with code FsInfoFailed.
func NewNoPathDefinedError ¶
func NewNoPathDefinedError() *MetricsError
NewNoPathDefinedError creates a new MetricsError with code NoPathDefined.
func (*MetricsError) Error ¶
func (e *MetricsError) Error() string
type MetricsProvider ¶
type MetricsProvider interface { // GetMetrics returns the Metrics for the Volume. Maybe expensive for // some implementations. GetMetrics() (*Metrics, error) }
MetricsProvider exposes metrics (e.g. used,available space) related to a Volume.
func NewMetricsStatFS ¶
func NewMetricsStatFS(path string) MetricsProvider
NewMetricsStatfs creates a new metricsStatFS with the Volume path.
Click to show internal directories.
Click to hide internal directories.