small tsdb fixes (#6616)

* tsdb: register compactions_skipped_total

That metric was not registered.

I also reordered the metrics in the list.

* tsdb: display correct error when WAL can't be read

Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
This commit is contained in:
Julien Pivotto 2020-01-13 23:15:45 +01:00 committed by Brian Brazil
parent 5ade524a1b
commit 398bd84d6f

View file

@ -155,15 +155,15 @@ type dbMetrics struct {
symbolTableSize prometheus.GaugeFunc symbolTableSize prometheus.GaugeFunc
reloads prometheus.Counter reloads prometheus.Counter
reloadsFailed prometheus.Counter reloadsFailed prometheus.Counter
compactionsTriggered prometheus.Counter
compactionsFailed prometheus.Counter compactionsFailed prometheus.Counter
timeRetentionCount prometheus.Counter compactionsTriggered prometheus.Counter
compactionsSkipped prometheus.Counter compactionsSkipped prometheus.Counter
sizeRetentionCount prometheus.Counter
timeRetentionCount prometheus.Counter
startTime prometheus.GaugeFunc startTime prometheus.GaugeFunc
tombCleanTimer prometheus.Histogram tombCleanTimer prometheus.Histogram
blocksBytes prometheus.Gauge blocksBytes prometheus.Gauge
maxBytes prometheus.Gauge maxBytes prometheus.Gauge
sizeRetentionCount prometheus.Counter
} }
func newDBMetrics(db *DB, r prometheus.Registerer) *dbMetrics { func newDBMetrics(db *DB, r prometheus.Registerer) *dbMetrics {
@ -248,14 +248,15 @@ func newDBMetrics(db *DB, r prometheus.Registerer) *dbMetrics {
m.symbolTableSize, m.symbolTableSize,
m.reloads, m.reloads,
m.reloadsFailed, m.reloadsFailed,
m.timeRetentionCount,
m.compactionsTriggered,
m.compactionsFailed, m.compactionsFailed,
m.compactionsTriggered,
m.compactionsSkipped,
m.sizeRetentionCount,
m.timeRetentionCount,
m.startTime, m.startTime,
m.tombCleanTimer, m.tombCleanTimer,
m.blocksBytes, m.blocksBytes,
m.maxBytes, m.maxBytes,
m.sizeRetentionCount,
) )
} }
return m return m
@ -566,7 +567,7 @@ func Open(dir string, l log.Logger, r prometheus.Registerer, opts *Options) (db
if initErr := db.head.Init(minValidTime); initErr != nil { if initErr := db.head.Init(minValidTime); initErr != nil {
db.head.metrics.walCorruptionsTotal.Inc() db.head.metrics.walCorruptionsTotal.Inc()
level.Warn(db.logger).Log("msg", "encountered WAL read error, attempting repair", "err", err) level.Warn(db.logger).Log("msg", "encountered WAL read error, attempting repair", "err", initErr)
if err := wlog.Repair(initErr); err != nil { if err := wlog.Repair(initErr); err != nil {
return nil, errors.Wrap(err, "repair corrupted WAL") return nil, errors.Wrap(err, "repair corrupted WAL")
} }