Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 23 additions & 0 deletions internal/metrics/metrics.go
Original file line number Diff line number Diff line change
Expand Up @@ -152,3 +152,26 @@ var (
Help: "The current work mode (0 = backfill, 1 = live)",
})
)

// ClickHouse Insert Row Count Metrics
var (
ClickHouseMainStorageRowsInserted = promauto.NewCounter(prometheus.CounterOpts{
Name: "clickhouse_main_storage_rows_inserted_total",
Help: "The total number of rows inserted into ClickHouse main storage",
})

ClickHouseTransactionsInserted = promauto.NewCounter(prometheus.CounterOpts{
Name: "clickhouse_transactions_inserted_total",
Help: "The total number of transactions inserted into ClickHouse",
})

ClickHouseLogsInserted = promauto.NewCounter(prometheus.CounterOpts{
Name: "clickhouse_logs_inserted_total",
Help: "The total number of logs inserted into ClickHouse",
})

ClickHouseTracesInserted = promauto.NewCounter(prometheus.CounterOpts{
Name: "clickhouse_traces_inserted_total",
Help: "The total number of traces inserted into ClickHouse",
})
)
17 changes: 14 additions & 3 deletions internal/storage/clickhouse.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ import (
zLog "github.com/rs/zerolog/log"
config "github.com/thirdweb-dev/indexer/configs"
"github.com/thirdweb-dev/indexer/internal/common"
"github.com/thirdweb-dev/indexer/internal/metrics"
)

type ClickHouseConnector struct {
Expand Down Expand Up @@ -271,7 +272,7 @@ func (c *ClickHouseConnector) insertTransactions(txs []common.Transaction, opt I
return err
}
}

metrics.ClickHouseTransactionsInserted.Add(float64(len(txs)))
return nil
}

Expand Down Expand Up @@ -334,7 +335,7 @@ func (c *ClickHouseConnector) insertLogs(logs []common.Log, opt InsertOptions) e
return err
}
}

metrics.ClickHouseLogsInserted.Add(float64(len(logs)))
return nil
}

Expand Down Expand Up @@ -406,7 +407,7 @@ func (c *ClickHouseConnector) insertTraces(traces []common.Trace, opt InsertOpti
return err
}
}

metrics.ClickHouseTracesInserted.Add(float64(len(traces)))
return nil
}

Expand Down Expand Up @@ -1191,6 +1192,9 @@ func (c *ClickHouseConnector) InsertBlockData(data []common.BlockData) error {
}
defer batch.Close()

txsCount := 0
logsCount := 0
tracesCount := 0
for _, blockData := range data[i:end] {
block := blockData.Block

Expand Down Expand Up @@ -1221,6 +1225,7 @@ func (c *ClickHouseConnector) InsertBlockData(data []common.BlockData) error {

// Prepare transactions array
transactions := make([][]interface{}, len(blockData.Transactions))
txsCount += len(blockData.Transactions)
for j, tx := range blockData.Transactions {
transactions[j] = []interface{}{
tx.Hash,
Expand Down Expand Up @@ -1259,6 +1264,7 @@ func (c *ClickHouseConnector) InsertBlockData(data []common.BlockData) error {

// Prepare logs array
logs := make([][]interface{}, len(blockData.Logs))
logsCount += len(blockData.Logs)
for j, log := range blockData.Logs {
logs[j] = []interface{}{
log.BlockNumber,
Expand All @@ -1278,6 +1284,7 @@ func (c *ClickHouseConnector) InsertBlockData(data []common.BlockData) error {

// Prepare traces array
traces := make([][]interface{}, len(blockData.Traces))
tracesCount += len(blockData.Traces)
for j, trace := range blockData.Traces {
traces[j] = []interface{}{
trace.BlockNumber,
Expand Down Expand Up @@ -1348,8 +1355,12 @@ func (c *ClickHouseConnector) InsertBlockData(data []common.BlockData) error {
zLog.Info().Err(err).Msgf("Failure while inserting block data, but insert still succeeded")
}
}
metrics.ClickHouseTransactionsInserted.Add(float64(txsCount))
metrics.ClickHouseLogsInserted.Add(float64(logsCount))
metrics.ClickHouseTracesInserted.Add(float64(tracesCount))
}

metrics.ClickHouseMainStorageRowsInserted.Add(float64(len(data)))
return nil
}

Expand Down