github.com/ethereum/go-ethereum@v1.16.1/triedb/pathdb/metrics.go (about) 1 // Copyright 2023 The go-ethereum Authors 2 // This file is part of the go-ethereum library. 3 // 4 // The go-ethereum library is free software: you can redistribute it and/or modify 5 // it under the terms of the GNU Lesser General Public License as published by 6 // the Free Software Foundation, either version 3 of the License, or 7 // (at your option) any later version. 8 // 9 // The go-ethereum library is distributed in the hope that it will be useful, 10 // but WITHOUT ANY WARRANTY; without even the implied warranty of 11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 // GNU Lesser General Public License for more details. 13 // 14 // You should have received a copy of the GNU Lesser General Public License 15 // along with the go-ethereum library. If not, see <http://www.gnu.org/licenses/>. 16 17 package pathdb 18 19 import "github.com/ethereum/go-ethereum/metrics" 20 21 var ( 22 cleanNodeHitMeter = metrics.NewRegisteredMeter("pathdb/clean/node/hit", nil) 23 cleanNodeMissMeter = metrics.NewRegisteredMeter("pathdb/clean/node/miss", nil) 24 cleanNodeReadMeter = metrics.NewRegisteredMeter("pathdb/clean/node/read", nil) 25 cleanNodeWriteMeter = metrics.NewRegisteredMeter("pathdb/clean/node/write", nil) 26 27 cleanStateHitMeter = metrics.NewRegisteredMeter("pathdb/clean/state/hit", nil) 28 cleanStateMissMeter = metrics.NewRegisteredMeter("pathdb/clean/state/miss", nil) 29 cleanStateReadMeter = metrics.NewRegisteredMeter("pathdb/clean/state/read", nil) 30 cleanStateWriteMeter = metrics.NewRegisteredMeter("pathdb/clean/state/write", nil) 31 32 dirtyNodeHitMeter = metrics.NewRegisteredMeter("pathdb/dirty/node/hit", nil) 33 dirtyNodeMissMeter = metrics.NewRegisteredMeter("pathdb/dirty/node/miss", nil) 34 dirtyNodeReadMeter = metrics.NewRegisteredMeter("pathdb/dirty/node/read", nil) 35 dirtyNodeWriteMeter = metrics.NewRegisteredMeter("pathdb/dirty/node/write", nil) 36 dirtyNodeHitDepthHist = metrics.NewRegisteredHistogram("pathdb/dirty/node/depth", nil, metrics.NewExpDecaySample(1028, 0.015)) 37 38 stateAccountInexMeter = metrics.NewRegisteredMeter("pathdb/state/account/inex/total", nil) 39 stateStorageInexMeter = metrics.NewRegisteredMeter("pathdb/state/storage/inex/total", nil) 40 stateAccountInexDiskMeter = metrics.NewRegisteredMeter("pathdb/state/account/inex/disk", nil) 41 stateStorageInexDiskMeter = metrics.NewRegisteredMeter("pathdb/state/storage/inex/disk", nil) 42 43 stateAccountExistMeter = metrics.NewRegisteredMeter("pathdb/state/account/exist/total", nil) 44 stateStorageExistMeter = metrics.NewRegisteredMeter("pathdb/state/storage/exist/total", nil) 45 stateAccountExistDiskMeter = metrics.NewRegisteredMeter("pathdb/state/account/exist/disk", nil) 46 stateStorageExistDiskMeter = metrics.NewRegisteredMeter("pathdb/state/storage/exist/disk", nil) 47 48 dirtyStateHitMeter = metrics.NewRegisteredMeter("pathdb/dirty/state/hit", nil) 49 dirtyStateMissMeter = metrics.NewRegisteredMeter("pathdb/dirty/state/miss", nil) 50 dirtyStateReadMeter = metrics.NewRegisteredMeter("pathdb/dirty/state/read", nil) 51 dirtyStateWriteMeter = metrics.NewRegisteredMeter("pathdb/dirty/state/write", nil) 52 dirtyStateHitDepthHist = metrics.NewRegisteredHistogram("pathdb/dirty/state/depth", nil, metrics.NewExpDecaySample(1028, 0.015)) 53 54 nodeCleanFalseMeter = metrics.NewRegisteredMeter("pathdb/clean/false", nil) 55 nodeDirtyFalseMeter = metrics.NewRegisteredMeter("pathdb/dirty/false", nil) 56 nodeDiskFalseMeter = metrics.NewRegisteredMeter("pathdb/disk/false", nil) 57 nodeDiffFalseMeter = metrics.NewRegisteredMeter("pathdb/diff/false", nil) 58 59 commitTimeTimer = metrics.NewRegisteredResettingTimer("pathdb/commit/time", nil) 60 commitNodesMeter = metrics.NewRegisteredMeter("pathdb/commit/nodes", nil) 61 commitAccountsMeter = metrics.NewRegisteredMeter("pathdb/commit/accounts", nil) 62 commitStoragesMeter = metrics.NewRegisteredMeter("pathdb/commit/slots", nil) 63 commitBytesMeter = metrics.NewRegisteredMeter("pathdb/commit/bytes", nil) 64 65 gcTrieNodeMeter = metrics.NewRegisteredMeter("pathdb/gc/node/count", nil) 66 gcTrieNodeBytesMeter = metrics.NewRegisteredMeter("pathdb/gc/node/bytes", nil) 67 gcAccountMeter = metrics.NewRegisteredMeter("pathdb/gc/account/count", nil) 68 gcAccountBytesMeter = metrics.NewRegisteredMeter("pathdb/gc/account/bytes", nil) 69 gcStorageMeter = metrics.NewRegisteredMeter("pathdb/gc/storage/count", nil) 70 gcStorageBytesMeter = metrics.NewRegisteredMeter("pathdb/gc/storage/bytes", nil) 71 72 historyBuildTimeMeter = metrics.NewRegisteredResettingTimer("pathdb/history/time", nil) 73 historyDataBytesMeter = metrics.NewRegisteredMeter("pathdb/history/bytes/data", nil) 74 historyIndexBytesMeter = metrics.NewRegisteredMeter("pathdb/history/bytes/index", nil) 75 76 indexHistoryTimer = metrics.NewRegisteredResettingTimer("pathdb/history/index/time", nil) 77 unindexHistoryTimer = metrics.NewRegisteredResettingTimer("pathdb/history/unindex/time", nil) 78 79 lookupAddLayerTimer = metrics.NewRegisteredResettingTimer("pathdb/lookup/add/time", nil) 80 lookupRemoveLayerTimer = metrics.NewRegisteredResettingTimer("pathdb/lookup/remove/time", nil) 81 82 historicalAccountReadTimer = metrics.NewRegisteredResettingTimer("pathdb/history/account/reads", nil) 83 historicalStorageReadTimer = metrics.NewRegisteredResettingTimer("pathdb/history/storage/reads", nil) 84 ) 85 86 // Metrics in generation 87 var ( 88 generatedAccountMeter = metrics.NewRegisteredMeter("pathdb/generation/account/generated", nil) 89 recoveredAccountMeter = metrics.NewRegisteredMeter("pathdb/generation/account/recovered", nil) 90 wipedAccountMeter = metrics.NewRegisteredMeter("pathdb/generation/account/wiped", nil) 91 missallAccountMeter = metrics.NewRegisteredMeter("pathdb/generation/account/missall", nil) 92 generatedStorageMeter = metrics.NewRegisteredMeter("pathdb/generation/storage/generated", nil) 93 recoveredStorageMeter = metrics.NewRegisteredMeter("pathdb/generation/storage/recovered", nil) 94 wipedStorageMeter = metrics.NewRegisteredMeter("pathdb/generation/storage/wiped", nil) 95 missallStorageMeter = metrics.NewRegisteredMeter("pathdb/generation/storage/missall", nil) 96 danglingStorageMeter = metrics.NewRegisteredMeter("pathdb/generation/storage/dangling", nil) 97 successfulRangeProofMeter = metrics.NewRegisteredMeter("pathdb/generation/proof/success", nil) 98 failedRangeProofMeter = metrics.NewRegisteredMeter("pathdb/generation/proof/failure", nil) 99 100 accountProveCounter = metrics.NewRegisteredCounter("pathdb/generation/duration/account/prove", nil) 101 accountTrieReadCounter = metrics.NewRegisteredCounter("pathdb/generation/duration/account/trieread", nil) 102 accountSnapReadCounter = metrics.NewRegisteredCounter("pathdb/generation/duration/account/snapread", nil) 103 accountWriteCounter = metrics.NewRegisteredCounter("pathdb/generation/duration/account/write", nil) 104 storageProveCounter = metrics.NewRegisteredCounter("pathdb/generation/duration/storage/prove", nil) 105 storageTrieReadCounter = metrics.NewRegisteredCounter("pathdb/generation/duration/storage/trieread", nil) 106 storageSnapReadCounter = metrics.NewRegisteredCounter("pathdb/generation/duration/storage/snapread", nil) 107 storageWriteCounter = metrics.NewRegisteredCounter("pathdb/generation/duration/storage/write", nil) 108 storageCleanCounter = metrics.NewRegisteredCounter("state/snapshot/generation/duration/storage/clean", nil) 109 )