frostfs-node/internal/qos/stats.go
Dmitrii Stepanov 37263fb0e6
Some checks failed
DCO action / DCO (pull_request) Successful in 38s
Tests and linters / Run gofumpt (pull_request) Successful in 32s
Build / Build Components (pull_request) Failing after 42s
Vulncheck / Vulncheck (pull_request) Failing after 57s
Tests and linters / Tests (pull_request) Failing after 1m3s
Tests and linters / Staticcheck (pull_request) Failing after 1m8s
Tests and linters / Tests with -race (pull_request) Failing after 1m38s
Pre-commit hooks / Pre-commit (pull_request) Failing after 1m53s
Tests and linters / Lint (pull_request) Failing after 1m58s
Tests and linters / gopls check (pull_request) Failing after 3m9s
[#1695] qos: Add treesync tag
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2025-03-21 11:22:48 +03:00

29 lines
615 B
Go

package qos
const unknownStatsTag = "unknown"
var statTags = map[string]struct{}{
IOTagClient.String(): {},
IOTagBackground.String(): {},
IOTagTreeSync.String(): {},
IOTagInternal.String(): {},
IOTagPolicer.String(): {},
IOTagWritecache.String(): {},
IOTagCritical.String(): {},
unknownStatsTag: {},
}
func createStats() map[string]*stat {
result := make(map[string]*stat)
for tag := range statTags {
result[tag] = &stat{}
}
return result
}
func getStat(tag string, stats map[string]*stat) *stat {
if v, ok := stats[tag]; ok {
return v
}
return stats[unknownStatsTag]
}