mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-08-19 18:32:23 +00:00
swarm/shed: add metrics for db failures
This commit is contained in:
parent
1f7dd164bc
commit
215a92f11c
1 changed files with 30 additions and 10 deletions
|
|
@ -71,23 +71,39 @@ func NewDB(path string) (db *DB, err error) {
|
||||||
|
|
||||||
// Put wraps LevelDB Put method to increment metrics counter.
|
// Put wraps LevelDB Put method to increment metrics counter.
|
||||||
func (db *DB) Put(key []byte, value []byte) (err error) {
|
func (db *DB) Put(key []byte, value []byte) (err error) {
|
||||||
|
err = db.ldb.Put(key, value, nil)
|
||||||
|
if err != nil {
|
||||||
|
metrics.GetOrRegisterCounter("DB.putFail", nil).Inc(1)
|
||||||
|
return err
|
||||||
|
}
|
||||||
metrics.GetOrRegisterCounter("DB.put", nil).Inc(1)
|
metrics.GetOrRegisterCounter("DB.put", nil).Inc(1)
|
||||||
|
return nil
|
||||||
return db.ldb.Put(key, value, nil)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get wraps LevelDB Get method to increment metrics counter.
|
// Get wraps LevelDB Get method to increment metrics counter.
|
||||||
func (db *DB) Get(key []byte) (value []byte, err error) {
|
func (db *DB) Get(key []byte) (value []byte, err error) {
|
||||||
|
value, err = db.ldb.Get(key, nil)
|
||||||
|
if err != nil {
|
||||||
|
if err == leveldb.ErrNotFound {
|
||||||
|
metrics.GetOrRegisterCounter("DB.getNotFound", nil).Inc(1)
|
||||||
|
} else {
|
||||||
|
metrics.GetOrRegisterCounter("DB.getFail", nil).Inc(1)
|
||||||
|
}
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
metrics.GetOrRegisterCounter("DB.get", nil).Inc(1)
|
metrics.GetOrRegisterCounter("DB.get", nil).Inc(1)
|
||||||
|
return value, nil
|
||||||
return db.ldb.Get(key, nil)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Delete wraps LevelDB Delete method to increment metrics counter.
|
// Delete wraps LevelDB Delete method to increment metrics counter.
|
||||||
func (db *DB) Delete(key []byte) error {
|
func (db *DB) Delete(key []byte) (err error) {
|
||||||
|
err = db.ldb.Delete(key, nil)
|
||||||
|
if err != nil {
|
||||||
|
metrics.GetOrRegisterCounter("DB.deleteFail", nil).Inc(1)
|
||||||
|
return err
|
||||||
|
}
|
||||||
metrics.GetOrRegisterCounter("DB.delete", nil).Inc(1)
|
metrics.GetOrRegisterCounter("DB.delete", nil).Inc(1)
|
||||||
|
return nil
|
||||||
return db.ldb.Delete(key, nil)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// NewIterator wraps LevelDB NewIterator method to increment metrics counter.
|
// NewIterator wraps LevelDB NewIterator method to increment metrics counter.
|
||||||
|
|
@ -98,10 +114,14 @@ func (db *DB) NewIterator() iterator.Iterator {
|
||||||
}
|
}
|
||||||
|
|
||||||
// WriteBatch wraps LevelDB Write method to increment metrics counter.
|
// WriteBatch wraps LevelDB Write method to increment metrics counter.
|
||||||
func (db *DB) WriteBatch(batch *leveldb.Batch) error {
|
func (db *DB) WriteBatch(batch *leveldb.Batch) (err error) {
|
||||||
|
err = db.ldb.Write(batch, nil)
|
||||||
|
if err != nil {
|
||||||
|
metrics.GetOrRegisterCounter("DB.writebatchFail", nil).Inc(1)
|
||||||
|
return err
|
||||||
|
}
|
||||||
metrics.GetOrRegisterCounter("DB.writebatch", nil).Inc(1)
|
metrics.GetOrRegisterCounter("DB.writebatch", nil).Inc(1)
|
||||||
|
return nil
|
||||||
return db.ldb.Write(batch, nil)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Close closes LevelDB database.
|
// Close closes LevelDB database.
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue