diff --git a/disperser/cmd/dataapi/main.go b/disperser/cmd/dataapi/main.go index e49501b05c..0552563ff4 100644 --- a/disperser/cmd/dataapi/main.go +++ b/disperser/cmd/dataapi/main.go @@ -99,7 +99,7 @@ func RunDataApi(ctx *cli.Context) error { subgraphClient = dataapi.NewSubgraphClient(subgraphApi, logger) chainState = coreeth.NewChainState(tx, client) indexedChainState = thegraph.MakeIndexedChainState(config.ChainStateConfig, chainState, logger) - metrics = dataapi.NewMetrics(blobMetadataStore, config.MetricsConfig.HTTPPort, logger) + metrics = dataapi.NewMetrics(config.ServerVersion, blobMetadataStore, config.MetricsConfig.HTTPPort, logger) server = dataapi.NewServer( dataapi.Config{ ServerMode: config.ServerMode, diff --git a/disperser/dataapi/metrics.go b/disperser/dataapi/metrics.go index 58d8ce014b..4397277405 100644 --- a/disperser/dataapi/metrics.go +++ b/disperser/dataapi/metrics.go @@ -37,12 +37,14 @@ type Metrics struct { logger logging.Logger } -func NewMetrics(blobMetadataStore *blobstore.BlobMetadataStore, httpPort string, logger logging.Logger) *Metrics { +func NewMetrics(serverVersion uint, blobMetadataStore *blobstore.BlobMetadataStore, httpPort string, logger logging.Logger) *Metrics { namespace := "eigenda_dataapi" reg := prometheus.NewRegistry() reg.MustRegister(collectors.NewProcessCollector(collectors.ProcessCollectorOpts{})) reg.MustRegister(collectors.NewGoCollector()) - reg.MustRegister(NewDynamoDBCollector(blobMetadataStore, logger)) + if serverVersion == 1 { + reg.MustRegister(NewDynamoDBCollector(blobMetadataStore, logger)) + } metrics := &Metrics{ NumRequests: promauto.With(reg).NewCounterVec( prometheus.CounterOpts{ diff --git a/disperser/dataapi/server_test.go b/disperser/dataapi/server_test.go index 2672fb56f2..f43891e5d3 100644 --- a/disperser/dataapi/server_test.go +++ b/disperser/dataapi/server_test.go @@ -52,8 +52,9 @@ var ( config = dataapi.Config{ServerMode: "test", SocketAddr: ":8080", AllowOrigins: []string{"*"}, DisperserHostname: "localhost:32007", ChurnerHostname: "localhost:32009"} + serverVersion = uint(1) mockTx = &coremock.MockWriter{} - metrics = dataapi.NewMetrics(nil, "9001", mockLogger) + metrics = dataapi.NewMetrics(serverVersion, nil, "9001", mockLogger) opId0, _ = core.OperatorIDFromHex("e22dae12a0074f20b8fc96a0489376db34075e545ef60c4845d264a732568311") opId1, _ = core.OperatorIDFromHex("e23cae12a0074f20b8fc96a0489376db34075e545ef60c4845d264b732568312") mockChainState, _ = coremock.NewChainDataMock(map[uint8]map[core.OperatorID]int{ @@ -71,7 +72,7 @@ var ( 1: 10, 2: 10, }) - testDataApiServer = dataapi.NewServer(config, blobstore, prometheusClient, subgraphClient, mockTx, mockChainState, mockIndexedChainState, mockLogger, dataapi.NewMetrics(nil, "9001", mockLogger), &MockGRPCConnection{}, nil, nil) + testDataApiServer = dataapi.NewServer(config, blobstore, prometheusClient, subgraphClient, mockTx, mockChainState, mockIndexedChainState, mockLogger, dataapi.NewMetrics(serverVersion, nil, "9001", mockLogger), &MockGRPCConnection{}, nil, nil) expectedRequestedAt = uint64(5567830000000000000) expectedDataLength = 32 expectedBatchId = uint32(99) diff --git a/disperser/dataapi/v2/server_v2_test.go b/disperser/dataapi/v2/server_v2_test.go index 2f5aaa6768..be33b3483f 100644 --- a/disperser/dataapi/v2/server_v2_test.go +++ b/disperser/dataapi/v2/server_v2_test.go @@ -76,6 +76,7 @@ var ( dynamoClient dynamodb.Client + serverVersion = uint(2) mockLogger = testutils.GetLogger() blobstore = inmem.NewBlobStore() mockPrometheusApi = &prommock.MockPrometheusApi{} @@ -103,7 +104,7 @@ var ( 1: 10, 2: 10, }) - testDataApiServer = dataapi.NewServer(config, blobstore, prometheusClient, subgraphClient, mockTx, mockChainState, mockIndexedChainState, mockLogger, dataapi.NewMetrics(nil, "9001", mockLogger), &MockGRPCConnection{}, nil, nil) + testDataApiServer = dataapi.NewServer(config, blobstore, prometheusClient, subgraphClient, mockTx, mockChainState, mockIndexedChainState, mockLogger, dataapi.NewMetrics(serverVersion, nil, "9001", mockLogger), &MockGRPCConnection{}, nil, nil) operatorInfoV1 = &subgraph.IndexedOperatorInfo{ Id: "0xa96bfb4a7ca981ad365220f336dc5a3de0816ebd5130b79bbc85aca94bc9b6ac", @@ -223,7 +224,7 @@ func setup(m *testing.M) { panic("failed to create dynamodb client: " + err.Error()) } blobMetadataStore = blobstorev2.NewBlobMetadataStore(dynamoClient, logger, metadataTableName) - testDataApiServerV2 = serverv2.NewServerV2(config, blobMetadataStore, prometheusClient, subgraphClient, mockTx, mockChainState, mockIndexedChainState, mockLogger, dataapi.NewMetrics(nil, "9001", mockLogger)) + testDataApiServerV2 = serverv2.NewServerV2(config, blobMetadataStore, prometheusClient, subgraphClient, mockTx, mockChainState, mockIndexedChainState, mockLogger, dataapi.NewMetrics(serverVersion, nil, "9001", mockLogger)) } // makeCommitment returns a test hardcoded BlobCommitments