Merge pull request #3401 from xiang90/more_metrics

more on storage metrics
release-2.2
Xiang Li 2015-08-31 09:55:29 -07:00
commit 3c1f80bdff
2 changed files with 14 additions and 1 deletions

View File

@ -70,7 +70,8 @@ func (ki *keyIndex) put(main int64, sub int64) {
ki.generations = append(ki.generations, generation{})
}
g := &ki.generations[len(ki.generations)-1]
if len(g.revs) == 0 {
if len(g.revs) == 0 { // create a new key
keysGauge.Inc()
g.created = rev
}
g.revs = append(g.revs, rev)
@ -86,6 +87,7 @@ func (ki *keyIndex) restore(created, modified revision, ver int64) {
ki.modified = modified
g := generation{created: created, ver: ver, revs: []revision{modified}}
ki.generations = append(ki.generations, g)
keysGauge.Inc()
}
// tombstone puts a revision, pointing to a tombstone, to the keyIndex.
@ -100,6 +102,7 @@ func (ki *keyIndex) tombstone(main int64, sub int64) error {
}
ki.put(main, sub)
ki.generations = append(ki.generations, generation{})
keysGauge.Dec()
return nil
}

View File

@ -51,6 +51,14 @@ var (
Help: "Total number of txns seen by this member.",
})
keysGauge = prometheus.NewGauge(
prometheus.GaugeOpts{
Namespace: "etcd",
Subsystem: "storage",
Name: "keys_total",
Help: "Total number of keys.",
})
indexCompactionPauseDurations = prometheus.NewHistogram(
prometheus.HistogramOpts{
Namespace: "etcd",
@ -86,6 +94,8 @@ func init() {
prometheus.MustRegister(rangeCounter)
prometheus.MustRegister(putCounter)
prometheus.MustRegister(deleteCounter)
prometheus.MustRegister(txnCounter)
prometheus.MustRegister(keysGauge)
prometheus.MustRegister(indexCompactionPauseDurations)
prometheus.MustRegister(dbCompactionPauseDurations)
prometheus.MustRegister(dbCompactionTotalDurations)