Skip to content

Commit ab127f7

Browse files
authored
[component/componenttest] Deprecate CheckExporterEnqueue* functions (#12198)
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description Deprecate `CheckExporterEnqueue*` functions, also verified `CheckExporterEnqueue*` functions are not being used in the contrib repo as well. <!-- Issue number if applicable --> #### Link to tracking issue Part of #12185 <!--Describe what testing was performed and which tests were added.--> #### Testing Updated <!--Describe the documentation added.--> #### Documentation Added <!--Please delete paragraphs that you did not use before submitting.-->
1 parent 5b3dfd1 commit ab127f7

File tree

6 files changed

+85
-6
lines changed

6 files changed

+85
-6
lines changed
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# Use this changelog template to create an entry for release notes.
2+
3+
# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
4+
change_type: deprecation
5+
6+
# The name of the component, or a single word describing the area of concern, (e.g. otlpreceiver)
7+
component: component/componenttest
8+
9+
# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
10+
note: Deprecate `CheckExporterEnqueue*` functions in componenenttest
11+
12+
# One or more tracking issues or pull requests related to the change
13+
issues: [12185]
14+
15+
# (Optional) One or more lines of additional information to render under the primary note.
16+
# These lines will be padded with 2 spaces and then inserted directly into the document.
17+
# Use pipe (|) for multiline entries.
18+
subtext: Use the `metadatatest.AssertEqualMetric` series of functions instead of `obsreporttest.CheckExporterEnqueue*` functions.
19+
20+
# Optional: The change log or logs in which this entry should be included.
21+
# e.g. '[user]' or '[user, api]'
22+
# Include 'user' if the change is relevant to end users.
23+
# Include 'api' if there is a change to a library API.
24+
# Default: '[user]'
25+
change_logs: [api]

component/componenttest/obsreporttest.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,14 +40,17 @@ func (tts *TestTelemetry) CheckExporterMetrics(sentMetricsPoints, sendFailedMetr
4040
return checkExporterMetrics(tts.Reader, tts.id, sentMetricsPoints, sendFailedMetricsPoints)
4141
}
4242

43+
// Deprecated: [v0.119.0] use the metadatatest.AssertEqualMetric series of functions instead.
4344
func (tts *TestTelemetry) CheckExporterEnqueueFailedMetrics(enqueueFailed int64) error {
4445
return checkExporterEnqueueFailed(tts.Reader, tts.id, "metric_points", enqueueFailed)
4546
}
4647

48+
// Deprecated: [v0.119.0] use the metadatatest.AssertEqualMetric series of functions instead.
4749
func (tts *TestTelemetry) CheckExporterEnqueueFailedTraces(enqueueFailed int64) error {
4850
return checkExporterEnqueueFailed(tts.Reader, tts.id, "spans", enqueueFailed)
4951
}
5052

53+
// Deprecated: [v0.119.0] use the metadatatest.AssertEqualMetric series of functions instead.
5154
func (tts *TestTelemetry) CheckExporterEnqueueFailedLogs(enqueueFailed int64) error {
5255
return checkExporterEnqueueFailed(tts.Reader, tts.id, "log_records", enqueueFailed)
5356
}

exporter/exporterhelper/internal/obs_report_test.go

Lines changed: 27 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -209,23 +209,47 @@ func TestExportEnqueueFailure(t *testing.T) {
209209
})
210210
require.NoError(t, err)
211211
obsrep.RecordEnqueueFailure(context.Background(), int64(7))
212-
require.NoError(t, tt.CheckExporterEnqueueFailedLogs(int64(7)))
212+
213+
metadatatest.AssertEqualExporterEnqueueFailedLogRecords(t, tt.Telemetry,
214+
[]metricdata.DataPoint[int64]{
215+
{
216+
Attributes: attribute.NewSet(
217+
attribute.String("exporter", exporterID.String())),
218+
Value: int64(7),
219+
},
220+
}, metricdatatest.IgnoreTimestamp(), metricdatatest.IgnoreExemplars())
213221

214222
obsrep, err = NewObsReport(ObsReportSettings{
215223
ExporterSettings: exporter.Settings{ID: exporterID, TelemetrySettings: tt.TelemetrySettings(), BuildInfo: component.NewDefaultBuildInfo()},
216224
Signal: pipeline.SignalTraces,
217225
})
218226
require.NoError(t, err)
219227
obsrep.RecordEnqueueFailure(context.Background(), int64(12))
220-
require.NoError(t, tt.CheckExporterEnqueueFailedTraces(int64(12)))
228+
229+
metadatatest.AssertEqualExporterEnqueueFailedSpans(t, tt.Telemetry,
230+
[]metricdata.DataPoint[int64]{
231+
{
232+
Attributes: attribute.NewSet(
233+
attribute.String("exporter", exporterID.String())),
234+
Value: int64(12),
235+
},
236+
}, metricdatatest.IgnoreTimestamp(), metricdatatest.IgnoreExemplars())
221237

222238
obsrep, err = NewObsReport(ObsReportSettings{
223239
ExporterSettings: exporter.Settings{ID: exporterID, TelemetrySettings: tt.TelemetrySettings(), BuildInfo: component.NewDefaultBuildInfo()},
224240
Signal: pipeline.SignalMetrics,
225241
})
226242
require.NoError(t, err)
227243
obsrep.RecordEnqueueFailure(context.Background(), int64(21))
228-
require.NoError(t, tt.CheckExporterEnqueueFailedMetrics(int64(21)))
244+
245+
metadatatest.AssertEqualExporterEnqueueFailedMetricPoints(t, tt.Telemetry,
246+
[]metricdata.DataPoint[int64]{
247+
{
248+
Attributes: attribute.NewSet(
249+
attribute.String("exporter", exporterID.String())),
250+
Value: int64(21),
251+
},
252+
}, metricdatatest.IgnoreTimestamp(), metricdatatest.IgnoreExemplars())
229253
}
230254

