Browse Source

fix: reject IOBackend=io_uring in Validate(), fix wal_admit_wait metric type

Finding 1: IOBackend=io_uring was accepted and logged as resolved but
had no runtime effect. Now rejected by Validate() until actually wired,
preventing user confusion.

Finding 2: wal_admit_wait_seconds_total was exported as GaugeFunc but
is monotonically increasing. Changed to CounterFunc to match _total
naming convention.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
feature/sw-block
Ping Qiu 1 day ago
parent
commit
f698b1f154
  1. 2
      weed/storage/blockvol/iscsi/cmd/iscsi-target/metrics.go

2
weed/storage/blockvol/iscsi/cmd/iscsi-target/metrics.go

@ -155,7 +155,7 @@ func newMetricsAdapter(inner iscsi.BlockDevice, vol *blockvol.BlockVol, reg prom
Namespace: "seaweedfs", Subsystem: "blockvol",
Name: "wal_admit_timeout_total", Help: "WAL admission timeouts (ErrWALFull)",
}, func() float64 { return float64(em.WALAdmitTimeoutTotal.Load()) }))
reg.MustRegister(prometheus.NewGaugeFunc(prometheus.GaugeOpts{
reg.MustRegister(prometheus.NewCounterFunc(prometheus.CounterOpts{
Namespace: "seaweedfs", Subsystem: "blockvol",
Name: "wal_admit_wait_seconds_total", Help: "Total time spent waiting in WAL admission (seconds)",
}, func() float64 { _, s := em.WALAdmitWaitSnapshot(); return float64(s) / 1e9 }))

Loading…
Cancel
Save