From 80c23bf90535729722b9822a153c8c5e19571151 Mon Sep 17 00:00:00 2001 From: Pablo Baeyens Date: Wed, 26 Feb 2025 15:06:40 +0100 Subject: [PATCH 1/2] [chore] Some more fixes of component IDs --- .../elasticsearchexporter/integrationtest/datareceiver.go | 2 +- internal/otelarrow/test/e2e_test.go | 4 ++-- pkg/stanza/adapter/storage_test.go | 2 +- processor/routingprocessor/factory_test.go | 4 ++-- receiver/jmxreceiver/receiver.go | 7 ++++++- receiver/purefareceiver/receiver.go | 7 ++++++- receiver/purefbreceiver/metrics_receiver.go | 7 ++++++- receiver/simpleprometheusreceiver/receiver.go | 7 ++++++- 8 files changed, 30 insertions(+), 10 deletions(-) diff --git a/exporter/elasticsearchexporter/integrationtest/datareceiver.go b/exporter/elasticsearchexporter/integrationtest/datareceiver.go index 4b9ca0a2a571c..ab8a1d1cf2e77 100644 --- a/exporter/elasticsearchexporter/integrationtest/datareceiver.go +++ b/exporter/elasticsearchexporter/integrationtest/datareceiver.go @@ -88,7 +88,7 @@ func withBatcherEnabled(enabled bool) dataReceiverOption { func (es *esDataReceiver) Start(tc consumer.Traces, mc consumer.Metrics, lc consumer.Logs) error { factory := receiver.NewFactory( - component.MustNewType("mockelasticsearch"), + metadata.Type, createDefaultConfig, receiver.WithLogs(createLogsReceiver, component.StabilityLevelDevelopment), receiver.WithMetrics(createMetricsReceiver, component.StabilityLevelDevelopment), diff --git a/internal/otelarrow/test/e2e_test.go b/internal/otelarrow/test/e2e_test.go index b6300067b3ed6..2755cf9992a8e 100644 --- a/internal/otelarrow/test/e2e_test.go +++ b/internal/otelarrow/test/e2e_test.go @@ -169,13 +169,13 @@ func basicTestConfig(t *testing.T, tp testParams, cfgF CfgFunc) (*testConsumer, } receiver, err := rfact.CreateTraces(ctx, receiver.Settings{ - ID: component.MustNewID("otelarrowreceiver"), + ID: component.NewID(rfact.Type()), TelemetrySettings: recvTset, }, receiverCfg, testCon) require.NoError(t, err) exporter, err := efact.CreateTraces(ctx, exporter.Settings{ - ID: component.MustNewID("otelarrowexporter"), + ID: component.NewID(efact.Type()), TelemetrySettings: expTset, }, exporterCfg) require.NoError(t, err) diff --git a/pkg/stanza/adapter/storage_test.go b/pkg/stanza/adapter/storage_test.go index 3e5f96a313090..8a510cd80f13c 100644 --- a/pkg/stanza/adapter/storage_test.go +++ b/pkg/stanza/adapter/storage_test.go @@ -107,7 +107,7 @@ func TestFailOnNonStorageExtension(t *testing.T) { func createReceiver(t *testing.T, storageID component.ID) *receiver { params := rcvr.Settings{ - ID: component.MustNewID("testreceiver"), + ID: component.MustNewID("test"), TelemetrySettings: componenttest.NewNopTelemetrySettings(), } diff --git a/processor/routingprocessor/factory_test.go b/processor/routingprocessor/factory_test.go index 73bf02da820d0..bd298ae9be866 100644 --- a/processor/routingprocessor/factory_test.go +++ b/processor/routingprocessor/factory_test.go @@ -141,10 +141,10 @@ func TestProcessorDoesNotFailToBuildExportersWithMultiplePipelines(t *testing.T) }, } - otlpTracesExporter, err := otlpExporterFactory.CreateTraces(context.Background(), exportertest.NewNopSettings(metadata.Type), otlpConfig) + otlpTracesExporter, err := otlpExporterFactory.CreateTraces(context.Background(), exportertest.NewNopSettings(otlpExporterFactory.Type()), otlpConfig) require.NoError(t, err) - otlpMetricsExporter, err := otlpExporterFactory.CreateMetrics(context.Background(), exportertest.NewNopSettings(metadata.Type), otlpConfig) + otlpMetricsExporter, err := otlpExporterFactory.CreateMetrics(context.Background(), exportertest.NewNopSettings(otlpExporterFactory.Type()), otlpConfig) require.NoError(t, err) host := newMockHost(map[pipeline.Signal]map[component.ID]component.Component{ diff --git a/receiver/jmxreceiver/receiver.go b/receiver/jmxreceiver/receiver.go index df62ffea1f274..61ff32144935a 100644 --- a/receiver/jmxreceiver/receiver.go +++ b/receiver/jmxreceiver/receiver.go @@ -165,7 +165,12 @@ func (jmx *jmxMetricReceiver) buildOTLPReceiver() (receiver.Metrics, error) { config.GRPC.NetAddr = confignet.AddrConfig{Endpoint: endpoint, Transport: confignet.TransportTypeTCP} config.HTTP = nil - return factory.CreateMetrics(context.Background(), jmx.params, config, jmx.nextConsumer) + params := receiver.Settings{ + ID: component.NewIDWithName(factory.Type(), jmx.params.ID.String()), + TelemetrySettings: jmx.params.TelemetrySettings, + BuildInfo: jmx.params.BuildInfo, + } + return factory.CreateMetrics(context.Background(), params, config, jmx.nextConsumer) } func (jmx *jmxMetricReceiver) buildJMXMetricGathererConfig() (string, error) { diff --git a/receiver/purefareceiver/receiver.go b/receiver/purefareceiver/receiver.go index 98ee1cc864b58..fdf3769325d99 100644 --- a/receiver/purefareceiver/receiver.go +++ b/receiver/purefareceiver/receiver.go @@ -91,7 +91,12 @@ func (r *purefaReceiver) Start(ctx context.Context, compHost component.Host) err promRecvCfg := fact.CreateDefaultConfig().(*prometheusreceiver.Config) promRecvCfg.PrometheusConfig = &prometheusreceiver.PromConfig{ScrapeConfigs: scrapeCfgs} - wrapped, err := fact.CreateMetrics(ctx, r.set, promRecvCfg, r.next) + set := receiver.Settings{ + ID: component.NewIDWithName(fact.Type(), r.set.ID.String()), + TelemetrySettings: r.set.TelemetrySettings, + BuildInfo: r.set.BuildInfo, + } + wrapped, err := fact.CreateMetrics(ctx, set, promRecvCfg, r.next) if err != nil { return err } diff --git a/receiver/purefbreceiver/metrics_receiver.go b/receiver/purefbreceiver/metrics_receiver.go index ca7c7277116f6..8b9129cc21489 100644 --- a/receiver/purefbreceiver/metrics_receiver.go +++ b/receiver/purefbreceiver/metrics_receiver.go @@ -67,7 +67,12 @@ func (r *purefbMetricsReceiver) Start(ctx context.Context, compHost component.Ho promRecvCfg := fact.CreateDefaultConfig().(*prometheusreceiver.Config) promRecvCfg.PrometheusConfig = &prometheusreceiver.PromConfig{ScrapeConfigs: scrapeCfgs} - wrapped, err := fact.CreateMetrics(ctx, r.set, promRecvCfg, r.next) + set := receiver.Settings{ + ID: component.NewIDWithName(fact.Type(), r.set.ID.String()), + TelemetrySettings: r.set.TelemetrySettings, + BuildInfo: r.set.BuildInfo, + } + wrapped, err := fact.CreateMetrics(ctx, set, promRecvCfg, r.next) if err != nil { return err } diff --git a/receiver/simpleprometheusreceiver/receiver.go b/receiver/simpleprometheusreceiver/receiver.go index 7c3f71d5d6a1f..fb53b44cbe99f 100644 --- a/receiver/simpleprometheusreceiver/receiver.go +++ b/receiver/simpleprometheusreceiver/receiver.go @@ -43,7 +43,12 @@ func (prw *prometheusReceiverWrapper) Start(ctx context.Context, host component. return fmt.Errorf("failed to create prometheus receiver config: %w", err) } - pr, err := pFactory.CreateMetrics(ctx, prw.params, pConfig, prw.consumer) + params := receiver.Settings{ + ID: component.NewIDWithName(pFactory.Type(), prw.params.ID.String()), + TelemetrySettings: prw.params.TelemetrySettings, + BuildInfo: prw.params.BuildInfo, + } + pr, err := pFactory.CreateMetrics(ctx, params, pConfig, prw.consumer) if err != nil { return fmt.Errorf("failed to create prometheus receiver: %w", err) } From 48c24731899124c199cf28f19d92204535bb8220 Mon Sep 17 00:00:00 2001 From: Pablo Baeyens Date: Wed, 26 Feb 2025 15:18:47 +0100 Subject: [PATCH 2/2] fix otelarrow tests --- internal/otelarrow/test/e2e_test.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/internal/otelarrow/test/e2e_test.go b/internal/otelarrow/test/e2e_test.go index 2755cf9992a8e..b1e450c3d2aa1 100644 --- a/internal/otelarrow/test/e2e_test.go +++ b/internal/otelarrow/test/e2e_test.go @@ -558,7 +558,7 @@ func multiStreamEnding(t *testing.T, p testParams, testCon *testConsumer, td [][ // Number of export requests: exact match. This is the // exporterhelper's base span. - require.Equal(t, total, expOps["exporter/otelarrowexporter/traces/Unset"]) + require.Equal(t, total, expOps["exporter/otelarrow/traces/Unset"]) // Number of export requests: exact match. This span covers // handling one request in the Arrow exporter. @@ -585,7 +585,7 @@ func multiStreamEnding(t *testing.T, p testParams, testCon *testConsumer, td [][ require.Equal(t, total, recvOps["otel_arrow_stream_recv/Unset"]) // This is in request context, the receiverhelper's per-request span. - require.Equal(t, total, recvOps["receiver/otelarrowreceiver/TraceDataReceived/Unset"]) + require.Equal(t, total, recvOps["receiver/otelarrow/TraceDataReceived/Unset"]) // Exporter and Receiver stream span counts match: require.Equal(t, expStreamsUnset+expStreamsError, recvStreamsUnset+recvStreamsError)