cmd/mount: disable shared metrics by no-bgjob (#6530)

Signed-off-by: jiefenghuang <jiefeng@juicedata.io>
This commit is contained in:
jiefenghuang
2025-12-05 15:19:39 +08:00
committed by GitHub
parent 1e897d86da
commit 0ee97c30db
3 changed files with 21 additions and 11 deletions

View File

@@ -412,6 +412,9 @@ func getChunkConf(c *cli.Context, format *meta.Format) *chunk.Config {
func initBackgroundTasks(c *cli.Context, vfsConf *vfs.Config, metaConf *meta.Config, m meta.Meta, blob object.ObjectStorage, registerer prometheus.Registerer, registry *prometheus.Registry) {
metricsAddr := exposeMetrics(c, registerer, registry)
m.InitMetrics(registerer)
if !metaConf.NoBGJob {
m.InitSharedMetrics(registerer)
}
vfs.InitMetrics(registerer)
vfsConf.Port.PrometheusAgent = metricsAddr
if c.IsSet("consul") {

View File

@@ -264,9 +264,9 @@ type baseMeta struct {
groupQuotas map[uint64]*Quota // gid -> quota
quotaMetricMu sync.Mutex
dirQuotaMetricKeys map[uint64] bool
userQuotaMetricKeys map[uint64] bool
groupQuotaMetricKeys map[uint64] bool
dirQuotaMetricKeys map[uint64]bool
userQuotaMetricKeys map[uint64]bool
groupQuotaMetricKeys map[uint64]bool
freeMu sync.Mutex
freeInodes freeID
@@ -459,21 +459,16 @@ func newBaseMeta(addr string, conf *Config) *baseMeta {
}
}
func (m *baseMeta) InitMetrics(reg prometheus.Registerer) {
// InitSharedMetrics initialize the metrics that are same for all clients.
func (m *baseMeta) InitSharedMetrics(reg prometheus.Registerer) {
if reg == nil {
return
}
reg.MustRegister(m.usedSpaceG)
reg.MustRegister(m.usedInodesG)
reg.MustRegister(m.totalSpaceG)
reg.MustRegister(m.totalInodesG)
reg.MustRegister(m.txDist)
reg.MustRegister(m.txRestart)
reg.MustRegister(m.opDist)
reg.MustRegister(m.opCount)
reg.MustRegister(m.opDuration)
// Register quota metrics
reg.MustRegister(m.dirQuotaMaxSpaceG)
reg.MustRegister(m.dirQuotaMaxInodesG)
reg.MustRegister(m.dirQuotaUsedSpaceG)
@@ -516,6 +511,17 @@ func (m *baseMeta) InitMetrics(reg prometheus.Registerer) {
}()
}
func (m *baseMeta) InitMetrics(reg prometheus.Registerer) {
if reg == nil {
return
}
reg.MustRegister(m.txDist)
reg.MustRegister(m.txRestart)
reg.MustRegister(m.opDist)
reg.MustRegister(m.opCount)
reg.MustRegister(m.opDuration)
}
func (m *baseMeta) timeit(method string, start time.Time) {
used := time.Since(start).Seconds()
m.opDist.Observe(used)

View File

@@ -526,6 +526,7 @@ type Meta interface {
// getBase return the base engine.
getBase() *baseMeta
InitMetrics(registerer prometheus.Registerer)
InitSharedMetrics(registerer prometheus.Registerer)
SetFacl(ctx Context, ino Ino, aclType uint8, n *aclAPI.Rule) syscall.Errno
GetFacl(ctx Context, ino Ino, aclType uint8, n *aclAPI.Rule) syscall.Errno