frostfs-node/internal/qos/stats.go
Dmitrii Stepanov af76350bfb
All checks were successful
Vulncheck / Vulncheck (push) Successful in 1m5s
Pre-commit hooks / Pre-commit (push) Successful in 1m29s
Build / Build Components (push) Successful in 1m58s
Tests and linters / Run gofumpt (push) Successful in 2m47s
Tests and linters / Tests (push) Successful in 3m18s
Tests and linters / Lint (push) Successful in 3m25s
Tests and linters / Staticcheck (push) Successful in 3m21s
Tests and linters / Tests with -race (push) Successful in 3m26s
Tests and linters / gopls check (push) Successful in 3m40s
OCI image / Build container images (push) Successful in 4m39s
[#1695] qos: Sort tags by asc
Change-Id: Ia23e392bb49d2536096de2ba07fc6f8fb7ac0489
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
2025-03-21 11:25:33 +00:00

29 lines
615 B
Go

package qos
const unknownStatsTag = "unknown"
var statTags = map[string]struct{}{
IOTagBackground.String(): {},
IOTagClient.String(): {},
IOTagCritical.String(): {},
IOTagInternal.String(): {},
IOTagPolicer.String(): {},
IOTagTreeSync.String(): {},
IOTagWritecache.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]
}