forked from TrueCloudLab/frostfs-node
60 lines
1.4 KiB
Go
60 lines
1.4 KiB
Go
package writecache
|
|
|
|
import (
|
|
"time"
|
|
|
|
"git.frostfs.info/TrueCloudLab/frostfs-node/pkg/local_object_storage/shard/mode"
|
|
)
|
|
|
|
type StorageType string
|
|
|
|
func (t StorageType) String() string {
|
|
return string(t)
|
|
}
|
|
|
|
const (
|
|
StorageTypeUndefined StorageType = "null"
|
|
StorageTypeDB StorageType = "db"
|
|
StorageTypeFSTree StorageType = "fstree"
|
|
)
|
|
|
|
type Metrics interface {
|
|
SetShardID(string)
|
|
Get(d time.Duration, success bool, st StorageType)
|
|
Delete(d time.Duration, success bool, st StorageType)
|
|
Put(d time.Duration, success bool, st StorageType)
|
|
Flush(success bool, st StorageType)
|
|
Evict(st StorageType)
|
|
|
|
SetEstimateSize(db, fstree uint64)
|
|
SetMode(m mode.ComponentMode)
|
|
SetActualCounters(db, fstree uint64)
|
|
SetPath(path string)
|
|
Close()
|
|
}
|
|
|
|
func DefaultMetrics() Metrics { return metricsStub{} }
|
|
|
|
type metricsStub struct{}
|
|
|
|
func (metricsStub) SetShardID(string) {}
|
|
|
|
func (metricsStub) SetPath(string) {}
|
|
|
|
func (metricsStub) Get(time.Duration, bool, StorageType) {}
|
|
|
|
func (metricsStub) Delete(time.Duration, bool, StorageType) {}
|
|
|
|
func (metricsStub) Put(time.Duration, bool, StorageType) {}
|
|
|
|
func (metricsStub) SetEstimateSize(uint64, uint64) {}
|
|
|
|
func (metricsStub) SetMode(mode.ComponentMode) {}
|
|
|
|
func (metricsStub) SetActualCounters(uint64, uint64) {}
|
|
|
|
func (metricsStub) Flush(bool, StorageType) {}
|
|
|
|
func (metricsStub) Evict(StorageType) {}
|
|
|
|
func (metricsStub) Close() {}
|