aboutsummaryrefslogtreecommitdiffstats
path: root/eth/backend.go
diff options
context:
space:
mode:
authorJeffrey Wilcke <geffobscura@gmail.com>2015-06-30 08:22:19 +0800
committerJeffrey Wilcke <geffobscura@gmail.com>2015-06-30 08:22:19 +0800
commit7625b07dd9a2a7b5c5a504c1276eea04596ac871 (patch)
treece2a757cd4e0591fc15815b2dfae528ae517d36e /eth/backend.go
parent72e2613a9fe3205fa5a67b72b832e03b2357ee88 (diff)
parent8f504063f465e0ca10c6bb53ee914d10a3d45c86 (diff)
downloadgo-tangerine-0.9.34.tar
go-tangerine-0.9.34.tar.gz
go-tangerine-0.9.34.tar.bz2
go-tangerine-0.9.34.tar.lz
go-tangerine-0.9.34.tar.xz
go-tangerine-0.9.34.tar.zst
go-tangerine-0.9.34.zip
Merge branch 'release/0.9.34'v0.9.34
Diffstat (limited to 'eth/backend.go')
-rw-r--r--eth/backend.go32
1 files changed, 32 insertions, 0 deletions
diff --git a/eth/backend.go b/eth/backend.go
index 37fe66abf..4644b8a93 100644
--- a/eth/backend.go
+++ b/eth/backend.go
@@ -11,6 +11,8 @@ import (
"strings"
"time"
+ "github.com/ethereum/go-ethereum/metrics"
+
"github.com/ethereum/ethash"
"github.com/ethereum/go-ethereum/accounts"
"github.com/ethereum/go-ethereum/common"
@@ -248,14 +250,44 @@ func New(config *Config) (*Ethereum, error) {
if err != nil {
return nil, fmt.Errorf("blockchain db err: %v", err)
}
+ if db, ok := blockDb.(*ethdb.LDBDatabase); ok {
+ db.GetTimer = metrics.NewTimer("eth/db/block/user/gets")
+ db.PutTimer = metrics.NewTimer("eth/db/block/user/puts")
+ db.MissMeter = metrics.NewMeter("eth/db/block/user/misses")
+ db.ReadMeter = metrics.NewMeter("eth/db/block/user/reads")
+ db.WriteMeter = metrics.NewMeter("eth/db/block/user/writes")
+ db.CompTimeMeter = metrics.NewMeter("eth/db/block/compact/time")
+ db.CompReadMeter = metrics.NewMeter("eth/db/block/compact/input")
+ db.CompWriteMeter = metrics.NewMeter("eth/db/block/compact/output")
+ }
stateDb, err := newdb(filepath.Join(config.DataDir, "state"))
if err != nil {
return nil, fmt.Errorf("state db err: %v", err)
}
+ if db, ok := stateDb.(*ethdb.LDBDatabase); ok {
+ db.GetTimer = metrics.NewTimer("eth/db/state/user/gets")
+ db.PutTimer = metrics.NewTimer("eth/db/state/user/puts")
+ db.MissMeter = metrics.NewMeter("eth/db/state/user/misses")
+ db.ReadMeter = metrics.NewMeter("eth/db/state/user/reads")
+ db.WriteMeter = metrics.NewMeter("eth/db/state/user/writes")
+ db.CompTimeMeter = metrics.NewMeter("eth/db/state/compact/time")
+ db.CompReadMeter = metrics.NewMeter("eth/db/state/compact/input")
+ db.CompWriteMeter = metrics.NewMeter("eth/db/state/compact/output")
+ }
extraDb, err := newdb(filepath.Join(config.DataDir, "extra"))
if err != nil {
return nil, fmt.Errorf("extra db err: %v", err)
}
+ if db, ok := extraDb.(*ethdb.LDBDatabase); ok {
+ db.GetTimer = metrics.NewTimer("eth/db/extra/user/gets")
+ db.PutTimer = metrics.NewTimer("eth/db/extra/user/puts")
+ db.MissMeter = metrics.NewMeter("eth/db/extra/user/misses")
+ db.ReadMeter = metrics.NewMeter("eth/db/extra/user/reads")
+ db.WriteMeter = metrics.NewMeter("eth/db/extra/user/writes")
+ db.CompTimeMeter = metrics.NewMeter("eth/db/extra/compact/time")
+ db.CompReadMeter = metrics.NewMeter("eth/db/extra/compact/input")
+ db.CompWriteMeter = metrics.NewMeter("eth/db/extra/compact/output")
+ }
nodeDb := filepath.Join(config.DataDir, "nodes")
// Perform database sanity checks