summaryrefslogtreecommitdiffstats
path: root/src/go/collectors/go.d.plugin/modules/geth/charts.go
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/go/collectors/go.d.plugin/modules/geth/charts.go220
1 files changed, 220 insertions, 0 deletions
diff --git a/src/go/collectors/go.d.plugin/modules/geth/charts.go b/src/go/collectors/go.d.plugin/modules/geth/charts.go
new file mode 100644
index 000000000..316631739
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/geth/charts.go
@@ -0,0 +1,220 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
+package geth
+
+import "github.com/netdata/netdata/go/go.d.plugin/agent/module"
+
+type (
+ Charts = module.Charts
+ Chart = module.Chart
+ Dims = module.Dims
+ Dim = module.Dim
+)
+
+var charts = Charts{
+ chartAncientChainData.Copy(),
+ chartChaindataDisk.Copy(),
+ chartAncientChainDataRate.Copy(),
+ chartChaindataDiskRate.Copy(),
+ chartChainDataSize.Copy(),
+ chartChainHead.Copy(),
+ chartP2PNetwork.Copy(),
+ chartNumberOfPeers.Copy(),
+ chartp2pDialsServes.Copy(),
+ chartReorgs.Copy(),
+ chartReorgsBlocks.Copy(),
+ chartGoRoutines.Copy(),
+ chartTxPoolCurrent.Copy(),
+ chartTxPoolQueued.Copy(),
+ chartTxPoolPending.Copy(),
+ chartRpcInformation.Copy(),
+}
+
+var (
+ chartAncientChainDataRate = Chart{
+ ID: "chaindata_ancient_rate",
+ Title: "Ancient Chaindata rate",
+ Units: "bytes/s",
+ Fam: "chaindata",
+ Ctx: "geth.eth_db_chaindata_ancient_io_rate",
+ Dims: Dims{
+ {ID: ethDbChainDataAncientRead, Name: "reads", Algo: "incremental"},
+ {ID: ethDbChainDataAncientWrite, Name: "writes", Mul: -1, Algo: "incremental"},
+ },
+ }
+
+ chartAncientChainData = Chart{
+ ID: "chaindata_ancient",
+ Title: "Session ancient Chaindata",
+ Units: "bytes",
+ Fam: "chaindata",
+ Ctx: "geth.eth_db_chaindata_ancient_io",
+ Dims: Dims{
+ {ID: ethDbChainDataAncientRead, Name: "reads"},
+ {ID: ethDbChainDataAncientWrite, Name: "writes", Mul: -1},
+ },
+ }
+ chartChaindataDisk = Chart{
+ ID: "chaindata_disk",
+ Title: "Session chaindata on disk",
+ Units: "bytes",
+ Fam: "chaindata",
+ Ctx: "geth.eth_db_chaindata_disk_io",
+ Dims: Dims{
+ {ID: ethDbChaindataDiskRead, Name: "reads"},
+ {ID: ethDbChainDataDiskWrite, Name: "writes", Mul: -1},
+ },
+ }
+ chartGoRoutines = Chart{
+ ID: "goroutines",
+ Title: "Number of goroutines",
+ Units: "goroutines",
+ Fam: "goroutines",
+ Ctx: "geth.goroutines",
+ Dims: Dims{
+ {ID: goRoutines, Name: "goroutines"},
+ },
+ }
+ chartChaindataDiskRate = Chart{
+ ID: "chaindata_disk_date",
+ Title: "On disk Chaindata rate",
+ Units: "bytes/s",
+ Fam: "chaindata",
+ Ctx: "geth.eth_db_chaindata_disk_io_rate",
+ Dims: Dims{
+ {ID: ethDbChaindataDiskRead, Name: "reads", Algo: "incremental"},
+ {ID: ethDbChainDataDiskWrite, Name: "writes", Mul: -1, Algo: "incremental"},
+ },
+ }
+ chartChainDataSize = Chart{
+ ID: "chaindata_db_size",
+ Title: "Chaindata Size",
+ Units: "bytes",
+ Fam: "chaindata",
+ Ctx: "geth.chaindata_db_size",
+ Dims: Dims{
+ {ID: ethDbChainDataDiskSize, Name: "levelDB"},
+ {ID: ethDbChainDataAncientSize, Name: "ancientDB"},
+ },
+ }
+ chartChainHead = Chart{
+ ID: "chainhead_overall",
+ Title: "Chainhead",
+ Units: "block",
+ Fam: "chainhead",
+ Ctx: "geth.chainhead",
+ Dims: Dims{
+ {ID: chainHeadBlock, Name: "block"},
+ {ID: chainHeadReceipt, Name: "receipt"},
+ {ID: chainHeadHeader, Name: "header"},
+ },
+ }
+ chartTxPoolPending = Chart{
+ ID: "txpoolpending",
+ Title: "Pending Transaction Pool",
+ Units: "transactions",
+ Fam: "tx_pool",
+ Ctx: "geth.tx_pool_pending",
+ Dims: Dims{
+ {ID: txPoolInvalid, Name: "invalid"},
+ {ID: txPoolPending, Name: "pending"},
+ {ID: txPoolLocal, Name: "local"},
+ {ID: txPoolPendingDiscard, Name: " discard"},
+ {ID: txPoolNofunds, Name: "no funds"},
+ {ID: txPoolPendingRatelimit, Name: "ratelimit"},
+ {ID: txPoolPendingReplace, Name: "replace"},
+ },
+ }
+ chartTxPoolCurrent = Chart{
+ ID: "txpoolcurrent",
+ Title: "Transaction Pool",
+ Units: "transactions",
+ Fam: "tx_pool",
+ Ctx: "geth.tx_pool_current",
+ Dims: Dims{
+ {ID: txPoolInvalid, Name: "invalid"},
+ {ID: txPoolPending, Name: "pending"},
+ {ID: txPoolLocal, Name: "local"},
+ {ID: txPoolNofunds, Name: "pool"},
+ },
+ }
+ chartTxPoolQueued = Chart{
+ ID: "txpoolqueued",
+ Title: "Queued Transaction Pool",
+ Units: "transactions",
+ Fam: "tx_pool",
+ Ctx: "geth.tx_pool_queued",
+ Dims: Dims{
+ {ID: txPoolQueuedDiscard, Name: "discard"},
+ {ID: txPoolQueuedEviction, Name: "eviction"},
+ {ID: txPoolQueuedNofunds, Name: "no_funds"},
+ {ID: txPoolQueuedRatelimit, Name: "ratelimit"},
+ },
+ }
+ chartP2PNetwork = Chart{
+ ID: "p2p_network",
+ Title: "P2P bandwidth",
+ Units: "bytes/s",
+ Fam: "p2p_bandwidth",
+ Ctx: "geth.p2p_bandwidth",
+ Dims: Dims{
+ {ID: p2pIngress, Name: "ingress", Algo: "incremental"},
+ {ID: p2pEgress, Name: "egress", Mul: -1, Algo: "incremental"},
+ },
+ }
+ chartReorgs = Chart{
+ ID: "reorgs_executed",
+ Title: "Executed Reorgs",
+ Units: "reorgs",
+ Fam: "reorgs",
+ Ctx: "geth.reorgs",
+ Dims: Dims{
+ {ID: reorgsExecuted, Name: "executed"},
+ },
+ }
+ chartReorgsBlocks = Chart{
+ ID: "reorgs_blocks",
+ Title: "Blocks Added/Removed from Reorg",
+ Units: "blocks",
+ Fam: "reorgs",
+ Ctx: "geth.reorgs_blocks",
+ Dims: Dims{
+ {ID: reorgsAdd, Name: "added"},
+ {ID: reorgsDropped, Name: "dropped"},
+ },
+ }
+
+ chartNumberOfPeers = Chart{
+ ID: "p2p_peers_number",
+ Title: "Number of Peers",
+ Units: "peers",
+ Fam: "p2p_peers",
+ Ctx: "geth.p2p_peers",
+ Dims: Dims{
+ {ID: p2pPeers, Name: "peers"},
+ },
+ }
+
+ chartp2pDialsServes = Chart{
+ ID: "p2p_dials_serves",
+ Title: "P2P Serves and Dials",
+ Units: "calls/s",
+ Fam: "p2p_peers",
+ Ctx: "geth.p2p_peers_calls",
+ Dims: Dims{
+ {ID: p2pDials, Name: "dials", Algo: "incremental"},
+ {ID: p2pServes, Name: "serves", Algo: "incremental"},
+ },
+ }
+ chartRpcInformation = Chart{
+ ID: "rpc_calls",
+ Title: "rpc calls",
+ Units: "calls/s",
+ Fam: "rpc",
+ Ctx: "geth.rpc_calls",
+ Dims: Dims{
+ {ID: rpcFailure, Name: "failed", Algo: "incremental"},
+ {ID: rpcSuccess, Name: "successful", Algo: "incremental"},
+ },
+ }
+)