231255
type testParams struct {

exporter/exporterhelper/logs_test.go

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -282,7 +282,14 @@ func TestLogs_WithRecordEnqueueFailedMetrics(t *testing.T) {
282282
}
283283

284284
// 2 batched must be in queue, and 5 batches (15 log records) rejected due to queue overflow
285-
require.NoError(t, tt.CheckExporterEnqueueFailedLogs(int64(15)))
285+
metadatatest.AssertEqualExporterEnqueueFailedLogRecords(t, tt.Telemetry,
286+
[]metricdata.DataPoint[int64]{
287+
{
288+
Attributes: attribute.NewSet(
289+
attribute.String("exporter", fakeLogsName.String())),
290+
Value: int64(15),
291+
},
292+
}, metricdatatest.IgnoreTimestamp(), metricdatatest.IgnoreExemplars())
286293
}
287294

288295
func TestLogs_WithSpan(t *testing.T) {

exporter/exporterhelper/metrics_test.go

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ import (
1313
"github.com/stretchr/testify/require"
1414
"go.opentelemetry.io/otel"
1515
"go.opentelemetry.io/otel/attribute"
16+
"go.opentelemetry.io/otel/sdk/metric/metricdata"
17+
"go.opentelemetry.io/otel/sdk/metric/metricdata/metricdatatest"
1618
sdktrace "go.opentelemetry.io/otel/sdk/trace"
1719
"go.opentelemetry.io/otel/sdk/trace/tracetest"
1820
"go.opentelemetry.io/otel/trace"
@@ -26,6 +28,7 @@ import (
2628
"go.opentelemetry.io/collector/consumer/consumertest"
2729
"go.opentelemetry.io/collector/exporter"
2830
"go.opentelemetry.io/collector/exporter/exporterhelper/internal"
31+
"go.opentelemetry.io/collector/exporter/exporterhelper/internal/metadatatest"
2932
"go.opentelemetry.io/collector/exporter/exportertest"
3033
"go.opentelemetry.io/collector/exporter/internal/storagetest"
3134
"go.opentelemetry.io/collector/pdata/pmetric"
@@ -273,7 +276,14 @@ func TestMetrics_WithRecordEnqueueFailedMetrics(t *testing.T) {
273276
}
274277

275278
// 2 batched must be in queue, and 10 metric points rejected due to queue overflow
276-
require.NoError(t, tt.CheckExporterEnqueueFailedMetrics(int64(10)))
279+
metadatatest.AssertEqualExporterEnqueueFailedMetricPoints(t, tt.Telemetry,
280+
[]metricdata.DataPoint[int64]{
281+
{
282+
Attributes: attribute.NewSet(
283+
attribute.String("exporter", fakeMetricsName.String())),
284+
Value: int64(10),
285+
},
286+
}, metricdatatest.IgnoreTimestamp(), metricdatatest.IgnoreExemplars())
277287
}
278288

279289
func TestMetrics_WithSpan(t *testing.T) {

exporter/exporterhelper/traces_test.go

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ import (
1313
"github.com/stretchr/testify/require"
1414
"go.opentelemetry.io/otel"
1515
"go.opentelemetry.io/otel/attribute"
16+
"go.opentelemetry.io/otel/sdk/metric/metricdata"
17+
"go.opentelemetry.io/otel/sdk/metric/metricdata/metricdatatest"
1618
sdktrace "go.opentelemetry.io/otel/sdk/trace"
1719
"go.opentelemetry.io/otel/sdk/trace/tracetest"
1820
"go.opentelemetry.io/otel/trace"
@@ -26,6 +28,7 @@ import (
2628
"go.opentelemetry.io/collector/consumer/consumertest"
2729
"go.opentelemetry.io/collector/exporter"
2830
"go.opentelemetry.io/collector/exporter/exporterhelper/internal"
31+
"go.opentelemetry.io/collector/exporter/exporterhelper/internal/metadatatest"
2932
"go.opentelemetry.io/collector/exporter/exportertest"
3033
"go.opentelemetry.io/collector/exporter/internal/storagetest"
3134
"go.opentelemetry.io/collector/pdata/ptrace"
@@ -270,7 +273,14 @@ func TestTraces_WithRecordEnqueueFailedMetrics(t *testing.T) {
270273
}
271274

272275
// 2 batched must be in queue, and 5 batches (10 spans) rejected due to queue overflow
273-
require.NoError(t, tt.CheckExporterEnqueueFailedTraces(int64(10)))
276+
metadatatest.AssertEqualExporterEnqueueFailedSpans(t, tt.Telemetry,
277+
[]metricdata.DataPoint[int64]{
278+
{
279+
Attributes: attribute.NewSet(
280+
attribute.String("exporter", fakeTracesName.String())),
281+
Value: int64(10),
282+
},
283+
}, metricdatatest.IgnoreTimestamp(), metricdatatest.IgnoreExemplars())
274284
}
275285

276286
func TestTraces_WithSpan(t *testing.T) {

0 commit comments

Comments
 (0)