diff --git a/.chloggen/6767-exporterhelper-rename-config.yaml b/.chloggen/6767-exporterhelper-rename-config.yaml new file mode 100644 index 00000000000..f81f1b28223 --- /dev/null +++ b/.chloggen/6767-exporterhelper-rename-config.yaml @@ -0,0 +1,20 @@ +# Use this changelog template to create an entry for release notes. + +# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix' +change_type: 'deprecation' + +# The name of the component, or a single word describing the area of concern, (e.g. otlpreceiver) +component: exporterhelper + +# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`). +note: "Deprecate TimeoutSettings/QueueSettings in favor of TimeoutConfig/QueueConfig." + +# One or more tracking issues or pull requests related to the change +issues: [6767] + +# Optional: The change log or logs in which this entry should be included. +# e.g. '[user]' or '[user, api]' +# Include 'user' if the change is relevant to end users. +# Include 'api' if there is a change to a library API. +# Default: '[user]' +change_logs: [api] diff --git a/.chloggen/codeboten_fix-bug.yaml b/.chloggen/codeboten_fix-bug.yaml new file mode 100644 index 00000000000..3faac735c42 --- /dev/null +++ b/.chloggen/codeboten_fix-bug.yaml @@ -0,0 +1,25 @@ +# Use this changelog template to create an entry for release notes. + +# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix' +change_type: bug_fix + +# The name of the component, or a single word describing the area of concern, (e.g. otlpreceiver) +component: service + +# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`). +note: Ensure process telemetry is registered when internal telemetry is configured with readers instead of an address. + +# One or more tracking issues or pull requests related to the change +issues: [11093] + +# (Optional) One or more lines of additional information to render under the primary note. +# These lines will be padded with 2 spaces and then inserted directly into the document. +# Use pipe (|) for multiline entries. +subtext: + +# Optional: The change log or logs in which this entry should be included. +# e.g. '[user]' or '[user, api]' +# Include 'user' if the change is relevant to end users. +# Include 'api' if there is a change to a library API. +# Default: '[user]' +change_logs: [] diff --git a/.golangci.yml b/.golangci.yml index ca228436fbc..a0a56fd5fc1 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -124,13 +124,9 @@ linters-settings: testifylint: # TODO: enable all rules disable: - - compares - - error-is-as - - expected-actual - float-compare - formatter - go-require - - negative-positive - require-error enable-all: true diff --git a/Makefile.Common b/Makefile.Common index d4e7e681363..d0e8a2615f4 100644 --- a/Makefile.Common +++ b/Makefile.Common @@ -38,7 +38,7 @@ SEMCONVGEN := $(TOOLS_BIN_DIR)/semconvgen SEMCONVKIT := $(TOOLS_BIN_DIR)/semconvkit TESTIFYLINT := $(TOOLS_BIN_DIR)/testifylint -TESTIFYLINT_OPT?= --enable-all --disable=compares,error-is-as,expected-actual,float-compare,formatter,go-require,negative-positive,require-error +TESTIFYLINT_OPT?= --enable-all --disable=float-compare,formatter,go-require,require-error .PHONY: install-tools install-tools: $(TOOLS_BIN_NAMES) diff --git a/client/client_test.go b/client/client_test.go index ddec6bd89dd..37f300de496 100644 --- a/client/client_test.go +++ b/client/client_test.go @@ -71,7 +71,7 @@ func TestFromContext(t *testing.T) { } for _, tC := range testCases { t.Run(tC.desc, func(t *testing.T) { - assert.Equal(t, FromContext(tC.input), tC.expected) + assert.Equal(t, tC.expected, FromContext(tC.input)) }) } } diff --git a/cmd/builder/internal/builder/config_test.go b/cmd/builder/internal/builder/config_test.go index e1fcd2fb575..60e1b426ee2 100644 --- a/cmd/builder/internal/builder/config_test.go +++ b/cmd/builder/internal/builder/config_test.go @@ -4,7 +4,6 @@ package builder import ( - "errors" "os" "strings" "testing" @@ -143,7 +142,7 @@ func TestMissingModule(t *testing.T) { } for _, test := range configurations { - assert.True(t, errors.Is(test.cfg.Validate(), test.err)) + assert.ErrorIs(t, test.cfg.Validate(), test.err) } } diff --git a/cmd/mdatagen/go.mod b/cmd/mdatagen/go.mod index f56fc76bbfd..5e4d0d93e12 100644 --- a/cmd/mdatagen/go.mod +++ b/cmd/mdatagen/go.mod @@ -78,12 +78,8 @@ replace go.opentelemetry.io/collector/receiver => ../../receiver replace go.opentelemetry.io/collector/semconv => ../../semconv -replace go.opentelemetry.io/collector/featuregate => ../../featuregate - replace go.opentelemetry.io/collector/consumer => ../../consumer -replace go.opentelemetry.io/collector => ../.. - replace go.opentelemetry.io/collector/config/configtelemetry => ../../config/configtelemetry retract ( @@ -98,6 +94,4 @@ replace go.opentelemetry.io/collector/consumer/consumerprofiles => ../../consume replace go.opentelemetry.io/collector/consumer/consumertest => ../../consumer/consumertest -replace go.opentelemetry.io/collector/component/componentstatus => ../../component/componentstatus - replace go.opentelemetry.io/collector/receiver/receiverprofiles => ../../receiver/receiverprofiles diff --git a/cmd/mdatagen/internal/samplereceiver/internal/metadata/generated_metrics_test.go b/cmd/mdatagen/internal/samplereceiver/internal/metadata/generated_metrics_test.go index 657e400408b..f4100521330 100644 --- a/cmd/mdatagen/internal/samplereceiver/internal/metadata/generated_metrics_test.go +++ b/cmd/mdatagen/internal/samplereceiver/internal/metadata/generated_metrics_test.go @@ -153,7 +153,7 @@ func TestMetricsBuilder(t *testing.T) { assert.Equal(t, 1, ms.At(i).Sum().DataPoints().Len()) assert.Equal(t, "Monotonic cumulative sum int metric enabled by default.", ms.At(i).Description()) assert.Equal(t, "s", ms.At(i).Unit()) - assert.Equal(t, true, ms.At(i).Sum().IsMonotonic()) + assert.True(t, ms.At(i).Sum().IsMonotonic()) assert.Equal(t, pmetric.AggregationTemporalityCumulative, ms.At(i).Sum().AggregationTemporality()) dp := ms.At(i).Sum().DataPoints().At(0) assert.Equal(t, start, dp.StartTimestamp()) @@ -182,7 +182,7 @@ func TestMetricsBuilder(t *testing.T) { assert.Equal(t, 1, ms.At(i).Sum().DataPoints().Len()) assert.Equal(t, "[DEPRECATED] Non-monotonic delta sum double metric enabled by default.", ms.At(i).Description()) assert.Equal(t, "s", ms.At(i).Unit()) - assert.Equal(t, false, ms.At(i).Sum().IsMonotonic()) + assert.False(t, ms.At(i).Sum().IsMonotonic()) assert.Equal(t, pmetric.AggregationTemporalityDelta, ms.At(i).Sum().AggregationTemporality()) dp := ms.At(i).Sum().DataPoints().At(0) assert.Equal(t, start, dp.StartTimestamp()) @@ -196,7 +196,7 @@ func TestMetricsBuilder(t *testing.T) { assert.Equal(t, 1, ms.At(i).Sum().DataPoints().Len()) assert.Equal(t, "Monotonic cumulative sum int metric with string input_type enabled by default.", ms.At(i).Description()) assert.Equal(t, "s", ms.At(i).Unit()) - assert.Equal(t, true, ms.At(i).Sum().IsMonotonic()) + assert.True(t, ms.At(i).Sum().IsMonotonic()) assert.Equal(t, pmetric.AggregationTemporalityCumulative, ms.At(i).Sum().AggregationTemporality()) dp := ms.At(i).Sum().DataPoints().At(0) assert.Equal(t, start, dp.StartTimestamp()) @@ -235,7 +235,7 @@ func TestMetricsBuilder(t *testing.T) { assert.EqualValues(t, "string_attr-val", attrVal.Str()) attrVal, ok = dp.Attributes().Get("boolean_attr") assert.True(t, ok) - assert.EqualValues(t, true, attrVal.Bool()) + assert.True(t, attrVal.Bool()) case "optional.metric.empty_unit": assert.False(t, validatedMetrics["optional.metric.empty_unit"], "Found a duplicate in the metrics slice: optional.metric.empty_unit") validatedMetrics["optional.metric.empty_unit"] = true @@ -253,7 +253,7 @@ func TestMetricsBuilder(t *testing.T) { assert.EqualValues(t, "string_attr-val", attrVal.Str()) attrVal, ok = dp.Attributes().Get("boolean_attr") assert.True(t, ok) - assert.EqualValues(t, true, attrVal.Bool()) + assert.True(t, attrVal.Bool()) } } }) diff --git a/cmd/mdatagen/templates/metrics_test.go.tmpl b/cmd/mdatagen/templates/metrics_test.go.tmpl index f97e8ef8110..ecb7008960e 100644 --- a/cmd/mdatagen/templates/metrics_test.go.tmpl +++ b/cmd/mdatagen/templates/metrics_test.go.tmpl @@ -164,7 +164,7 @@ func TestMetricsBuilder(t *testing.T) { assert.Equal(t, "{{ $metric.Description }}", ms.At(i).Description()) assert.Equal(t, "{{ $metric.Unit }}", ms.At(i).Unit()) {{- if $metric.Data.HasMonotonic }} - assert.Equal(t, {{ $metric.Data.Monotonic }}, ms.At(i).{{ $metric.Data.Type }}().IsMonotonic()) + assert.{{- if $metric.Data.Monotonic }}True{{ else }}False{{ end }}(t, ms.At(i).{{ $metric.Data.Type }}().IsMonotonic()) {{- end }} {{- if $metric.Data.HasAggregated }} assert.Equal(t, pmetric.AggregationTemporality{{ $metric.Data.AggregationTemporality }}, ms.At(i).{{ $metric.Data.Type }}().AggregationTemporality()) @@ -178,7 +178,11 @@ func TestMetricsBuilder(t *testing.T) { {{- range $i, $attr := $metric.Attributes }} attrVal, ok {{ if eq $i 0 }}:{{ end }}= dp.Attributes().Get("{{ (attributeInfo $attr).Name }}") assert.True(t, ok) + {{- if eq (attributeInfo $attr).Type.String "Bool"}} + assert.{{- if (attributeInfo $attr).TestValue }}True{{ else }}False{{- end }}(t, attrVal.{{ (attributeInfo $attr).Type }}() + {{- else }} assert.EqualValues(t, {{ (attributeInfo $attr).TestValue }}, attrVal.{{ (attributeInfo $attr).Type }}() + {{- end }} {{- if or (eq (attributeInfo $attr).Type.String "Slice") (eq (attributeInfo $attr).Type.String "Map")}}.AsRaw(){{ end }}) {{- end }} {{- end }} diff --git a/cmd/otelcorecol/go.mod b/cmd/otelcorecol/go.mod index f44d57b8018..1b52d479dda 100644 --- a/cmd/otelcorecol/go.mod +++ b/cmd/otelcorecol/go.mod @@ -4,7 +4,7 @@ module go.opentelemetry.io/collector/cmd/otelcorecol go 1.22.0 -toolchain go1.22.7 +toolchain go1.23.1 require ( go.opentelemetry.io/collector/component v0.109.0 diff --git a/component/componenttest/nop_telemetry_test.go b/component/componenttest/nop_telemetry_test.go index feb7fdb5a56..5f9d2d3aa93 100644 --- a/component/componenttest/nop_telemetry_test.go +++ b/component/componenttest/nop_telemetry_test.go @@ -23,5 +23,5 @@ func TestNewNopTelemetrySettings(t *testing.T) { nts.MeterProvider.Meter("test") }) assert.Equal(t, configtelemetry.LevelNone, nts.MetricsLevel) - assert.Equal(t, nts.Resource.Attributes().Len(), 0) + assert.Equal(t, 0, nts.Resource.Attributes().Len()) } diff --git a/config/configgrpc/configgrpc_test.go b/config/configgrpc/configgrpc_test.go index a172eaaafa3..da97997545c 100644 --- a/config/configgrpc/configgrpc_test.go +++ b/config/configgrpc/configgrpc_test.go @@ -35,7 +35,7 @@ import ( "go.opentelemetry.io/collector/extension/auth" "go.opentelemetry.io/collector/extension/auth/authtest" "go.opentelemetry.io/collector/featuregate" - "go.opentelemetry.io/collector/internal/localhostgate" + "go.opentelemetry.io/collector/internal/globalgates" "go.opentelemetry.io/collector/pdata/ptrace/ptraceotlp" ) @@ -494,11 +494,11 @@ func TestUseSecure(t *testing.T) { } func TestGRPCServerWarning(t *testing.T) { - prev := localhostgate.UseLocalHostAsDefaultHostfeatureGate.IsEnabled() - require.NoError(t, featuregate.GlobalRegistry().Set(localhostgate.UseLocalHostAsDefaultHostID, false)) + prev := globalgates.UseLocalHostAsDefaultHostfeatureGate.IsEnabled() + require.NoError(t, featuregate.GlobalRegistry().Set(globalgates.UseLocalHostAsDefaultHostID, false)) defer func() { // Restore previous value. - require.NoError(t, featuregate.GlobalRegistry().Set(localhostgate.UseLocalHostAsDefaultHostID, prev)) + require.NoError(t, featuregate.GlobalRegistry().Set(globalgates.UseLocalHostAsDefaultHostID, prev)) }() tests := []struct { diff --git a/config/configgrpc/go.mod b/config/configgrpc/go.mod index 62e20a9e3f8..c5ac470b783 100644 --- a/config/configgrpc/go.mod +++ b/config/configgrpc/go.mod @@ -5,7 +5,6 @@ go 1.22.0 require ( github.com/mostynb/go-grpc-compression v1.2.3 github.com/stretchr/testify v1.9.0 - go.opentelemetry.io/collector v0.109.0 go.opentelemetry.io/collector/client v1.15.0 go.opentelemetry.io/collector/component v0.109.0 go.opentelemetry.io/collector/config/configauth v0.109.0 @@ -17,6 +16,7 @@ require ( go.opentelemetry.io/collector/config/internal v0.109.0 go.opentelemetry.io/collector/extension/auth v0.109.0 go.opentelemetry.io/collector/featuregate v1.15.0 + go.opentelemetry.io/collector/internal/globalgates v0.109.0 go.opentelemetry.io/collector/pdata v1.15.0 go.opentelemetry.io/collector/pdata/testdata v0.109.0 go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.54.0 @@ -63,8 +63,6 @@ require ( gopkg.in/yaml.v3 v3.0.1 // indirect ) -replace go.opentelemetry.io/collector => ../../ - replace go.opentelemetry.io/collector/client => ../../client replace go.opentelemetry.io/collector/config/configauth => ../configauth @@ -85,8 +83,6 @@ replace go.opentelemetry.io/collector/extension => ../../extension replace go.opentelemetry.io/collector/extension/auth => ../../extension/auth -replace go.opentelemetry.io/collector/confmap => ../../confmap - replace go.opentelemetry.io/collector/featuregate => ../../featuregate replace go.opentelemetry.io/collector/pdata => ../../pdata @@ -99,8 +95,4 @@ replace go.opentelemetry.io/collector/component => ../../component replace go.opentelemetry.io/collector/consumer => ../../consumer -replace go.opentelemetry.io/collector/consumer/consumerprofiles => ../../consumer/consumerprofiles - -replace go.opentelemetry.io/collector/consumer/consumertest => ../../consumer/consumertest - -replace go.opentelemetry.io/collector/component/componentstatus => ../../component/componentstatus +replace go.opentelemetry.io/collector/internal/globalgates => ../../internal/globalgates diff --git a/config/configgrpc/go.sum b/config/configgrpc/go.sum index 75c418a588f..39bfa0a61db 100644 --- a/config/configgrpc/go.sum +++ b/config/configgrpc/go.sum @@ -54,8 +54,8 @@ github.com/prometheus/common v0.59.1 h1:LXb1quJHWm1P6wq/U824uxYi4Sg0oGvNeUm1z5dJ github.com/prometheus/common v0.59.1/go.mod h1:GpWM7dewqmVYcd7SmRaiWVe9SSqjf0UrwnYnpEZNuT0= github.com/prometheus/procfs v0.15.1 h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0learggepc= github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk= -github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ= -github.com/rogpeppe/go-internal v1.10.0/go.mod h1:UQnix2H7Ngw/k4C5ijL5+65zddjncjaFoBhdsK/akog= +github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= +github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= diff --git a/config/confighttp/confighttp_test.go b/config/confighttp/confighttp_test.go index 78f0d2159be..9d08b561cc7 100644 --- a/config/confighttp/confighttp_test.go +++ b/config/confighttp/confighttp_test.go @@ -35,7 +35,7 @@ import ( "go.opentelemetry.io/collector/extension/auth" "go.opentelemetry.io/collector/extension/auth/authtest" "go.opentelemetry.io/collector/featuregate" - "go.opentelemetry.io/collector/internal/localhostgate" + "go.opentelemetry.io/collector/internal/globalgates" ) type customRoundTripper struct { @@ -520,11 +520,11 @@ func TestHTTPServerSettingsError(t *testing.T) { } func TestHTTPServerWarning(t *testing.T) { - prev := localhostgate.UseLocalHostAsDefaultHostfeatureGate.IsEnabled() - require.NoError(t, featuregate.GlobalRegistry().Set(localhostgate.UseLocalHostAsDefaultHostID, false)) + prev := globalgates.UseLocalHostAsDefaultHostfeatureGate.IsEnabled() + require.NoError(t, featuregate.GlobalRegistry().Set(globalgates.UseLocalHostAsDefaultHostID, false)) defer func() { // Restore previous value. - require.NoError(t, featuregate.GlobalRegistry().Set(localhostgate.UseLocalHostAsDefaultHostID, prev)) + require.NoError(t, featuregate.GlobalRegistry().Set(globalgates.UseLocalHostAsDefaultHostID, prev)) }() tests := []struct { @@ -1249,8 +1249,8 @@ func TestFailedServerAuth(t *testing.T) { srv.Handler.ServeHTTP(response, httptest.NewRequest("GET", "/", nil)) // verify - assert.Equal(t, response.Result().StatusCode, http.StatusUnauthorized) - assert.Equal(t, response.Result().Status, fmt.Sprintf("%v %s", http.StatusUnauthorized, http.StatusText(http.StatusUnauthorized))) + assert.Equal(t, http.StatusUnauthorized, response.Result().StatusCode) + assert.Equal(t, fmt.Sprintf("%v %s", http.StatusUnauthorized, http.StatusText(http.StatusUnauthorized)), response.Result().Status) } func TestServerWithErrorHandler(t *testing.T) { @@ -1259,7 +1259,7 @@ func TestServerWithErrorHandler(t *testing.T) { Endpoint: "localhost:0", } eh := func(w http.ResponseWriter, _ *http.Request, _ string, statusCode int) { - assert.Equal(t, statusCode, http.StatusBadRequest) + assert.Equal(t, http.StatusBadRequest, statusCode) // custom error handler changes returned status code http.Error(w, "invalid request", http.StatusInternalServerError) } @@ -1281,7 +1281,7 @@ func TestServerWithErrorHandler(t *testing.T) { srv.Handler.ServeHTTP(response, req) // verify - assert.Equal(t, response.Result().StatusCode, http.StatusInternalServerError) + assert.Equal(t, http.StatusInternalServerError, response.Result().StatusCode) } func TestServerWithDecoder(t *testing.T) { @@ -1309,7 +1309,7 @@ func TestServerWithDecoder(t *testing.T) { srv.Handler.ServeHTTP(response, req) // verify - assert.Equal(t, response.Result().StatusCode, http.StatusOK) + assert.Equal(t, http.StatusOK, response.Result().StatusCode) } @@ -1356,7 +1356,7 @@ func TestServerWithDecompression(t *testing.T) { // verifications is done mostly within the test, but this is only a sanity check // that we got into the test handler - assert.Equal(t, resp.StatusCode, http.StatusBadRequest) + assert.Equal(t, http.StatusBadRequest, resp.StatusCode) } func TestDefaultMaxRequestBodySize(t *testing.T) { diff --git a/config/confighttp/go.mod b/config/confighttp/go.mod index dfe96d265b0..edad28f0bb7 100644 --- a/config/confighttp/go.mod +++ b/config/confighttp/go.mod @@ -7,7 +7,6 @@ require ( github.com/klauspost/compress v1.17.9 github.com/rs/cors v1.11.1 github.com/stretchr/testify v1.9.0 - go.opentelemetry.io/collector v0.109.0 go.opentelemetry.io/collector/client v1.15.0 go.opentelemetry.io/collector/component v0.109.0 go.opentelemetry.io/collector/config/configauth v0.109.0 @@ -18,6 +17,7 @@ require ( go.opentelemetry.io/collector/config/internal v0.109.0 go.opentelemetry.io/collector/extension/auth v0.109.0 go.opentelemetry.io/collector/featuregate v1.15.0 + go.opentelemetry.io/collector/internal/globalgates v0.109.0 go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.54.0 go.opentelemetry.io/otel v1.30.0 go.opentelemetry.io/otel/metric v1.30.0 @@ -58,8 +58,6 @@ require ( gopkg.in/yaml.v3 v3.0.1 // indirect ) -replace go.opentelemetry.io/collector => ../../ - replace go.opentelemetry.io/collector/config/configauth => ../configauth replace go.opentelemetry.io/collector/config/configcompression => ../configcompression @@ -76,8 +74,6 @@ replace go.opentelemetry.io/collector/extension => ../../extension replace go.opentelemetry.io/collector/extension/auth => ../../extension/auth -replace go.opentelemetry.io/collector/confmap => ../../confmap - replace go.opentelemetry.io/collector/featuregate => ../../featuregate replace go.opentelemetry.io/collector/pdata => ../../pdata @@ -92,8 +88,4 @@ replace go.opentelemetry.io/collector/pdata/testdata => ../../pdata/testdata replace go.opentelemetry.io/collector/pdata/pprofile => ../../pdata/pprofile -replace go.opentelemetry.io/collector/consumer/consumerprofiles => ../../consumer/consumerprofiles - -replace go.opentelemetry.io/collector/consumer/consumertest => ../../consumer/consumertest - -replace go.opentelemetry.io/collector/component/componentstatus => ../../component/componentstatus +replace go.opentelemetry.io/collector/internal/globalgates => ../../internal/globalgates diff --git a/config/confighttp/go.sum b/config/confighttp/go.sum index 4fd970aa529..0a5b63ac7c5 100644 --- a/config/confighttp/go.sum +++ b/config/confighttp/go.sum @@ -51,8 +51,8 @@ github.com/prometheus/common v0.59.1 h1:LXb1quJHWm1P6wq/U824uxYi4Sg0oGvNeUm1z5dJ github.com/prometheus/common v0.59.1/go.mod h1:GpWM7dewqmVYcd7SmRaiWVe9SSqjf0UrwnYnpEZNuT0= github.com/prometheus/procfs v0.15.1 h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0learggepc= github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk= -github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ= -github.com/rogpeppe/go-internal v1.10.0/go.mod h1:UQnix2H7Ngw/k4C5ijL5+65zddjncjaFoBhdsK/akog= +github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= +github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= github.com/rs/cors v1.11.1 h1:eU3gRzXLRK57F5rKMGMZURNdIG4EoAmX8k94r9wXWHA= github.com/rs/cors v1.11.1/go.mod h1:XyqrcTp5zjWr1wsJ8PIRZssZ8b/WMcMf71DJnit4EMU= github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= diff --git a/config/internal/go.mod b/config/internal/go.mod index 93f0d8b3f26..8fad43d6125 100644 --- a/config/internal/go.mod +++ b/config/internal/go.mod @@ -4,7 +4,7 @@ go 1.22.0 require ( github.com/stretchr/testify v1.9.0 - go.opentelemetry.io/collector v0.109.0 + go.opentelemetry.io/collector/internal/globalgates v0.109.0 go.uber.org/goleak v1.3.0 go.uber.org/zap v1.27.0 ) @@ -13,31 +13,12 @@ require ( github.com/davecgh/go-spew v1.1.1 // indirect github.com/hashicorp/go-version v1.7.0 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect + github.com/rogpeppe/go-internal v1.12.0 // indirect go.opentelemetry.io/collector/featuregate v1.15.0 // indirect go.uber.org/multierr v1.11.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) -replace go.opentelemetry.io/collector => ../../ +replace go.opentelemetry.io/collector/internal/globalgates => ../../internal/globalgates replace go.opentelemetry.io/collector/featuregate => ../../featuregate - -replace go.opentelemetry.io/collector/confmap => ../../confmap - -replace go.opentelemetry.io/collector/config/configtelemetry => ../configtelemetry - -replace go.opentelemetry.io/collector/pdata => ../../pdata - -replace go.opentelemetry.io/collector/consumer => ../../consumer - -replace go.opentelemetry.io/collector/component => ../../component - -replace go.opentelemetry.io/collector/pdata/testdata => ../../pdata/testdata - -replace go.opentelemetry.io/collector/pdata/pprofile => ../../pdata/pprofile - -replace go.opentelemetry.io/collector/consumer/consumerprofiles => ../../consumer/consumerprofiles - -replace go.opentelemetry.io/collector/consumer/consumertest => ../../consumer/consumertest - -replace go.opentelemetry.io/collector/component/componentstatus => ../../component/componentstatus diff --git a/config/internal/go.sum b/config/internal/go.sum index 8ecb783497e..9e6446c034d 100644 --- a/config/internal/go.sum +++ b/config/internal/go.sum @@ -8,8 +8,8 @@ github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ= -github.com/rogpeppe/go-internal v1.10.0/go.mod h1:UQnix2H7Ngw/k4C5ijL5+65zddjncjaFoBhdsK/akog= +github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= +github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= diff --git a/config/internal/warning.go b/config/internal/warning.go index f9e32fc1c64..26eca49a7bb 100644 --- a/config/internal/warning.go +++ b/config/internal/warning.go @@ -10,7 +10,7 @@ import ( "go.uber.org/zap" - "go.opentelemetry.io/collector/internal/localhostgate" + "go.opentelemetry.io/collector/internal/globalgates" ) func shouldWarn(endpoint string) bool { @@ -38,14 +38,14 @@ func shouldWarn(endpoint string) bool { // WarnOnUnspecifiedHost emits a warning if an endpoint has an unspecified host. func WarnOnUnspecifiedHost(logger *zap.Logger, endpoint string) { - if !localhostgate.UseLocalHostAsDefaultHostfeatureGate.IsEnabled() && shouldWarn(endpoint) { + if !globalgates.UseLocalHostAsDefaultHostfeatureGate.IsEnabled() && shouldWarn(endpoint) { logger.Warn( "Using the 0.0.0.0 address exposes this server to every network interface, which may facilitate Denial of Service attacks. Enable the feature gate to change the default and remove this warning.", zap.String( "documentation", "https://github.com/open-telemetry/opentelemetry-collector/blob/main/docs/security-best-practices.md#safeguards-against-denial-of-service-attacks", ), - zap.String("feature gate ID", localhostgate.UseLocalHostAsDefaultHostID), + zap.String("feature gate ID", globalgates.UseLocalHostAsDefaultHostID), ) } } diff --git a/confmap/internal/e2e/types_test.go b/confmap/internal/e2e/types_test.go index 325103a9ad2..6085ba0a438 100644 --- a/confmap/internal/e2e/types_test.go +++ b/confmap/internal/e2e/types_test.go @@ -419,43 +419,42 @@ func TestIssue10787(t *testing.T) { resolver := NewResolver(t, "issue-10787-main.yaml") conf, err := resolver.Resolve(context.Background()) require.NoError(t, err) - assert.Equal(t, conf.ToStringMap(), - map[string]any{ - "exporters": map[string]any{ - "debug": map[string]any{ - "verbosity": "detailed", - }, - }, - "processors": map[string]any{ - "batch": nil, + assert.Equal(t, map[string]any{ + "exporters": map[string]any{ + "debug": map[string]any{ + "verbosity": "detailed", }, - "receivers": map[string]any{ - "otlp": map[string]any{ - "protocols": map[string]any{ - "grpc": map[string]any{ - "endpoint": "0.0.0.0:4317", - }, - "http": map[string]any{ - "endpoint": "0.0.0.0:4318", - }, + }, + "processors": map[string]any{ + "batch": nil, + }, + "receivers": map[string]any{ + "otlp": map[string]any{ + "protocols": map[string]any{ + "grpc": map[string]any{ + "endpoint": "0.0.0.0:4317", + }, + "http": map[string]any{ + "endpoint": "0.0.0.0:4318", }, }, }, - "service": map[string]any{ - "pipelines": map[string]any{ - "traces": map[string]any{ - "exporters": []any{"debug"}, - "processors": []any{"batch"}, - "receivers": []any{"otlp"}, - }, + }, + "service": map[string]any{ + "pipelines": map[string]any{ + "traces": map[string]any{ + "exporters": []any{"debug"}, + "processors": []any{"batch"}, + "receivers": []any{"otlp"}, }, - "telemetry": map[string]any{ - "metrics": map[string]any{ - "level": "detailed", - }, + }, + "telemetry": map[string]any{ + "metrics": map[string]any{ + "level": "detailed", }, }, }, + }, conf.ToStringMap(), ) } @@ -582,9 +581,9 @@ func TestIndirectSliceEnvVar(t *testing.T) { var collectorConf CollectorConf err = conf.Unmarshal(&collectorConf) require.NoError(t, err) - assert.Equal(t, collectorConf.Exporters.OTLP.Endpoint, "localhost:4317") - assert.Equal(t, collectorConf.Service.Pipelines.Logs.Receivers, []string{"nop", "otlp"}) - assert.Equal(t, collectorConf.Service.Pipelines.Logs.Exporters, []string{"otlp", "nop"}) + assert.Equal(t, "localhost:4317", collectorConf.Exporters.OTLP.Endpoint) + assert.Equal(t, []string{"nop", "otlp"}, collectorConf.Service.Pipelines.Logs.Receivers) + assert.Equal(t, []string{"otlp", "nop"}, collectorConf.Service.Pipelines.Logs.Exporters) } func TestIssue10937_MapType(t *testing.T) { diff --git a/confmap/internal/mapstructure/encoder_test.go b/confmap/internal/mapstructure/encoder_test.go index a0cdb75fb75..e6da809703a 100644 --- a/confmap/internal/mapstructure/encoder_test.go +++ b/confmap/internal/mapstructure/encoder_test.go @@ -306,7 +306,7 @@ func TestEncodeNonStringEncodedKey(t *testing.T) { } got, err := enc.Encode(testCase) require.Error(t, err) - require.True(t, errors.Is(err, errNonStringEncodedKey)) + require.ErrorIs(t, err, errNonStringEncodedKey) require.Nil(t, got) } @@ -358,7 +358,7 @@ func TestEncodeStructError(t *testing.T) { } got, err := enc.Encode(testCase) require.Error(t, err) - require.True(t, errors.Is(err, wantErr)) + require.ErrorIs(t, err, wantErr) require.Nil(t, got) } diff --git a/connector/connectorprofiles/go.mod b/connector/connectorprofiles/go.mod index 68c187a0a10..ff8769d5bab 100644 --- a/connector/connectorprofiles/go.mod +++ b/connector/connectorprofiles/go.mod @@ -46,8 +46,6 @@ replace go.opentelemetry.io/collector/consumer/consumertest => ../../consumer/co replace go.opentelemetry.io/collector/pdata/pprofile => ../../pdata/pprofile -replace go.opentelemetry.io/collector/featuregate => ../../featuregate - replace go.opentelemetry.io/collector/consumer/consumerprofiles => ../../consumer/consumerprofiles replace go.opentelemetry.io/collector/component/componentprofiles => ../../component/componentprofiles diff --git a/connector/connectorprofiles/go.sum b/connector/connectorprofiles/go.sum index 577d2b128fc..227adf3dbde 100644 --- a/connector/connectorprofiles/go.sum +++ b/connector/connectorprofiles/go.sum @@ -25,8 +25,8 @@ github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9G github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ= -github.com/rogpeppe/go-internal v1.10.0/go.mod h1:UQnix2H7Ngw/k4C5ijL5+65zddjncjaFoBhdsK/akog= +github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= +github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= diff --git a/connector/forwardconnector/go.mod b/connector/forwardconnector/go.mod index c1d36c509f8..a40c074e75e 100644 --- a/connector/forwardconnector/go.mod +++ b/connector/forwardconnector/go.mod @@ -70,8 +70,6 @@ replace go.opentelemetry.io/collector/pdata => ../../pdata replace go.opentelemetry.io/collector/pdata/testdata => ../../pdata/testdata -replace go.opentelemetry.io/collector/featuregate => ../../featuregate - replace go.opentelemetry.io/collector/consumer => ../../consumer replace go.opentelemetry.io/collector/confmap => ../../confmap diff --git a/connector/forwardconnector/go.sum b/connector/forwardconnector/go.sum index 923e7d7ba7f..ac12e3d31e7 100644 --- a/connector/forwardconnector/go.sum +++ b/connector/forwardconnector/go.sum @@ -58,8 +58,8 @@ github.com/prometheus/common v0.59.1 h1:LXb1quJHWm1P6wq/U824uxYi4Sg0oGvNeUm1z5dJ github.com/prometheus/common v0.59.1/go.mod h1:GpWM7dewqmVYcd7SmRaiWVe9SSqjf0UrwnYnpEZNuT0= github.com/prometheus/procfs v0.15.1 h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0learggepc= github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk= -github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ= -github.com/rogpeppe/go-internal v1.10.0/go.mod h1:UQnix2H7Ngw/k4C5ijL5+65zddjncjaFoBhdsK/akog= +github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= +github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= diff --git a/connector/go.mod b/connector/go.mod index 3466b7f8efd..35ef7f7e441 100644 --- a/connector/go.mod +++ b/connector/go.mod @@ -63,8 +63,6 @@ replace go.opentelemetry.io/collector/confmap => ../confmap replace go.opentelemetry.io/collector/consumer => ../consumer -replace go.opentelemetry.io/collector/featuregate => ../featuregate - replace go.opentelemetry.io/collector/pdata => ../pdata replace go.opentelemetry.io/collector/pdata/testdata => ../pdata/testdata diff --git a/connector/go.sum b/connector/go.sum index 46c53d70967..2fb10b5d6d7 100644 --- a/connector/go.sum +++ b/connector/go.sum @@ -46,8 +46,8 @@ github.com/prometheus/common v0.59.1 h1:LXb1quJHWm1P6wq/U824uxYi4Sg0oGvNeUm1z5dJ github.com/prometheus/common v0.59.1/go.mod h1:GpWM7dewqmVYcd7SmRaiWVe9SSqjf0UrwnYnpEZNuT0= github.com/prometheus/procfs v0.15.1 h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0learggepc= github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk= -github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ= -github.com/rogpeppe/go-internal v1.10.0/go.mod h1:UQnix2H7Ngw/k4C5ijL5+65zddjncjaFoBhdsK/akog= +github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= +github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= diff --git a/consumer/consumererror/signalerrors_test.go b/consumer/consumererror/signalerrors_test.go index 475d3173bb9..6ec64710b8c 100644 --- a/consumer/consumererror/signalerrors_test.go +++ b/consumer/consumererror/signalerrors_test.go @@ -21,7 +21,7 @@ func TestTraces(t *testing.T) { var target Traces assert.False(t, errors.As(nil, &target)) assert.False(t, errors.As(err, &target)) - assert.True(t, errors.As(traceErr, &target)) + assert.ErrorAs(t, traceErr, &target) assert.Equal(t, td, target.Data()) } @@ -33,7 +33,7 @@ func TestTraces_Unwrap(t *testing.T) { target := testErrorType{} require.NotEqual(t, err, target) // Unwrapping traceErr for err and assigning to target. - require.True(t, errors.As(traceErr, &target)) + require.ErrorAs(t, traceErr, &target) require.Equal(t, err, target) } @@ -45,7 +45,7 @@ func TestLogs(t *testing.T) { var target Logs assert.False(t, errors.As(nil, &target)) assert.False(t, errors.As(err, &target)) - assert.True(t, errors.As(logsErr, &target)) + assert.ErrorAs(t, logsErr, &target) assert.Equal(t, td, target.Data()) } @@ -57,7 +57,7 @@ func TestLogs_Unwrap(t *testing.T) { target := testErrorType{} require.NotEqual(t, err, target) // Unwrapping logsErr for err and assigning to target. - require.True(t, errors.As(logsErr, &target)) + require.ErrorAs(t, logsErr, &target) require.Equal(t, err, target) } @@ -69,7 +69,7 @@ func TestMetrics(t *testing.T) { var target Metrics assert.False(t, errors.As(nil, &target)) assert.False(t, errors.As(err, &target)) - assert.True(t, errors.As(metricErr, &target)) + assert.ErrorAs(t, metricErr, &target) assert.Equal(t, td, target.Data()) } @@ -81,6 +81,6 @@ func TestMetrics_Unwrap(t *testing.T) { target := testErrorType{} require.NotEqual(t, err, target) // Unwrapping metricErr for err and assigning to target. - require.True(t, errors.As(metricErr, &target)) + require.ErrorAs(t, metricErr, &target) require.Equal(t, err, target) } diff --git a/docs/release.md b/docs/release.md index 705ceff3764..81a54154754 100644 --- a/docs/release.md +++ b/docs/release.md @@ -160,7 +160,6 @@ Once a module is ready to be released under the `1.x` version scheme, file a PR | Date | Version | Release manager | |------------|----------|---------------------------------------------------| -| 2024-09-09 | v0.109.0 | [@bogdandrutu](https://github.com/bogdandrutu) | | 2024-09-23 | v0.110.0 | [@jpkrohling](https://github.com/jpkrohling) | | 2024-10-07 | v0.111.0 | [@mx-psi](https://github.com/mx-psi) | | 2024-10-21 | v0.112.0 | [@evan-bradley](https://github.com/evan-bradley) | @@ -169,4 +168,5 @@ Once a module is ready to be released under the `1.x` version scheme, file a PR | 2024-12-02 | v0.115.0 | [@atoulme](https://github.com/atoulme) | | 2024-12-16 | v0.116.0 | [@songy23](https://github.com/songy23) | | 2025-01-06 | v0.117.0 | [@dmitryax](https://github.com/dmitryax) | -| 2024-01-20 | v0.118.0 | [@codeboten](https://github.com/codeboten) | +| 2025-01-20 | v0.118.0 | [@codeboten](https://github.com/codeboten) | +| 2025-02-03 | v0.119.0 | [@bogdandrutu](https://github.com/bogdandrutu) | diff --git a/exporter/debugexporter/config_test.go b/exporter/debugexporter/config_test.go index 288ecd9be18..a9fbf9f87e0 100644 --- a/exporter/debugexporter/config_test.go +++ b/exporter/debugexporter/config_test.go @@ -94,7 +94,7 @@ func Test_UnmarshalMarshalled(t *testing.T) { if tc.expectedErr == "" { assert.NoError(t, err) - assert.Equal(t, outCfg, tc.expectedConfig) + assert.Equal(t, tc.expectedConfig, outCfg) return } assert.Error(t, err) diff --git a/exporter/debugexporter/factory.go b/exporter/debugexporter/factory.go index 526c01cc5c9..264b8358d57 100644 --- a/exporter/debugexporter/factory.go +++ b/exporter/debugexporter/factory.go @@ -54,7 +54,7 @@ func createTracesExporter(ctx context.Context, set exporter.Settings, config com return exporterhelper.NewTracesExporter(ctx, set, config, debugExporter.pushTraces, exporterhelper.WithCapabilities(consumer.Capabilities{MutatesData: false}), - exporterhelper.WithTimeout(exporterhelper.TimeoutSettings{Timeout: 0}), + exporterhelper.WithTimeout(exporterhelper.TimeoutConfig{Timeout: 0}), exporterhelper.WithShutdown(otlptext.LoggerSync(exporterLogger)), ) } @@ -66,7 +66,7 @@ func createMetricsExporter(ctx context.Context, set exporter.Settings, config co return exporterhelper.NewMetricsExporter(ctx, set, config, debugExporter.pushMetrics, exporterhelper.WithCapabilities(consumer.Capabilities{MutatesData: false}), - exporterhelper.WithTimeout(exporterhelper.TimeoutSettings{Timeout: 0}), + exporterhelper.WithTimeout(exporterhelper.TimeoutConfig{Timeout: 0}), exporterhelper.WithShutdown(otlptext.LoggerSync(exporterLogger)), ) } @@ -78,7 +78,7 @@ func createLogsExporter(ctx context.Context, set exporter.Settings, config compo return exporterhelper.NewLogsExporter(ctx, set, config, debugExporter.pushLogs, exporterhelper.WithCapabilities(consumer.Capabilities{MutatesData: false}), - exporterhelper.WithTimeout(exporterhelper.TimeoutSettings{Timeout: 0}), + exporterhelper.WithTimeout(exporterhelper.TimeoutConfig{Timeout: 0}), exporterhelper.WithShutdown(otlptext.LoggerSync(exporterLogger)), ) } diff --git a/exporter/debugexporter/go.mod b/exporter/debugexporter/go.mod index 6759007222d..fa42d996a0a 100644 --- a/exporter/debugexporter/go.mod +++ b/exporter/debugexporter/go.mod @@ -40,7 +40,6 @@ require ( github.com/prometheus/client_model v0.6.1 // indirect github.com/prometheus/common v0.59.1 // indirect github.com/prometheus/procfs v0.15.1 // indirect - go.opentelemetry.io/collector v0.109.0 // indirect go.opentelemetry.io/collector/component/componentprofiles v0.109.0 // indirect go.opentelemetry.io/collector/config/configretry v1.15.0 // indirect go.opentelemetry.io/collector/consumer/consumererror/consumererrorprofiles v0.0.0-00010101000000-000000000000 // indirect @@ -68,8 +67,6 @@ require ( gopkg.in/yaml.v3 v3.0.1 // indirect ) -replace go.opentelemetry.io/collector => ../../ - replace go.opentelemetry.io/collector/component => ../../component replace go.opentelemetry.io/collector/confmap => ../../confmap @@ -78,8 +75,6 @@ replace go.opentelemetry.io/collector/consumer => ../../consumer replace go.opentelemetry.io/collector/exporter => ../ -replace go.opentelemetry.io/collector/featuregate => ../../featuregate - replace go.opentelemetry.io/collector/pdata => ../../pdata replace go.opentelemetry.io/collector/pdata/testdata => ../../pdata/testdata @@ -102,8 +97,6 @@ replace go.opentelemetry.io/collector/consumer/consumererror/consumererrorprofil replace go.opentelemetry.io/collector/consumer/consumertest => ../../consumer/consumertest -replace go.opentelemetry.io/collector/component/componentstatus => ../../component/componentstatus - replace go.opentelemetry.io/collector/receiver/receiverprofiles => ../../receiver/receiverprofiles replace go.opentelemetry.io/collector/exporter/exporterprofiles => ../exporterprofiles diff --git a/exporter/exporterhelper/batch_sender_test.go b/exporter/exporterhelper/batch_sender_test.go index f5f8a7b85c6..5f5d49bec9a 100644 --- a/exporter/exporterhelper/batch_sender_test.go +++ b/exporter/exporterhelper/batch_sender_test.go @@ -575,7 +575,7 @@ func TestBatchSender_ShutdownDeadlock(t *testing.T) { func TestBatchSenderWithTimeout(t *testing.T) { bCfg := exporterbatcher.NewDefaultConfig() bCfg.MinSizeItems = 10 - tCfg := NewDefaultTimeoutSettings() + tCfg := NewDefaultTimeoutConfig() tCfg.Timeout = 50 * time.Millisecond be, err := newBaseExporter(defaultSettings, defaultDataType, newNoopObsrepSender, WithBatcher(bCfg, WithRequestBatchFuncs(fakeBatchMergeFunc, fakeBatchMergeSplitFunc)), diff --git a/exporter/exporterhelper/common.go b/exporter/exporterhelper/common.go index e33205f4317..0a3238d3561 100644 --- a/exporter/exporterhelper/common.go +++ b/exporter/exporterhelper/common.go @@ -64,11 +64,11 @@ func WithShutdown(shutdown component.ShutdownFunc) Option { } } -// WithTimeout overrides the default TimeoutSettings for an exporter. -// The default TimeoutSettings is 5 seconds. -func WithTimeout(timeoutSettings TimeoutSettings) Option { +// WithTimeout overrides the default TimeoutConfig for an exporter. +// The default TimeoutConfig is 5 seconds. +func WithTimeout(timeoutConfig TimeoutConfig) Option { return func(o *baseExporter) error { - o.timeoutSender.cfg = timeoutSettings + o.timeoutSender.cfg = timeoutConfig return nil } } @@ -86,10 +86,10 @@ func WithRetry(config configretry.BackOffConfig) Option { } } -// WithQueue overrides the default QueueSettings for an exporter. -// The default QueueSettings is to disable queueing. +// WithQueue overrides the default QueueConfig for an exporter. +// The default QueueConfig is to disable queueing. // This option cannot be used with the new exporter helpers New[Traces|Metrics|Logs]RequestExporter. -func WithQueue(config QueueSettings) Option { +func WithQueue(config QueueConfig) Option { return func(o *baseExporter) error { if o.marshaler == nil || o.unmarshaler == nil { return fmt.Errorf("WithQueue option is not available for the new request exporters, use WithRequestQueue instead") @@ -252,7 +252,7 @@ func newBaseExporter(set exporter.Settings, signal component.DataType, osf obsre queueSender: &baseRequestSender{}, obsrepSender: osf(obsReport), retrySender: &baseRequestSender{}, - timeoutSender: &timeoutSender{cfg: NewDefaultTimeoutSettings()}, + timeoutSender: &timeoutSender{cfg: NewDefaultTimeoutConfig()}, set: set, obsrep: obsReport, diff --git a/exporter/exporterhelper/common_test.go b/exporter/exporterhelper/common_test.go index fe063c6c300..512233ae1c7 100644 --- a/exporter/exporterhelper/common_test.go +++ b/exporter/exporterhelper/common_test.go @@ -50,7 +50,7 @@ func TestBaseExporterWithOptions(t *testing.T) { defaultSettings, defaultDataType, newNoopObsrepSender, WithStart(func(context.Context, component.Host) error { return want }), WithShutdown(func(context.Context) error { return want }), - WithTimeout(NewDefaultTimeoutSettings()), + WithTimeout(NewDefaultTimeoutConfig()), ) require.NoError(t, err) require.Equal(t, want, be.Start(context.Background(), componenttest.NewNopHost())) @@ -73,7 +73,7 @@ func TestQueueOptionsWithRequestExporter(t *testing.T) { require.Nil(t, bs.marshaler) require.Nil(t, bs.unmarshaler) _, err = newBaseExporter(exportertest.NewNopSettings(), defaultDataType, newNoopObsrepSender, - WithRetry(configretry.NewDefaultBackOffConfig()), WithQueue(NewDefaultQueueSettings())) + WithRetry(configretry.NewDefaultBackOffConfig()), WithQueue(NewDefaultQueueConfig())) require.Error(t, err) _, err = newBaseExporter(exportertest.NewNopSettings(), defaultDataType, newNoopObsrepSender, diff --git a/internal/obsreportconfig/obsmetrics/obs_exporter.go b/exporter/exporterhelper/internal/obsmetrics.go similarity index 75% rename from internal/obsreportconfig/obsmetrics/obs_exporter.go rename to exporter/exporterhelper/internal/obsmetrics.go index e69b30d2bc4..ae9e89942b3 100644 --- a/internal/obsreportconfig/obsmetrics/obs_exporter.go +++ b/exporter/exporterhelper/internal/obsmetrics.go @@ -1,9 +1,12 @@ // Copyright The OpenTelemetry Authors // SPDX-License-Identifier: Apache-2.0 -package obsmetrics // import "go.opentelemetry.io/collector/internal/obsreportconfig/obsmetrics" +package internal // import "go.opentelemetry.io/collector/exporter/exporterhelper/internal" const ( + // spanNameSep is duplicate between receiver and exporter. + spanNameSep = "/" + // ExporterKey used to identify exporters in metrics and traces. ExporterKey = "exporter" @@ -29,12 +32,9 @@ const ( SentSamplesKey = "sent_samples" // FailedToSendSamplesKey used to track samples that failed to be sent by exporters. FailedToSendSamplesKey = "send_failed_samples" -) -var ( - ExporterPrefix = ExporterKey + SpanNameSep - ExporterMetricPrefix = ExporterKey + MetricNameSep - ExportTraceDataOperationSuffix = SpanNameSep + "traces" - ExportMetricsOperationSuffix = SpanNameSep + "metrics" - ExportLogsOperationSuffix = SpanNameSep + "logs" + ExporterPrefix = ExporterKey + spanNameSep + ExportTraceDataOperationSuffix = spanNameSep + "traces" + ExportMetricsOperationSuffix = spanNameSep + "metrics" + ExportLogsOperationSuffix = spanNameSep + "logs" ) diff --git a/exporter/exporterhelper/logs_test.go b/exporter/exporterhelper/logs_test.go index 3419e9d92e4..e42a40159d0 100644 --- a/exporter/exporterhelper/logs_test.go +++ b/exporter/exporterhelper/logs_test.go @@ -25,9 +25,9 @@ import ( "go.opentelemetry.io/collector/consumer/consumererror" "go.opentelemetry.io/collector/consumer/consumertest" "go.opentelemetry.io/collector/exporter" + "go.opentelemetry.io/collector/exporter/exporterhelper/internal" "go.opentelemetry.io/collector/exporter/exportertest" "go.opentelemetry.io/collector/exporter/internal/queue" - "go.opentelemetry.io/collector/internal/obsreportconfig/obsmetrics" "go.opentelemetry.io/collector/pdata/plog" "go.opentelemetry.io/collector/pdata/testdata" ) @@ -156,7 +156,7 @@ func TestLogsRequestExporter_Default_ExportError(t *testing.T) { } func TestLogsExporter_WithPersistentQueue(t *testing.T) { - qCfg := NewDefaultQueueSettings() + qCfg := NewDefaultQueueConfig() storageID := component.MustNewIDWithName("file_storage", "storage") qCfg.StorageID = &storageID rCfg := configretry.NewDefaultBackOffConfig() @@ -253,7 +253,7 @@ func TestLogsExporter_WithRecordEnqueueFailedMetrics(t *testing.T) { t.Cleanup(func() { require.NoError(t, tt.Shutdown(context.Background())) }) rCfg := configretry.NewDefaultBackOffConfig() - qCfg := NewDefaultQueueSettings() + qCfg := NewDefaultQueueConfig() qCfg.NumConsumers = 1 qCfg.QueueSize = 2 wantErr := errors.New("some-error") @@ -359,7 +359,7 @@ func TestLogsExporter_WithShutdown_ReturnError(t *testing.T) { assert.NotNil(t, le) assert.NoError(t, err) - assert.Equal(t, le.Shutdown(context.Background()), want) + assert.Equal(t, want, le.Shutdown(context.Background())) } func TestLogsRequestExporter_WithShutdown_ReturnError(t *testing.T) { @@ -371,7 +371,7 @@ func TestLogsRequestExporter_WithShutdown_ReturnError(t *testing.T) { assert.NotNil(t, le) assert.NoError(t, err) - assert.Equal(t, le.Shutdown(context.Background()), want) + assert.Equal(t, want, le.Shutdown(context.Background())) } func newPushLogsDataModifiedDownstream(retError error) consumer.ConsumeLogsFunc { @@ -432,7 +432,7 @@ func checkWrapSpanForLogsExporter(t *testing.T, sr *tracetest.SpanRecorder, trac sentLogRecords = 0 failedToSendLogRecords = numLogRecords } - require.Containsf(t, sd.Attributes(), attribute.KeyValue{Key: obsmetrics.SentLogRecordsKey, Value: attribute.Int64Value(sentLogRecords)}, "SpanData %v", sd) - require.Containsf(t, sd.Attributes(), attribute.KeyValue{Key: obsmetrics.FailedToSendLogRecordsKey, Value: attribute.Int64Value(failedToSendLogRecords)}, "SpanData %v", sd) + require.Containsf(t, sd.Attributes(), attribute.KeyValue{Key: internal.SentLogRecordsKey, Value: attribute.Int64Value(sentLogRecords)}, "SpanData %v", sd) + require.Containsf(t, sd.Attributes(), attribute.KeyValue{Key: internal.FailedToSendLogRecordsKey, Value: attribute.Int64Value(failedToSendLogRecords)}, "SpanData %v", sd) } } diff --git a/exporter/exporterhelper/metrics_test.go b/exporter/exporterhelper/metrics_test.go index 22b643d9d8c..b97b2cdc650 100644 --- a/exporter/exporterhelper/metrics_test.go +++ b/exporter/exporterhelper/metrics_test.go @@ -25,9 +25,9 @@ import ( "go.opentelemetry.io/collector/consumer/consumererror" "go.opentelemetry.io/collector/consumer/consumertest" "go.opentelemetry.io/collector/exporter" + "go.opentelemetry.io/collector/exporter/exporterhelper/internal" "go.opentelemetry.io/collector/exporter/exportertest" "go.opentelemetry.io/collector/exporter/internal/queue" - "go.opentelemetry.io/collector/internal/obsreportconfig/obsmetrics" "go.opentelemetry.io/collector/pdata/pmetric" "go.opentelemetry.io/collector/pdata/testdata" ) @@ -157,7 +157,7 @@ func TestMetricsRequestExporter_Default_ExportError(t *testing.T) { } func TestMetricsExporter_WithPersistentQueue(t *testing.T) { - qCfg := NewDefaultQueueSettings() + qCfg := NewDefaultQueueConfig() storageID := component.MustNewIDWithName("file_storage", "storage") qCfg.StorageID = &storageID rCfg := configretry.NewDefaultBackOffConfig() @@ -255,7 +255,7 @@ func TestMetricsExporter_WithRecordEnqueueFailedMetrics(t *testing.T) { t.Cleanup(func() { require.NoError(t, tt.Shutdown(context.Background())) }) rCfg := configretry.NewDefaultBackOffConfig() - qCfg := NewDefaultQueueSettings() + qCfg := NewDefaultQueueConfig() qCfg.NumConsumers = 1 qCfg.QueueSize = 2 wantErr := errors.New("some-error") @@ -438,7 +438,7 @@ func checkWrapSpanForMetricsExporter(t *testing.T, sr *tracetest.SpanRecorder, t sentMetricPoints = 0 failedToSendMetricPoints = numMetricPoints } - require.Containsf(t, sd.Attributes(), attribute.KeyValue{Key: obsmetrics.SentMetricPointsKey, Value: attribute.Int64Value(sentMetricPoints)}, "SpanData %v", sd) - require.Containsf(t, sd.Attributes(), attribute.KeyValue{Key: obsmetrics.FailedToSendMetricPointsKey, Value: attribute.Int64Value(failedToSendMetricPoints)}, "SpanData %v", sd) + require.Containsf(t, sd.Attributes(), attribute.KeyValue{Key: internal.SentMetricPointsKey, Value: attribute.Int64Value(sentMetricPoints)}, "SpanData %v", sd) + require.Containsf(t, sd.Attributes(), attribute.KeyValue{Key: internal.FailedToSendMetricPointsKey, Value: attribute.Int64Value(failedToSendMetricPoints)}, "SpanData %v", sd) } } diff --git a/exporter/exporterhelper/obsexporter.go b/exporter/exporterhelper/obsexporter.go index 8fbac386bf2..61be5cb5ba6 100644 --- a/exporter/exporterhelper/obsexporter.go +++ b/exporter/exporterhelper/obsexporter.go @@ -13,8 +13,8 @@ import ( "go.opentelemetry.io/collector/component" "go.opentelemetry.io/collector/exporter" + "go.opentelemetry.io/collector/exporter/exporterhelper/internal" "go.opentelemetry.io/collector/exporter/exporterhelper/internal/metadata" - "go.opentelemetry.io/collector/internal/obsreportconfig/obsmetrics" ) // obsReport is a helper to add observability to an exporter. @@ -41,11 +41,11 @@ func newExporter(cfg obsReportSettings) (*obsReport, error) { } return &obsReport{ - spanNamePrefix: obsmetrics.ExporterPrefix + cfg.exporterID.String(), + spanNamePrefix: internal.ExporterPrefix + cfg.exporterID.String(), tracer: cfg.exporterCreateSettings.TracerProvider.Tracer(cfg.exporterID.String()), dataType: cfg.dataType, otelAttrs: []attribute.KeyValue{ - attribute.String(obsmetrics.ExporterKey, cfg.exporterID.String()), + attribute.String(internal.ExporterKey, cfg.exporterID.String()), }, telemetryBuilder: telemetryBuilder, }, nil @@ -55,21 +55,21 @@ func newExporter(cfg obsReportSettings) (*obsReport, error) { // The returned context should be used in other calls to the Exporter functions // dealing with the same export operation. func (or *obsReport) startTracesOp(ctx context.Context) context.Context { - return or.startOp(ctx, obsmetrics.ExportTraceDataOperationSuffix) + return or.startOp(ctx, internal.ExportTraceDataOperationSuffix) } // endTracesOp completes the export operation that was started with startTracesOp. func (or *obsReport) endTracesOp(ctx context.Context, numSpans int, err error) { numSent, numFailedToSend := toNumItems(numSpans, err) or.recordMetrics(context.WithoutCancel(ctx), component.DataTypeTraces, numSent, numFailedToSend) - endSpan(ctx, err, numSent, numFailedToSend, obsmetrics.SentSpansKey, obsmetrics.FailedToSendSpansKey) + endSpan(ctx, err, numSent, numFailedToSend, internal.SentSpansKey, internal.FailedToSendSpansKey) } // startMetricsOp is called at the start of an Export operation. // The returned context should be used in other calls to the Exporter functions // dealing with the same export operation. func (or *obsReport) startMetricsOp(ctx context.Context) context.Context { - return or.startOp(ctx, obsmetrics.ExportMetricsOperationSuffix) + return or.startOp(ctx, internal.ExportMetricsOperationSuffix) } // endMetricsOp completes the export operation that was started with @@ -79,21 +79,21 @@ func (or *obsReport) startMetricsOp(ctx context.Context) context.Context { func (or *obsReport) endMetricsOp(ctx context.Context, numMetricPoints int, err error) { numSent, numFailedToSend := toNumItems(numMetricPoints, err) or.recordMetrics(context.WithoutCancel(ctx), component.DataTypeMetrics, numSent, numFailedToSend) - endSpan(ctx, err, numSent, numFailedToSend, obsmetrics.SentMetricPointsKey, obsmetrics.FailedToSendMetricPointsKey) + endSpan(ctx, err, numSent, numFailedToSend, internal.SentMetricPointsKey, internal.FailedToSendMetricPointsKey) } // startLogsOp is called at the start of an Export operation. // The returned context should be used in other calls to the Exporter functions // dealing with the same export operation. func (or *obsReport) startLogsOp(ctx context.Context) context.Context { - return or.startOp(ctx, obsmetrics.ExportLogsOperationSuffix) + return or.startOp(ctx, internal.ExportLogsOperationSuffix) } // endLogsOp completes the export operation that was started with startLogsOp. func (or *obsReport) endLogsOp(ctx context.Context, numLogRecords int, err error) { numSent, numFailedToSend := toNumItems(numLogRecords, err) or.recordMetrics(context.WithoutCancel(ctx), component.DataTypeLogs, numSent, numFailedToSend) - endSpan(ctx, err, numSent, numFailedToSend, obsmetrics.SentLogRecordsKey, obsmetrics.FailedToSendLogRecordsKey) + endSpan(ctx, err, numSent, numFailedToSend, internal.SentLogRecordsKey, internal.FailedToSendLogRecordsKey) } // startProfilesOp is called at the start of an Export operation. diff --git a/exporter/exporterhelper/obsexporter_test.go b/exporter/exporterhelper/obsexporter_test.go index 05f55f6fbd1..802068983f0 100644 --- a/exporter/exporterhelper/obsexporter_test.go +++ b/exporter/exporterhelper/obsexporter_test.go @@ -16,7 +16,7 @@ import ( "go.opentelemetry.io/collector/component" "go.opentelemetry.io/collector/component/componenttest" "go.opentelemetry.io/collector/exporter" - "go.opentelemetry.io/collector/internal/obsreportconfig/obsmetrics" + "go.opentelemetry.io/collector/exporter/exporterhelper/internal" ) var ( @@ -55,13 +55,13 @@ func TestExportTraceDataOp(t *testing.T) { switch { case params[i].err == nil: sentSpans += params[i].items - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.SentSpansKey, Value: attribute.Int64Value(int64(params[i].items))}) - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.FailedToSendSpansKey, Value: attribute.Int64Value(0)}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.SentSpansKey, Value: attribute.Int64Value(int64(params[i].items))}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.FailedToSendSpansKey, Value: attribute.Int64Value(0)}) assert.Equal(t, codes.Unset, span.Status().Code) case errors.Is(params[i].err, errFake): failedToSendSpans += params[i].items - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.SentSpansKey, Value: attribute.Int64Value(0)}) - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.FailedToSendSpansKey, Value: attribute.Int64Value(int64(params[i].items))}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.SentSpansKey, Value: attribute.Int64Value(0)}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.FailedToSendSpansKey, Value: attribute.Int64Value(int64(params[i].items))}) assert.Equal(t, codes.Error, span.Status().Code) assert.Equal(t, params[i].err.Error(), span.Status().Description) default: @@ -104,13 +104,13 @@ func TestExportMetricsOp(t *testing.T) { switch { case params[i].err == nil: sentMetricPoints += params[i].items - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.SentMetricPointsKey, Value: attribute.Int64Value(int64(params[i].items))}) - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.FailedToSendMetricPointsKey, Value: attribute.Int64Value(0)}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.SentMetricPointsKey, Value: attribute.Int64Value(int64(params[i].items))}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.FailedToSendMetricPointsKey, Value: attribute.Int64Value(0)}) assert.Equal(t, codes.Unset, span.Status().Code) case errors.Is(params[i].err, errFake): failedToSendMetricPoints += params[i].items - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.SentMetricPointsKey, Value: attribute.Int64Value(0)}) - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.FailedToSendMetricPointsKey, Value: attribute.Int64Value(int64(params[i].items))}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.SentMetricPointsKey, Value: attribute.Int64Value(0)}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.FailedToSendMetricPointsKey, Value: attribute.Int64Value(int64(params[i].items))}) assert.Equal(t, codes.Error, span.Status().Code) assert.Equal(t, params[i].err.Error(), span.Status().Description) default: @@ -153,13 +153,13 @@ func TestExportLogsOp(t *testing.T) { switch { case params[i].err == nil: sentLogRecords += params[i].items - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.SentLogRecordsKey, Value: attribute.Int64Value(int64(params[i].items))}) - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.FailedToSendLogRecordsKey, Value: attribute.Int64Value(0)}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.SentLogRecordsKey, Value: attribute.Int64Value(int64(params[i].items))}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.FailedToSendLogRecordsKey, Value: attribute.Int64Value(0)}) assert.Equal(t, codes.Unset, span.Status().Code) case errors.Is(params[i].err, errFake): failedToSendLogRecords += params[i].items - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.SentLogRecordsKey, Value: attribute.Int64Value(0)}) - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.FailedToSendLogRecordsKey, Value: attribute.Int64Value(int64(params[i].items))}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.SentLogRecordsKey, Value: attribute.Int64Value(0)}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.FailedToSendLogRecordsKey, Value: attribute.Int64Value(int64(params[i].items))}) assert.Equal(t, codes.Error, span.Status().Code) assert.Equal(t, params[i].err.Error(), span.Status().Description) default: diff --git a/exporter/exporterhelper/profiles_test.go b/exporter/exporterhelper/profiles_test.go index 6968a818467..0c71a4be7c6 100644 --- a/exporter/exporterhelper/profiles_test.go +++ b/exporter/exporterhelper/profiles_test.go @@ -27,10 +27,10 @@ import ( "go.opentelemetry.io/collector/consumer/consumerprofiles" "go.opentelemetry.io/collector/consumer/consumertest" "go.opentelemetry.io/collector/exporter" + "go.opentelemetry.io/collector/exporter/exporterhelper/internal" "go.opentelemetry.io/collector/exporter/exporterprofiles" "go.opentelemetry.io/collector/exporter/exportertest" "go.opentelemetry.io/collector/exporter/internal/queue" - "go.opentelemetry.io/collector/internal/obsreportconfig/obsmetrics" "go.opentelemetry.io/collector/pdata/pprofile" "go.opentelemetry.io/collector/pdata/testdata" ) @@ -319,7 +319,7 @@ func checkWrapSpanForProfilesExporter(t *testing.T, sr *tracetest.SpanRecorder, sentProfileRecords = 0 failedToSendProfileRecords = numProfileRecords } - require.Containsf(t, sd.Attributes(), attribute.KeyValue{Key: obsmetrics.SentSamplesKey, Value: attribute.Int64Value(sentProfileRecords)}, "SpanData %v", sd) - require.Containsf(t, sd.Attributes(), attribute.KeyValue{Key: obsmetrics.FailedToSendSamplesKey, Value: attribute.Int64Value(failedToSendProfileRecords)}, "SpanData %v", sd) + require.Containsf(t, sd.Attributes(), attribute.KeyValue{Key: internal.SentSamplesKey, Value: attribute.Int64Value(sentProfileRecords)}, "SpanData %v", sd) + require.Containsf(t, sd.Attributes(), attribute.KeyValue{Key: internal.FailedToSendSamplesKey, Value: attribute.Int64Value(failedToSendProfileRecords)}, "SpanData %v", sd) } } diff --git a/exporter/exporterhelper/queue_sender.go b/exporter/exporterhelper/queue_sender.go index 060edab813a..58edbcc8732 100644 --- a/exporter/exporterhelper/queue_sender.go +++ b/exporter/exporterhelper/queue_sender.go @@ -15,15 +15,18 @@ import ( "go.opentelemetry.io/collector/component" "go.opentelemetry.io/collector/exporter" + "go.opentelemetry.io/collector/exporter/exporterhelper/internal" "go.opentelemetry.io/collector/exporter/exporterqueue" "go.opentelemetry.io/collector/exporter/internal/queue" - "go.opentelemetry.io/collector/internal/obsreportconfig/obsmetrics" ) const defaultQueueSize = 1000 -// QueueSettings defines configuration for queueing batches before sending to the consumerSender. -type QueueSettings struct { +// Deprecated: [v0.110.0] Use QueueConfig instead. +type QueueSettings = QueueConfig + +// QueueConfig defines configuration for queueing batches before sending to the consumerSender. +type QueueConfig struct { // Enabled indicates whether to not enqueue batches before sending to the consumerSender. Enabled bool `mapstructure:"enabled"` // NumConsumers is the number of consumers from the queue. Defaults to 10. @@ -37,9 +40,14 @@ type QueueSettings struct { StorageID *component.ID `mapstructure:"storage"` } -// NewDefaultQueueSettings returns the default settings for QueueSettings. +// Deprecated: [v0.110.0] Use NewDefaultQueueConfig instead. func NewDefaultQueueSettings() QueueSettings { - return QueueSettings{ + return NewDefaultQueueConfig() +} + +// NewDefaultQueueConfig returns the default config for QueueConfig. +func NewDefaultQueueConfig() QueueConfig { + return QueueConfig{ Enabled: true, NumConsumers: 10, // By default, batches are 8192 spans, for a total of up to 8 million spans in the queue @@ -49,8 +57,8 @@ func NewDefaultQueueSettings() QueueSettings { } } -// Validate checks if the QueueSettings configuration is valid -func (qCfg *QueueSettings) Validate() error { +// Validate checks if the QueueConfig configuration is valid +func (qCfg *QueueConfig) Validate() error { if !qCfg.Enabled { return nil } @@ -82,7 +90,7 @@ func newQueueSender(q exporterqueue.Queue[Request], set exporter.Settings, numCo qs := &queueSender{ queue: q, numConsumers: numConsumers, - traceAttribute: attribute.String(obsmetrics.ExporterKey, set.ID.String()), + traceAttribute: attribute.String(internal.ExporterKey, set.ID.String()), obsrep: obsrep, exporterID: set.ID, } @@ -104,7 +112,7 @@ func (qs *queueSender) Start(ctx context.Context, host component.Host) error { return err } - dataTypeAttr := attribute.String(obsmetrics.DataTypeKey, qs.obsrep.dataType.String()) + dataTypeAttr := attribute.String(internal.DataTypeKey, qs.obsrep.dataType.String()) return multierr.Append( qs.obsrep.telemetryBuilder.InitExporterQueueSize(func() int64 { return int64(qs.queue.Size()) }, metric.WithAttributeSet(attribute.NewSet(qs.traceAttribute, dataTypeAttr))), diff --git a/exporter/exporterhelper/queue_sender_test.go b/exporter/exporterhelper/queue_sender_test.go index 6fab17da4bb..08484ad0496 100644 --- a/exporter/exporterhelper/queue_sender_test.go +++ b/exporter/exporterhelper/queue_sender_test.go @@ -19,14 +19,14 @@ import ( "go.opentelemetry.io/collector/component/componenttest" "go.opentelemetry.io/collector/config/configretry" "go.opentelemetry.io/collector/exporter" + "go.opentelemetry.io/collector/exporter/exporterhelper/internal" "go.opentelemetry.io/collector/exporter/exporterqueue" "go.opentelemetry.io/collector/exporter/exportertest" "go.opentelemetry.io/collector/exporter/internal/queue" - "go.opentelemetry.io/collector/internal/obsreportconfig/obsmetrics" ) func TestQueuedRetry_StopWhileWaiting(t *testing.T) { - qCfg := NewDefaultQueueSettings() + qCfg := NewDefaultQueueConfig() qCfg.NumConsumers = 1 rCfg := configretry.NewDefaultBackOffConfig() be, err := newBaseExporter(defaultSettings, defaultDataType, newObservabilityConsumerSender, @@ -60,7 +60,7 @@ func TestQueuedRetry_StopWhileWaiting(t *testing.T) { } func TestQueuedRetry_DoNotPreserveCancellation(t *testing.T) { - qCfg := NewDefaultQueueSettings() + qCfg := NewDefaultQueueConfig() qCfg.NumConsumers = 1 rCfg := configretry.NewDefaultBackOffConfig() be, err := newBaseExporter(defaultSettings, defaultDataType, newObservabilityConsumerSender, @@ -89,7 +89,7 @@ func TestQueuedRetry_DoNotPreserveCancellation(t *testing.T) { } func TestQueuedRetry_RejectOnFull(t *testing.T) { - qCfg := NewDefaultQueueSettings() + qCfg := NewDefaultQueueConfig() qCfg.QueueSize = 0 qCfg.NumConsumers = 0 set := exportertest.NewNopSettings() @@ -119,7 +119,7 @@ func TestQueuedRetryHappyPath(t *testing.T) { queueOptions: []Option{ withMarshaler(mockRequestMarshaler), withUnmarshaler(mockRequestUnmarshaler(&mockRequest{})), - WithQueue(QueueSettings{ + WithQueue(QueueConfig{ Enabled: true, QueueSize: 10, NumConsumers: 1, @@ -210,7 +210,7 @@ func TestQueuedRetry_QueueMetricsReported(t *testing.T) { tt, err := componenttest.SetupTelemetry(defaultID) require.NoError(t, err) - qCfg := NewDefaultQueueSettings() + qCfg := NewDefaultQueueConfig() qCfg.NumConsumers = 0 // to make every request go straight to the queue rCfg := configretry.NewDefaultBackOffConfig() set := exporter.Settings{ID: defaultID, TelemetrySettings: tt.TelemetrySettings(), BuildInfo: component.NewDefaultBuildInfo()} @@ -226,7 +226,7 @@ func TestQueuedRetry_QueueMetricsReported(t *testing.T) { require.NoError(t, be.send(context.Background(), newErrorRequest())) } require.NoError(t, tt.CheckExporterMetricGauge("otelcol_exporter_queue_size", int64(7), - attribute.String(obsmetrics.DataTypeKey, dataType.String()))) + attribute.String(internal.DataTypeKey, dataType.String()))) assert.NoError(t, be.Shutdown(context.Background())) } @@ -248,14 +248,14 @@ func TestNoCancellationContext(t *testing.T) { assert.True(t, d.IsZero()) } -func TestQueueSettings_Validate(t *testing.T) { - qCfg := NewDefaultQueueSettings() +func TestQueueConfig_Validate(t *testing.T) { + qCfg := NewDefaultQueueConfig() assert.NoError(t, qCfg.Validate()) qCfg.QueueSize = 0 assert.EqualError(t, qCfg.Validate(), "queue size must be positive") - qCfg = NewDefaultQueueSettings() + qCfg = NewDefaultQueueConfig() qCfg.NumConsumers = 0 assert.EqualError(t, qCfg.Validate(), "number of queue consumers must be positive") @@ -276,7 +276,7 @@ func TestQueueRetryWithDisabledQueue(t *testing.T) { withMarshaler(mockRequestMarshaler), withUnmarshaler(mockRequestUnmarshaler(&mockRequest{})), func() Option { - qs := NewDefaultQueueSettings() + qs := NewDefaultQueueConfig() qs.Enabled = false return WithQueue(qs) }(), @@ -340,7 +340,7 @@ func TestQueuedRetryPersistenceEnabled(t *testing.T) { require.NoError(t, err) t.Cleanup(func() { require.NoError(t, tt.Shutdown(context.Background())) }) - qCfg := NewDefaultQueueSettings() + qCfg := NewDefaultQueueConfig() storageID := component.MustNewIDWithName("file_storage", "storage") qCfg.StorageID = &storageID // enable persistence rCfg := configretry.NewDefaultBackOffConfig() @@ -366,7 +366,7 @@ func TestQueuedRetryPersistenceEnabledStorageError(t *testing.T) { require.NoError(t, err) t.Cleanup(func() { require.NoError(t, tt.Shutdown(context.Background())) }) - qCfg := NewDefaultQueueSettings() + qCfg := NewDefaultQueueConfig() storageID := component.MustNewIDWithName("file_storage", "storage") qCfg.StorageID = &storageID // enable persistence rCfg := configretry.NewDefaultBackOffConfig() @@ -385,7 +385,7 @@ func TestQueuedRetryPersistenceEnabledStorageError(t *testing.T) { } func TestQueuedRetryPersistentEnabled_NoDataLossOnShutdown(t *testing.T) { - qCfg := NewDefaultQueueSettings() + qCfg := NewDefaultQueueConfig() qCfg.NumConsumers = 1 storageID := component.MustNewIDWithName("file_storage", "storage") qCfg.StorageID = &storageID // enable persistence to ensure data is re-queued on shutdown diff --git a/exporter/exporterhelper/retry_sender.go b/exporter/exporterhelper/retry_sender.go index 03b1dba80cc..0caa10ad72f 100644 --- a/exporter/exporterhelper/retry_sender.go +++ b/exporter/exporterhelper/retry_sender.go @@ -17,8 +17,8 @@ import ( "go.opentelemetry.io/collector/config/configretry" "go.opentelemetry.io/collector/consumer/consumererror" "go.opentelemetry.io/collector/exporter" + "go.opentelemetry.io/collector/exporter/exporterhelper/internal" "go.opentelemetry.io/collector/exporter/internal/experr" - "go.opentelemetry.io/collector/internal/obsreportconfig/obsmetrics" ) // TODO: Clean this by forcing all exporters to return an internal error type that always include the information about retries. @@ -53,7 +53,7 @@ type retrySender struct { func newRetrySender(config configretry.BackOffConfig, set exporter.Settings) *retrySender { return &retrySender{ - traceAttribute: attribute.String(obsmetrics.ExporterKey, set.ID.String()), + traceAttribute: attribute.String(internal.ExporterKey, set.ID.String()), cfg: config, stopCh: make(chan struct{}), logger: set.Logger, diff --git a/exporter/exporterhelper/retry_sender_test.go b/exporter/exporterhelper/retry_sender_test.go index e4de2a7a764..a0dab1f8782 100644 --- a/exporter/exporterhelper/retry_sender_test.go +++ b/exporter/exporterhelper/retry_sender_test.go @@ -36,7 +36,7 @@ func mockRequestMarshaler(Request) ([]byte, error) { } func TestQueuedRetry_DropOnPermanentError(t *testing.T) { - qCfg := NewDefaultQueueSettings() + qCfg := NewDefaultQueueConfig() rCfg := configretry.NewDefaultBackOffConfig() mockR := newMockRequest(2, consumererror.NewPermanent(errors.New("bad data"))) be, err := newBaseExporter(defaultSettings, defaultDataType, newObservabilityConsumerSender, @@ -60,7 +60,7 @@ func TestQueuedRetry_DropOnPermanentError(t *testing.T) { } func TestQueuedRetry_DropOnNoRetry(t *testing.T) { - qCfg := NewDefaultQueueSettings() + qCfg := NewDefaultQueueConfig() rCfg := configretry.NewDefaultBackOffConfig() rCfg.Enabled = false be, err := newBaseExporter(defaultSettings, defaultDataType, newObservabilityConsumerSender, withMarshaler(mockRequestMarshaler), @@ -86,7 +86,7 @@ func TestQueuedRetry_DropOnNoRetry(t *testing.T) { } func TestQueuedRetry_OnError(t *testing.T) { - qCfg := NewDefaultQueueSettings() + qCfg := NewDefaultQueueConfig() qCfg.NumConsumers = 1 rCfg := configretry.NewDefaultBackOffConfig() rCfg.InitialInterval = 0 @@ -115,7 +115,7 @@ func TestQueuedRetry_OnError(t *testing.T) { } func TestQueuedRetry_MaxElapsedTime(t *testing.T) { - qCfg := NewDefaultQueueSettings() + qCfg := NewDefaultQueueConfig() qCfg.NumConsumers = 1 rCfg := configretry.NewDefaultBackOffConfig() rCfg.InitialInterval = time.Millisecond @@ -164,7 +164,7 @@ func (e wrappedError) Unwrap() error { } func TestQueuedRetry_ThrottleError(t *testing.T) { - qCfg := NewDefaultQueueSettings() + qCfg := NewDefaultQueueConfig() qCfg.NumConsumers = 1 rCfg := configretry.NewDefaultBackOffConfig() rCfg.InitialInterval = 10 * time.Millisecond @@ -188,7 +188,7 @@ func TestQueuedRetry_ThrottleError(t *testing.T) { ocs.awaitAsyncProcessing() // The initial backoff is 10ms, but because of the throttle this should wait at least 100ms. - assert.True(t, 100*time.Millisecond < time.Since(start)) + assert.Less(t, 100*time.Millisecond, time.Since(start)) mockR.checkNumRequests(t, 2) ocs.checkSendItemsCount(t, 2) @@ -197,7 +197,7 @@ func TestQueuedRetry_ThrottleError(t *testing.T) { } func TestQueuedRetry_RetryOnError(t *testing.T) { - qCfg := NewDefaultQueueSettings() + qCfg := NewDefaultQueueConfig() qCfg.NumConsumers = 1 qCfg.QueueSize = 1 rCfg := configretry.NewDefaultBackOffConfig() diff --git a/exporter/exporterhelper/timeout_sender.go b/exporter/exporterhelper/timeout_sender.go index 2a6364a2aaf..9e489f54ded 100644 --- a/exporter/exporterhelper/timeout_sender.go +++ b/exporter/exporterhelper/timeout_sender.go @@ -9,14 +9,17 @@ import ( "time" ) -// TimeoutSettings for timeout. The timeout applies to individual attempts to send data to the backend. -type TimeoutSettings struct { +// Deprecated: [v0.110.0] Use TimeoutConfig instead. +type TimeoutSettings = TimeoutConfig + +// TimeoutConfig for timeout. The timeout applies to individual attempts to send data to the backend. +type TimeoutConfig struct { // Timeout is the timeout for every attempt to send data to the backend. // A zero timeout means no timeout. Timeout time.Duration `mapstructure:"timeout"` } -func (ts *TimeoutSettings) Validate() error { +func (ts *TimeoutConfig) Validate() error { // Negative timeouts are not acceptable, since all sends will fail. if ts.Timeout < 0 { return errors.New("'timeout' must be non-negative") @@ -24,9 +27,14 @@ func (ts *TimeoutSettings) Validate() error { return nil } -// NewDefaultTimeoutSettings returns the default settings for TimeoutSettings. +// Deprecated: [v0.110.0] Use NewDefaultTimeoutConfig instead. func NewDefaultTimeoutSettings() TimeoutSettings { - return TimeoutSettings{ + return NewDefaultTimeoutConfig() +} + +// NewDefaultTimeoutConfig returns the default config for TimeoutConfig. +func NewDefaultTimeoutConfig() TimeoutConfig { + return TimeoutConfig{ Timeout: 5 * time.Second, } } @@ -34,7 +42,7 @@ func NewDefaultTimeoutSettings() TimeoutSettings { // timeoutSender is a requestSender that adds a `timeout` to every request that passes this sender. type timeoutSender struct { baseRequestSender - cfg TimeoutSettings + cfg TimeoutConfig } func (ts *timeoutSender) send(ctx context.Context, req Request) error { diff --git a/exporter/exporterhelper/timeout_sender_test.go b/exporter/exporterhelper/timeout_sender_test.go index 205ac094c07..a0dac589821 100644 --- a/exporter/exporterhelper/timeout_sender_test.go +++ b/exporter/exporterhelper/timeout_sender_test.go @@ -10,14 +10,14 @@ import ( "github.com/stretchr/testify/assert" ) -func TestNewDefaultTimeoutSettings(t *testing.T) { - cfg := NewDefaultTimeoutSettings() +func TestNewDefaultTimeoutConfig(t *testing.T) { + cfg := NewDefaultTimeoutConfig() assert.NoError(t, cfg.Validate()) - assert.Equal(t, TimeoutSettings{Timeout: 5 * time.Second}, cfg) + assert.Equal(t, TimeoutConfig{Timeout: 5 * time.Second}, cfg) } func TestInvalidTimeout(t *testing.T) { - cfg := NewDefaultTimeoutSettings() + cfg := NewDefaultTimeoutConfig() assert.NoError(t, cfg.Validate()) cfg.Timeout = -1 assert.Error(t, cfg.Validate()) diff --git a/exporter/exporterhelper/traces_test.go b/exporter/exporterhelper/traces_test.go index d8e5075ceca..103b9b76060 100644 --- a/exporter/exporterhelper/traces_test.go +++ b/exporter/exporterhelper/traces_test.go @@ -25,9 +25,9 @@ import ( "go.opentelemetry.io/collector/consumer/consumererror" "go.opentelemetry.io/collector/consumer/consumertest" "go.opentelemetry.io/collector/exporter" + "go.opentelemetry.io/collector/exporter/exporterhelper/internal" "go.opentelemetry.io/collector/exporter/exportertest" "go.opentelemetry.io/collector/exporter/internal/queue" - "go.opentelemetry.io/collector/internal/obsreportconfig/obsmetrics" "go.opentelemetry.io/collector/pdata/ptrace" "go.opentelemetry.io/collector/pdata/testdata" ) @@ -154,7 +154,7 @@ func TestTracesRequestExporter_Default_ExportError(t *testing.T) { } func TestTracesExporter_WithPersistentQueue(t *testing.T) { - qCfg := NewDefaultQueueSettings() + qCfg := NewDefaultQueueConfig() storageID := component.MustNewIDWithName("file_storage", "storage") qCfg.StorageID = &storageID rCfg := configretry.NewDefaultBackOffConfig() @@ -252,7 +252,7 @@ func TestTracesExporter_WithRecordEnqueueFailedMetrics(t *testing.T) { t.Cleanup(func() { require.NoError(t, tt.Shutdown(context.Background())) }) rCfg := configretry.NewDefaultBackOffConfig() - qCfg := NewDefaultQueueSettings() + qCfg := NewDefaultQueueConfig() qCfg.NumConsumers = 1 qCfg.QueueSize = 2 wantErr := errors.New("some-error") @@ -365,7 +365,7 @@ func TestTracesExporter_WithShutdown_ReturnError(t *testing.T) { assert.NoError(t, err) assert.NoError(t, te.Start(context.Background(), componenttest.NewNopHost())) - assert.Equal(t, te.Shutdown(context.Background()), want) + assert.Equal(t, want, te.Shutdown(context.Background())) } func TestTracesRequestExporter_WithShutdown_ReturnError(t *testing.T) { @@ -378,7 +378,7 @@ func TestTracesRequestExporter_WithShutdown_ReturnError(t *testing.T) { assert.NoError(t, err) assert.NoError(t, te.Start(context.Background(), componenttest.NewNopHost())) - assert.Equal(t, te.Shutdown(context.Background()), want) + assert.Equal(t, want, te.Shutdown(context.Background())) } func newTraceDataPusher(retError error) consumer.ConsumeTracesFunc { @@ -441,7 +441,7 @@ func checkWrapSpanForTracesExporter(t *testing.T, sr *tracetest.SpanRecorder, tr sentSpans = 0 failedToSendSpans = numSpans } - require.Containsf(t, sd.Attributes(), attribute.KeyValue{Key: obsmetrics.SentSpansKey, Value: attribute.Int64Value(sentSpans)}, "SpanData %v", sd) - require.Containsf(t, sd.Attributes(), attribute.KeyValue{Key: obsmetrics.FailedToSendSpansKey, Value: attribute.Int64Value(failedToSendSpans)}, "SpanData %v", sd) + require.Containsf(t, sd.Attributes(), attribute.KeyValue{Key: internal.SentSpansKey, Value: attribute.Int64Value(sentSpans)}, "SpanData %v", sd) + require.Containsf(t, sd.Attributes(), attribute.KeyValue{Key: internal.FailedToSendSpansKey, Value: attribute.Int64Value(failedToSendSpans)}, "SpanData %v", sd) } } diff --git a/exporter/exporterprofiles/go.mod b/exporter/exporterprofiles/go.mod index 2ff006dfd7f..8d694a04f99 100644 --- a/exporter/exporterprofiles/go.mod +++ b/exporter/exporterprofiles/go.mod @@ -41,8 +41,6 @@ replace go.opentelemetry.io/collector/extension => ../../extension replace go.opentelemetry.io/collector/extension/experimental/storage => ../../extension/experimental/storage -replace go.opentelemetry.io/collector => ../.. - replace go.opentelemetry.io/collector/pdata/pprofile => ../../pdata/pprofile replace go.opentelemetry.io/collector/config/configtelemetry => ../../config/configtelemetry @@ -51,10 +49,6 @@ replace go.opentelemetry.io/collector/config/configretry => ../../config/configr replace go.opentelemetry.io/collector/pdata/testdata => ../../pdata/testdata -replace go.opentelemetry.io/collector/featuregate => ../../featuregate - -replace go.opentelemetry.io/collector/confmap => ../../confmap - replace go.opentelemetry.io/collector/component => ../../component replace go.opentelemetry.io/collector/pdata => ../../pdata @@ -67,8 +61,6 @@ replace go.opentelemetry.io/collector/consumer => ../../consumer replace go.opentelemetry.io/collector/exporter => ../ -replace go.opentelemetry.io/collector/component/componentstatus => ../../component/componentstatus - replace go.opentelemetry.io/collector/receiver/receiverprofiles => ../../receiver/receiverprofiles replace go.opentelemetry.io/collector/consumer/consumererror/consumererrorprofiles => ../../consumer/consumererror/consumererrorprofiles diff --git a/exporter/exporterqueue/config.go b/exporter/exporterqueue/config.go index fcc0e0e57b1..b8a2c01e5bb 100644 --- a/exporter/exporterqueue/config.go +++ b/exporter/exporterqueue/config.go @@ -33,7 +33,7 @@ func NewDefaultConfig() Config { } } -// Validate checks if the QueueSettings configuration is valid +// Validate checks if the Config is valid func (qCfg *Config) Validate() error { if !qCfg.Enabled { return nil diff --git a/exporter/exportertest/contract_checker.go b/exporter/exportertest/contract_checker.go index 0ae8f6b5c9a..58c74b55118 100644 --- a/exporter/exportertest/contract_checker.go +++ b/exporter/exportertest/contract_checker.go @@ -228,9 +228,9 @@ func checkLogs(t *testing.T, params CheckConsumeContractParams, mockReceiver com // Test is successful if all the elements were received successfully and no error was returned func alwaysSucceedsPassed(t *testing.T, allRecordsNumber int, reqCounter requestCounter) { require.Equal(t, allRecordsNumber, reqCounter.success) - require.Equal(t, reqCounter.total, allRecordsNumber) - require.Equal(t, reqCounter.error.nonpermanent, 0) - require.Equal(t, reqCounter.error.permanent, 0) + require.Equal(t, allRecordsNumber, reqCounter.total) + require.Equal(t, 0, reqCounter.error.nonpermanent) + require.Equal(t, 0, reqCounter.error.permanent) } // Test is successful if all the elements were retried on non-permanent errors diff --git a/exporter/exportertest/mock_consumer_test.go b/exporter/exportertest/mock_consumer_test.go index 63eec26d7fd..e853be14c6b 100644 --- a/exporter/exportertest/mock_consumer_test.go +++ b/exporter/exportertest/mock_consumer_test.go @@ -130,10 +130,10 @@ func TestConsumeLogsNonPermanent(t *testing.T) { if err != nil { return } - assert.Equal(t, mc.reqCounter.error.nonpermanent, 1) - assert.Equal(t, mc.reqCounter.error.permanent, 0) - assert.Equal(t, mc.reqCounter.success, 0) - assert.Equal(t, mc.reqCounter.total, 1) + assert.Equal(t, 1, mc.reqCounter.error.nonpermanent) + assert.Equal(t, 0, mc.reqCounter.error.permanent) + assert.Equal(t, 0, mc.reqCounter.success) + assert.Equal(t, 1, mc.reqCounter.total) } @@ -145,10 +145,10 @@ func TestConsumeLogsPermanent(t *testing.T) { if err != nil { return } - assert.Equal(t, mc.reqCounter.error.nonpermanent, 0) - assert.Equal(t, mc.reqCounter.error.permanent, 1) - assert.Equal(t, mc.reqCounter.success, 0) - assert.Equal(t, mc.reqCounter.total, 1) + assert.Equal(t, 0, mc.reqCounter.error.nonpermanent) + assert.Equal(t, 1, mc.reqCounter.error.permanent) + assert.Equal(t, 0, mc.reqCounter.success) + assert.Equal(t, 1, mc.reqCounter.total) } @@ -159,10 +159,10 @@ func TestConsumeLogsSuccess(t *testing.T) { if err != nil { return } - assert.Equal(t, mc.reqCounter.error.nonpermanent, 0) - assert.Equal(t, mc.reqCounter.error.permanent, 0) - assert.Equal(t, mc.reqCounter.success, 1) - assert.Equal(t, mc.reqCounter.total, 1) + assert.Equal(t, 0, mc.reqCounter.error.nonpermanent) + assert.Equal(t, 0, mc.reqCounter.error.permanent) + assert.Equal(t, 1, mc.reqCounter.success) + assert.Equal(t, 1, mc.reqCounter.total) } @@ -173,10 +173,10 @@ func TestConsumeTracesNonPermanent(t *testing.T) { if err != nil { return } - assert.Equal(t, mc.reqCounter.error.nonpermanent, 1) - assert.Equal(t, mc.reqCounter.error.permanent, 0) - assert.Equal(t, mc.reqCounter.success, 0) - assert.Equal(t, mc.reqCounter.total, 1) + assert.Equal(t, 1, mc.reqCounter.error.nonpermanent) + assert.Equal(t, 0, mc.reqCounter.error.permanent) + assert.Equal(t, 0, mc.reqCounter.success) + assert.Equal(t, 1, mc.reqCounter.total) } @@ -188,10 +188,10 @@ func TestConsumeTracesPermanent(t *testing.T) { if err != nil { return } - assert.Equal(t, mc.reqCounter.error.nonpermanent, 0) - assert.Equal(t, mc.reqCounter.error.permanent, 1) - assert.Equal(t, mc.reqCounter.success, 0) - assert.Equal(t, mc.reqCounter.total, 1) + assert.Equal(t, 0, mc.reqCounter.error.nonpermanent) + assert.Equal(t, 1, mc.reqCounter.error.permanent) + assert.Equal(t, 0, mc.reqCounter.success) + assert.Equal(t, 1, mc.reqCounter.total) } @@ -202,10 +202,10 @@ func TestConsumeTracesSuccess(t *testing.T) { if err != nil { return } - assert.Equal(t, mc.reqCounter.error.nonpermanent, 0) - assert.Equal(t, mc.reqCounter.error.permanent, 0) - assert.Equal(t, mc.reqCounter.success, 1) - assert.Equal(t, mc.reqCounter.total, 1) + assert.Equal(t, 0, mc.reqCounter.error.nonpermanent) + assert.Equal(t, 0, mc.reqCounter.error.permanent) + assert.Equal(t, 1, mc.reqCounter.success) + assert.Equal(t, 1, mc.reqCounter.total) } func TestConsumeMetricsNonPermanent(t *testing.T) { @@ -215,10 +215,10 @@ func TestConsumeMetricsNonPermanent(t *testing.T) { if err != nil { return } - assert.Equal(t, mc.reqCounter.error.nonpermanent, 1) - assert.Equal(t, mc.reqCounter.error.permanent, 0) - assert.Equal(t, mc.reqCounter.success, 0) - assert.Equal(t, mc.reqCounter.total, 1) + assert.Equal(t, 1, mc.reqCounter.error.nonpermanent) + assert.Equal(t, 0, mc.reqCounter.error.permanent) + assert.Equal(t, 0, mc.reqCounter.success) + assert.Equal(t, 1, mc.reqCounter.total) } @@ -229,10 +229,10 @@ func TestConsumeMetricsPermanent(t *testing.T) { if err != nil { return } - assert.Equal(t, mc.reqCounter.error.nonpermanent, 0) - assert.Equal(t, mc.reqCounter.error.permanent, 1) - assert.Equal(t, mc.reqCounter.success, 0) - assert.Equal(t, mc.reqCounter.total, 1) + assert.Equal(t, 0, mc.reqCounter.error.nonpermanent) + assert.Equal(t, 1, mc.reqCounter.error.permanent) + assert.Equal(t, 0, mc.reqCounter.success) + assert.Equal(t, 1, mc.reqCounter.total) } @@ -243,14 +243,14 @@ func TestConsumeMetricsSuccess(t *testing.T) { if err != nil { return } - assert.Equal(t, mc.reqCounter.error.nonpermanent, 0) - assert.Equal(t, mc.reqCounter.error.permanent, 0) - assert.Equal(t, mc.reqCounter.success, 1) - assert.Equal(t, mc.reqCounter.total, 1) + assert.Equal(t, 0, mc.reqCounter.error.nonpermanent) + assert.Equal(t, 0, mc.reqCounter.error.permanent) + assert.Equal(t, 1, mc.reqCounter.success) + assert.Equal(t, 1, mc.reqCounter.total) } func TestCapabilites(t *testing.T) { mc := newMockConsumer(func() error { return nil }) - assert.Equal(t, mc.Capabilities(), consumer.Capabilities{}) + assert.Equal(t, consumer.Capabilities{}, mc.Capabilities()) } diff --git a/exporter/go.mod b/exporter/go.mod index 9c6c92d63df..d558514b88a 100644 --- a/exporter/go.mod +++ b/exporter/go.mod @@ -6,7 +6,6 @@ require ( github.com/cenkalti/backoff/v4 v4.3.0 github.com/google/uuid v1.6.0 github.com/stretchr/testify v1.9.0 - go.opentelemetry.io/collector v0.109.0 go.opentelemetry.io/collector/component v0.109.0 go.opentelemetry.io/collector/component/componentprofiles v0.109.0 go.opentelemetry.io/collector/config/configretry v1.15.0 @@ -60,20 +59,14 @@ require ( gopkg.in/yaml.v3 v3.0.1 // indirect ) -replace go.opentelemetry.io/collector => ../ - replace go.opentelemetry.io/collector/component => ../component -replace go.opentelemetry.io/collector/confmap => ../confmap - replace go.opentelemetry.io/collector/consumer => ../consumer replace go.opentelemetry.io/collector/extension => ../extension replace go.opentelemetry.io/collector/extension/experimental/storage => ../extension/experimental/storage -replace go.opentelemetry.io/collector/featuregate => ../featuregate - replace go.opentelemetry.io/collector/pdata => ../pdata replace go.opentelemetry.io/collector/pdata/testdata => ../pdata/testdata @@ -94,8 +87,6 @@ replace go.opentelemetry.io/collector/consumer/consumererror/consumererrorprofil replace go.opentelemetry.io/collector/consumer/consumertest => ../consumer/consumertest -replace go.opentelemetry.io/collector/component/componentstatus => ../component/componentstatus - replace go.opentelemetry.io/collector/receiver/receiverprofiles => ../receiver/receiverprofiles replace go.opentelemetry.io/collector/exporter/exporterprofiles => ./exporterprofiles diff --git a/exporter/internal/common/factory.go b/exporter/internal/common/factory.go index b76e23f89c4..e6380c4ae78 100644 --- a/exporter/internal/common/factory.go +++ b/exporter/internal/common/factory.go @@ -35,7 +35,7 @@ func CreateTracesExporter(ctx context.Context, set exporter.Settings, config com return exporterhelper.NewTracesExporter(ctx, set, config, s.pushTraces, exporterhelper.WithCapabilities(consumer.Capabilities{MutatesData: false}), - exporterhelper.WithTimeout(exporterhelper.TimeoutSettings{Timeout: 0}), + exporterhelper.WithTimeout(exporterhelper.TimeoutConfig{Timeout: 0}), exporterhelper.WithShutdown(otlptext.LoggerSync(exporterLogger)), ) } @@ -46,7 +46,7 @@ func CreateMetricsExporter(ctx context.Context, set exporter.Settings, config co return exporterhelper.NewMetricsExporter(ctx, set, config, s.pushMetrics, exporterhelper.WithCapabilities(consumer.Capabilities{MutatesData: false}), - exporterhelper.WithTimeout(exporterhelper.TimeoutSettings{Timeout: 0}), + exporterhelper.WithTimeout(exporterhelper.TimeoutConfig{Timeout: 0}), exporterhelper.WithShutdown(otlptext.LoggerSync(exporterLogger)), ) } @@ -57,7 +57,7 @@ func CreateLogsExporter(ctx context.Context, set exporter.Settings, config compo return exporterhelper.NewLogsExporter(ctx, set, config, s.pushLogs, exporterhelper.WithCapabilities(consumer.Capabilities{MutatesData: false}), - exporterhelper.WithTimeout(exporterhelper.TimeoutSettings{Timeout: 0}), + exporterhelper.WithTimeout(exporterhelper.TimeoutConfig{Timeout: 0}), exporterhelper.WithShutdown(otlptext.LoggerSync(exporterLogger)), ) } diff --git a/exporter/loggingexporter/config_test.go b/exporter/loggingexporter/config_test.go index 70d573cd89e..de9e769846e 100644 --- a/exporter/loggingexporter/config_test.go +++ b/exporter/loggingexporter/config_test.go @@ -138,7 +138,7 @@ func Test_UnmarshalMarshalled(t *testing.T) { if tc.expectedErr == "" { assert.NoError(t, err) - assert.Equal(t, outCfg, tc.expectedConfig) + assert.Equal(t, tc.expectedConfig, outCfg) return } assert.Error(t, err) diff --git a/exporter/loggingexporter/go.mod b/exporter/loggingexporter/go.mod index ff8640acd34..e72370a5b8e 100644 --- a/exporter/loggingexporter/go.mod +++ b/exporter/loggingexporter/go.mod @@ -39,7 +39,6 @@ require ( github.com/prometheus/client_model v0.6.1 // indirect github.com/prometheus/common v0.59.1 // indirect github.com/prometheus/procfs v0.15.1 // indirect - go.opentelemetry.io/collector v0.109.0 // indirect go.opentelemetry.io/collector/component/componentprofiles v0.109.0 // indirect go.opentelemetry.io/collector/config/configretry v1.15.0 // indirect go.opentelemetry.io/collector/consumer v0.109.0 // indirect @@ -68,8 +67,6 @@ require ( gopkg.in/yaml.v3 v3.0.1 // indirect ) -replace go.opentelemetry.io/collector => ../../ - replace go.opentelemetry.io/collector/component => ../../component replace go.opentelemetry.io/collector/confmap => ../../confmap @@ -82,8 +79,6 @@ replace go.opentelemetry.io/collector/extension => ../../extension replace go.opentelemetry.io/collector/extension/experimental/storage => ../../extension/experimental/storage -replace go.opentelemetry.io/collector/featuregate => ../../featuregate - replace go.opentelemetry.io/collector/pdata => ../../pdata replace go.opentelemetry.io/collector/pdata/testdata => ../../pdata/testdata @@ -105,8 +100,6 @@ replace go.opentelemetry.io/collector/consumer/consumerprofiles => ../../consume replace go.opentelemetry.io/collector/consumer/consumertest => ../../consumer/consumertest -replace go.opentelemetry.io/collector/component/componentstatus => ../../component/componentstatus - replace go.opentelemetry.io/collector/receiver/receiverprofiles => ../../receiver/receiverprofiles replace go.opentelemetry.io/collector/exporter/exporterprofiles => ../exporterprofiles diff --git a/exporter/nopexporter/go.mod b/exporter/nopexporter/go.mod index 880d6344b4e..f28938faa5f 100644 --- a/exporter/nopexporter/go.mod +++ b/exporter/nopexporter/go.mod @@ -74,10 +74,6 @@ replace go.opentelemetry.io/collector/config/configretry => ../../config/configr replace go.opentelemetry.io/collector/receiver => ../../receiver -replace go.opentelemetry.io/collector => ../.. - -replace go.opentelemetry.io/collector/featuregate => ../../featuregate - replace go.opentelemetry.io/collector/confmap => ../../confmap replace go.opentelemetry.io/collector/config/configtelemetry => ../../config/configtelemetry @@ -92,8 +88,6 @@ replace go.opentelemetry.io/collector/consumer/consumerprofiles => ../../consume replace go.opentelemetry.io/collector/consumer/consumertest => ../../consumer/consumertest -replace go.opentelemetry.io/collector/component/componentstatus => ../../component/componentstatus - replace go.opentelemetry.io/collector/receiver/receiverprofiles => ../../receiver/receiverprofiles replace go.opentelemetry.io/collector/exporter/exporterprofiles => ../exporterprofiles diff --git a/exporter/otlpexporter/cfg-schema.yaml b/exporter/otlpexporter/cfg-schema.yaml index 8bc2b1de606..9af1e9cb84f 100644 --- a/exporter/otlpexporter/cfg-schema.yaml +++ b/exporter/otlpexporter/cfg-schema.yaml @@ -7,7 +7,7 @@ fields: doc: | Timeout is the timeout for every attempt to send data to the backend. - name: sending_queue - type: exporterhelper.QueueSettings + type: exporterhelper.QueueConfig kind: struct fields: - name: enabled diff --git a/exporter/otlpexporter/config.go b/exporter/otlpexporter/config.go index 2aec2995054..b9697125377 100644 --- a/exporter/otlpexporter/config.go +++ b/exporter/otlpexporter/config.go @@ -20,9 +20,9 @@ import ( // Config defines configuration for OTLP exporter. type Config struct { - exporterhelper.TimeoutSettings `mapstructure:",squash"` // squash ensures fields are correctly decoded in embedded struct. - QueueConfig exporterhelper.QueueSettings `mapstructure:"sending_queue"` - RetryConfig configretry.BackOffConfig `mapstructure:"retry_on_failure"` + exporterhelper.TimeoutConfig `mapstructure:",squash"` // squash ensures fields are correctly decoded in embedded struct. + exporterhelper.QueueConfig `mapstructure:"sending_queue"` + RetryConfig configretry.BackOffConfig `mapstructure:"retry_on_failure"` // Experimental: This configuration is at the early stage of development and may change without backward compatibility // until https://github.com/open-telemetry/opentelemetry-collector/issues/8122 is resolved diff --git a/exporter/otlpexporter/config_test.go b/exporter/otlpexporter/config_test.go index 7a855d47b51..f3941c83d97 100644 --- a/exporter/otlpexporter/config_test.go +++ b/exporter/otlpexporter/config_test.go @@ -38,7 +38,7 @@ func TestUnmarshalConfig(t *testing.T) { assert.NoError(t, cm.Unmarshal(&cfg)) assert.Equal(t, &Config{ - TimeoutSettings: exporterhelper.TimeoutSettings{ + TimeoutConfig: exporterhelper.TimeoutConfig{ Timeout: 10 * time.Second, }, RetryConfig: configretry.BackOffConfig{ @@ -49,7 +49,7 @@ func TestUnmarshalConfig(t *testing.T) { MaxInterval: 1 * time.Minute, MaxElapsedTime: 10 * time.Minute, }, - QueueConfig: exporterhelper.QueueSettings{ + QueueConfig: exporterhelper.QueueConfig{ Enabled: true, NumConsumers: 2, QueueSize: 10, diff --git a/exporter/otlpexporter/factory.go b/exporter/otlpexporter/factory.go index 1c7eb71a0e5..43e933965cf 100644 --- a/exporter/otlpexporter/factory.go +++ b/exporter/otlpexporter/factory.go @@ -36,10 +36,10 @@ func createDefaultConfig() component.Config { batcherCfg.Enabled = false return &Config{ - TimeoutSettings: exporterhelper.NewDefaultTimeoutSettings(), - RetryConfig: configretry.NewDefaultBackOffConfig(), - QueueConfig: exporterhelper.NewDefaultQueueSettings(), - BatcherConfig: batcherCfg, + TimeoutConfig: exporterhelper.NewDefaultTimeoutConfig(), + RetryConfig: configretry.NewDefaultBackOffConfig(), + QueueConfig: exporterhelper.NewDefaultQueueConfig(), + BatcherConfig: batcherCfg, ClientConfig: configgrpc.ClientConfig{ Headers: map[string]configopaque.String{}, // Default to gzip compression @@ -60,7 +60,7 @@ func createTracesExporter( return exporterhelper.NewTracesExporter(ctx, set, cfg, oce.pushTraces, exporterhelper.WithCapabilities(consumer.Capabilities{MutatesData: false}), - exporterhelper.WithTimeout(oCfg.TimeoutSettings), + exporterhelper.WithTimeout(oCfg.TimeoutConfig), exporterhelper.WithRetry(oCfg.RetryConfig), exporterhelper.WithQueue(oCfg.QueueConfig), exporterhelper.WithBatcher(oCfg.BatcherConfig), @@ -79,7 +79,7 @@ func createMetricsExporter( return exporterhelper.NewMetricsExporter(ctx, set, cfg, oce.pushMetrics, exporterhelper.WithCapabilities(consumer.Capabilities{MutatesData: false}), - exporterhelper.WithTimeout(oCfg.TimeoutSettings), + exporterhelper.WithTimeout(oCfg.TimeoutConfig), exporterhelper.WithRetry(oCfg.RetryConfig), exporterhelper.WithQueue(oCfg.QueueConfig), exporterhelper.WithBatcher(oCfg.BatcherConfig), @@ -98,7 +98,7 @@ func createLogsExporter( return exporterhelper.NewLogsExporter(ctx, set, cfg, oce.pushLogs, exporterhelper.WithCapabilities(consumer.Capabilities{MutatesData: false}), - exporterhelper.WithTimeout(oCfg.TimeoutSettings), + exporterhelper.WithTimeout(oCfg.TimeoutConfig), exporterhelper.WithRetry(oCfg.RetryConfig), exporterhelper.WithQueue(oCfg.QueueConfig), exporterhelper.WithBatcher(oCfg.BatcherConfig), diff --git a/exporter/otlpexporter/factory_test.go b/exporter/otlpexporter/factory_test.go index f46d4b91ef9..68af457102e 100644 --- a/exporter/otlpexporter/factory_test.go +++ b/exporter/otlpexporter/factory_test.go @@ -30,10 +30,10 @@ func TestCreateDefaultConfig(t *testing.T) { assert.NoError(t, componenttest.CheckConfigStruct(cfg)) ocfg, ok := factory.CreateDefaultConfig().(*Config) assert.True(t, ok) - assert.Equal(t, ocfg.RetryConfig, configretry.NewDefaultBackOffConfig()) - assert.Equal(t, ocfg.QueueConfig, exporterhelper.NewDefaultQueueSettings()) - assert.Equal(t, ocfg.TimeoutSettings, exporterhelper.NewDefaultTimeoutSettings()) - assert.Equal(t, ocfg.Compression, configcompression.TypeGzip) + assert.Equal(t, configretry.NewDefaultBackOffConfig(), ocfg.RetryConfig) + assert.Equal(t, exporterhelper.NewDefaultQueueConfig(), ocfg.QueueConfig) + assert.Equal(t, exporterhelper.NewDefaultTimeoutConfig(), ocfg.TimeoutConfig) + assert.Equal(t, configcompression.TypeGzip, ocfg.Compression) } func TestCreateMetricsExporter(t *testing.T) { @@ -181,7 +181,7 @@ func TestCreateTracesExporter(t *testing.T) { if err != nil { // Since the endpoint of OTLP exporter doesn't actually exist, // exporter may already stop because it cannot connect. - assert.Equal(t, err.Error(), "rpc error: code = Canceled desc = grpc: the client connection is closing") + assert.Equal(t, "rpc error: code = Canceled desc = grpc: the client connection is closing", err.Error()) } }) } diff --git a/exporter/otlpexporter/go.mod b/exporter/otlpexporter/go.mod index e7a9de3cd66..27f61ed1656 100644 --- a/exporter/otlpexporter/go.mod +++ b/exporter/otlpexporter/go.mod @@ -38,7 +38,6 @@ require ( github.com/gogo/protobuf v1.3.2 // indirect github.com/golang/snappy v0.0.4 // indirect github.com/google/uuid v1.6.0 // indirect - github.com/grpc-ecosystem/grpc-gateway/v2 v2.22.0 // indirect github.com/hashicorp/go-version v1.7.0 // indirect github.com/json-iterator/go v1.1.12 // indirect github.com/klauspost/compress v1.17.9 // indirect @@ -68,33 +67,20 @@ require ( go.opentelemetry.io/collector/extension/auth v0.109.0 // indirect go.opentelemetry.io/collector/extension/experimental/storage v0.109.0 // indirect go.opentelemetry.io/collector/featuregate v1.15.0 // indirect + go.opentelemetry.io/collector/internal/globalgates v0.109.0 // indirect go.opentelemetry.io/collector/receiver v0.109.0 // indirect go.opentelemetry.io/collector/receiver/receiverprofiles v0.109.0 // indirect - go.opentelemetry.io/contrib/config v0.9.0 // indirect go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.54.0 // indirect go.opentelemetry.io/otel v1.30.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.5.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.29.0 // indirect go.opentelemetry.io/otel/exporters/prometheus v0.52.0 // indirect - go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.5.0 // indirect - go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.29.0 // indirect - go.opentelemetry.io/otel/log v0.5.0 // indirect go.opentelemetry.io/otel/metric v1.30.0 // indirect go.opentelemetry.io/otel/sdk v1.30.0 // indirect - go.opentelemetry.io/otel/sdk/log v0.5.0 // indirect go.opentelemetry.io/otel/sdk/metric v1.30.0 // indirect go.opentelemetry.io/otel/trace v1.30.0 // indirect - go.opentelemetry.io/proto/otlp v1.3.1 // indirect go.uber.org/multierr v1.11.0 // indirect golang.org/x/net v0.28.0 // indirect golang.org/x/sys v0.25.0 // indirect golang.org/x/text v0.17.0 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20240822170219-fc7c04adadcd // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) @@ -162,3 +148,5 @@ replace go.opentelemetry.io/collector/exporter/exporterprofiles => ../exporterpr replace go.opentelemetry.io/collector/consumer/consumererror/consumererrorprofiles => ../../consumer/consumererror/consumererrorprofiles replace go.opentelemetry.io/collector/component/componentprofiles => ../../component/componentprofiles + +replace go.opentelemetry.io/collector/internal/globalgates => ../../internal/globalgates diff --git a/exporter/otlpexporter/go.sum b/exporter/otlpexporter/go.sum index 67a62755e70..edf7b021678 100644 --- a/exporter/otlpexporter/go.sum +++ b/exporter/otlpexporter/go.sum @@ -25,8 +25,6 @@ github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeN github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/grpc-ecosystem/grpc-gateway/v2 v2.22.0 h1:asbCHRVmodnJTuQ3qamDwqVOIjwqUPTYmYuemVOx+Ys= -github.com/grpc-ecosystem/grpc-gateway/v2 v2.22.0/go.mod h1:ggCgvZ2r7uOoQjOyu2Y1NhHmEPPzzuhWgcza5M1Ji1I= github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY= github.com/hashicorp/go-version v1.7.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= @@ -78,46 +76,20 @@ github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsT github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -go.opentelemetry.io/contrib/config v0.9.0 h1:AJ1c6+vJ6SxvqBBhsi2RhLFMlc6SnJOg81Jp4toFyNw= -go.opentelemetry.io/contrib/config v0.9.0/go.mod h1:u/u2L6y/c8GKrq/AP51sfXV4Eu24btVlC3A5f867xwg= go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.54.0 h1:r6I7RJCN86bpD/FQwedZ0vSixDpwuWREjW9oRMsmqDc= go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.54.0/go.mod h1:B9yO6b04uB80CzjedvewuqDhxJxi11s7/GtiGa8bAjI= go.opentelemetry.io/otel v1.30.0 h1:F2t8sK4qf1fAmY9ua4ohFS/K+FUuOPemHUIXHtktrts= go.opentelemetry.io/otel v1.30.0/go.mod h1:tFw4Br9b7fOS+uEao81PJjVMjW/5fvNCbpsDIXqP0pc= -go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.5.0 h1:4d++HQ+Ihdl+53zSjtsCUFDmNMju2FC9qFkUlTxPLqo= -go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.5.0/go.mod h1:mQX5dTO3Mh5ZF7bPKDkt5c/7C41u/SiDr9XgTpzXXn8= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.29.0 h1:k6fQVDQexDE+3jG2SfCQjnHS7OamcP73YMoxEVq5B6k= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.29.0/go.mod h1:t4BrYLHU450Zo9fnydWlIuswB1bm7rM8havDpWOJeDo= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.29.0 h1:xvhQxJ/C9+RTnAj5DpTg7LSM1vbbMTiXt7e9hsfqHNw= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.29.0/go.mod h1:Fcvs2Bz1jkDM+Wf5/ozBGmi3tQ/c9zPKLnsipnfhGAo= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.29.0 h1:dIIDULZJpgdiHz5tXrTgKIMLkus6jEFa7x5SOKcyR7E= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.29.0/go.mod h1:jlRVBe7+Z1wyxFSUs48L6OBQZ5JwH2Hg/Vbl+t9rAgI= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.29.0 h1:nSiV3s7wiCam610XcLbYOmMfJxB9gO4uK3Xgv5gmTgg= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.29.0/go.mod h1:hKn/e/Nmd19/x1gvIHwtOwVWM+VhuITSWip3JUDghj0= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.29.0 h1:JAv0Jwtl01UFiyWZEMiJZBiTlv5A50zNs8lsthXqIio= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.29.0/go.mod h1:QNKLmUEAq2QUbPQUfvw4fmv0bgbK7UlOSFCnXyfvSNc= go.opentelemetry.io/otel/exporters/prometheus v0.52.0 h1:kmU3H0b9ufFSi8IQCcxack+sWUblKkFbqWYs6YiACGQ= go.opentelemetry.io/otel/exporters/prometheus v0.52.0/go.mod h1:+wsAp2+JhuGXX7YRkjlkx6hyWY3ogFPfNA4x3nyiAh0= -go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.5.0 h1:ThVXnEsdwNcxdBO+r96ci1xbF+PgNjwlk457VNuJODo= -go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.5.0/go.mod h1:rHWcSmC4q2h3gje/yOq6sAOaq8+UHxN/Ru3BbmDXOfY= -go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.29.0 h1:WDdP9acbMYjbKIyJUhTvtzj601sVJOqgWdUxSdR/Ysc= -go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.29.0/go.mod h1:BLbf7zbNIONBLPwvFnwNHGj4zge8uTCM/UPIVW1Mq2I= -go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.29.0 h1:X3ZjNp36/WlkSYx0ul2jw4PtbNEDDeLskw3VPsrpYM0= -go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.29.0/go.mod h1:2uL/xnOXh0CHOBFCWXz5u1A4GXLiW+0IQIzVbeOEQ0U= -go.opentelemetry.io/otel/log v0.5.0 h1:x1Pr6Y3gnXgl1iFBwtGy1W/mnzENoK0w0ZoaeOI3i30= -go.opentelemetry.io/otel/log v0.5.0/go.mod h1:NU/ozXeGuOR5/mjCRXYbTC00NFJ3NYuraV/7O78F0rE= go.opentelemetry.io/otel/metric v1.30.0 h1:4xNulvn9gjzo4hjg+wzIKG7iNFEaBMX00Qd4QIZs7+w= go.opentelemetry.io/otel/metric v1.30.0/go.mod h1:aXTfST94tswhWEb+5QjlSqG+cZlmyXy/u8jFpor3WqQ= go.opentelemetry.io/otel/sdk v1.30.0 h1:cHdik6irO49R5IysVhdn8oaiR9m8XluDaJAs4DfOrYE= go.opentelemetry.io/otel/sdk v1.30.0/go.mod h1:p14X4Ok8S+sygzblytT1nqG98QG2KYKv++HE0LY/mhg= -go.opentelemetry.io/otel/sdk/log v0.5.0 h1:A+9lSjlZGxkQOr7QSBJcuyyYBw79CufQ69saiJLey7o= -go.opentelemetry.io/otel/sdk/log v0.5.0/go.mod h1:zjxIW7sw1IHolZL2KlSAtrUi8JHttoeiQy43Yl3WuVQ= go.opentelemetry.io/otel/sdk/metric v1.30.0 h1:QJLT8Pe11jyHBHfSAgYH7kEmT24eX792jZO1bo4BXkM= go.opentelemetry.io/otel/sdk/metric v1.30.0/go.mod h1:waS6P3YqFNzeP01kuo/MBBYqaoBJl7efRQHOaydhy1Y= go.opentelemetry.io/otel/trace v1.30.0 h1:7UBkkYzeg3C7kQX8VAidWh2biiQbtAKjyIML8dQ9wmc= go.opentelemetry.io/otel/trace v1.30.0/go.mod h1:5EyKqTzzmyqB9bwtCCq6pDLktPK6fmGf/Dph+8VI02o= -go.opentelemetry.io/proto/otlp v1.3.1 h1:TrMUixzpM0yuc/znrFTP9MMRh8trP93mkCiDVeXrui0= -go.opentelemetry.io/proto/otlp v1.3.1/go.mod h1:0X1WI4de4ZsLrrJNLAQbFeLCm3T7yBkR0XqQ7niQU+8= go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= @@ -155,8 +127,6 @@ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8T golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -google.golang.org/genproto/googleapis/api v0.0.0-20240822170219-fc7c04adadcd h1:BBOTEWLuuEGQy9n1y9MhVJ9Qt0BDu21X8qZs71/uPZo= -google.golang.org/genproto/googleapis/api v0.0.0-20240822170219-fc7c04adadcd/go.mod h1:fO8wJzT2zbQbAjbIoos1285VfEIYKDDY+Dt+WpTkh6g= google.golang.org/genproto/googleapis/rpc v0.0.0-20240822170219-fc7c04adadcd h1:6TEm2ZxXoQmFWFlt1vNxvVOa1Q0dXFQD1m/rYjXmS0E= google.golang.org/genproto/googleapis/rpc v0.0.0-20240822170219-fc7c04adadcd/go.mod h1:UqMtugtsSgubUsoxbuAoiCXvqvErP7Gf0so0mK9tHxU= google.golang.org/grpc v1.66.0 h1:DibZuoBznOxbDQxRINckZcUvnCEvrW9pcWIE2yF9r1c= diff --git a/exporter/otlpexporter/otlp_test.go b/exporter/otlpexporter/otlp_test.go index 4e823d125f5..d38de21e126 100644 --- a/exporter/otlpexporter/otlp_test.go +++ b/exporter/otlpexporter/otlp_test.go @@ -365,7 +365,7 @@ func TestSendTraces(t *testing.T) { assert.EqualValues(t, td, rcv.getLastRequest()) md := rcv.getMetadata() - require.EqualValues(t, md.Get("header"), expectedHeader) + require.EqualValues(t, expectedHeader, md.Get("header")) require.Len(t, md.Get("User-Agent"), 1) require.Contains(t, md.Get("User-Agent")[0], "Collector/1.2.3test") @@ -537,7 +537,7 @@ func TestSendMetrics(t *testing.T) { assert.EqualValues(t, md, rcv.getLastRequest()) mdata := rcv.getMetadata() - require.EqualValues(t, mdata.Get("header"), expectedHeader) + require.EqualValues(t, expectedHeader, mdata.Get("header")) require.Len(t, mdata.Get("User-Agent"), 1) require.Contains(t, mdata.Get("User-Agent")[0], "Collector/1.2.3test") diff --git a/exporter/otlphttpexporter/config.go b/exporter/otlphttpexporter/config.go index ef59fc324a0..f3a70fa2337 100644 --- a/exporter/otlphttpexporter/config.go +++ b/exporter/otlphttpexporter/config.go @@ -45,9 +45,9 @@ func (e *EncodingType) UnmarshalText(text []byte) error { // Config defines configuration for OTLP/HTTP exporter. type Config struct { - confighttp.ClientConfig `mapstructure:",squash"` // squash ensures fields are correctly decoded in embedded struct. - QueueConfig exporterhelper.QueueSettings `mapstructure:"sending_queue"` - RetryConfig configretry.BackOffConfig `mapstructure:"retry_on_failure"` + confighttp.ClientConfig `mapstructure:",squash"` // squash ensures fields are correctly decoded in embedded struct. + exporterhelper.QueueConfig `mapstructure:"sending_queue"` + RetryConfig configretry.BackOffConfig `mapstructure:"retry_on_failure"` // The URL to send traces to. If omitted the Endpoint + "/v1/traces" will be used. TracesEndpoint string `mapstructure:"traces_endpoint"` diff --git a/exporter/otlphttpexporter/config_test.go b/exporter/otlphttpexporter/config_test.go index 9a9e261308f..257f7e25389 100644 --- a/exporter/otlphttpexporter/config_test.go +++ b/exporter/otlphttpexporter/config_test.go @@ -46,7 +46,7 @@ func TestUnmarshalConfig(t *testing.T) { MaxInterval: 1 * time.Minute, MaxElapsedTime: 10 * time.Minute, }, - QueueConfig: exporterhelper.QueueSettings{ + QueueConfig: exporterhelper.QueueConfig{ Enabled: true, NumConsumers: 2, QueueSize: 10, diff --git a/exporter/otlphttpexporter/factory.go b/exporter/otlphttpexporter/factory.go index b13b4638bad..d19acc80e2f 100644 --- a/exporter/otlphttpexporter/factory.go +++ b/exporter/otlphttpexporter/factory.go @@ -37,7 +37,7 @@ func NewFactory() exporter.Factory { func createDefaultConfig() component.Config { return &Config{ RetryConfig: configretry.NewDefaultBackOffConfig(), - QueueConfig: exporterhelper.NewDefaultQueueSettings(), + QueueConfig: exporterhelper.NewDefaultQueueConfig(), Encoding: EncodingProto, ClientConfig: confighttp.ClientConfig{ Endpoint: "", @@ -90,7 +90,7 @@ func createTracesExporter( exporterhelper.WithStart(oce.start), exporterhelper.WithCapabilities(consumer.Capabilities{MutatesData: false}), // explicitly disable since we rely on http.Client timeout logic. - exporterhelper.WithTimeout(exporterhelper.TimeoutSettings{Timeout: 0}), + exporterhelper.WithTimeout(exporterhelper.TimeoutConfig{Timeout: 0}), exporterhelper.WithRetry(oCfg.RetryConfig), exporterhelper.WithQueue(oCfg.QueueConfig)) } @@ -116,7 +116,7 @@ func createMetricsExporter( exporterhelper.WithStart(oce.start), exporterhelper.WithCapabilities(consumer.Capabilities{MutatesData: false}), // explicitly disable since we rely on http.Client timeout logic. - exporterhelper.WithTimeout(exporterhelper.TimeoutSettings{Timeout: 0}), + exporterhelper.WithTimeout(exporterhelper.TimeoutConfig{Timeout: 0}), exporterhelper.WithRetry(oCfg.RetryConfig), exporterhelper.WithQueue(oCfg.QueueConfig)) } @@ -142,7 +142,7 @@ func createLogsExporter( exporterhelper.WithStart(oce.start), exporterhelper.WithCapabilities(consumer.Capabilities{MutatesData: false}), // explicitly disable since we rely on http.Client timeout logic. - exporterhelper.WithTimeout(exporterhelper.TimeoutSettings{Timeout: 0}), + exporterhelper.WithTimeout(exporterhelper.TimeoutConfig{Timeout: 0}), exporterhelper.WithRetry(oCfg.RetryConfig), exporterhelper.WithQueue(oCfg.QueueConfig)) } diff --git a/exporter/otlphttpexporter/factory_test.go b/exporter/otlphttpexporter/factory_test.go index a35f62557f0..98ae52756a2 100644 --- a/exporter/otlphttpexporter/factory_test.go +++ b/exporter/otlphttpexporter/factory_test.go @@ -28,15 +28,15 @@ func TestCreateDefaultConfig(t *testing.T) { assert.NoError(t, componenttest.CheckConfigStruct(cfg)) ocfg, ok := factory.CreateDefaultConfig().(*Config) assert.True(t, ok) - assert.Equal(t, ocfg.ClientConfig.Endpoint, "") - assert.Equal(t, ocfg.ClientConfig.Timeout, 30*time.Second, "default timeout is 30 second") + assert.Equal(t, "", ocfg.ClientConfig.Endpoint) + assert.Equal(t, 30*time.Second, ocfg.ClientConfig.Timeout, "default timeout is 30 second") assert.True(t, ocfg.RetryConfig.Enabled, "default retry is enabled") - assert.Equal(t, ocfg.RetryConfig.MaxElapsedTime, 300*time.Second, "default retry MaxElapsedTime") - assert.Equal(t, ocfg.RetryConfig.InitialInterval, 5*time.Second, "default retry InitialInterval") - assert.Equal(t, ocfg.RetryConfig.MaxInterval, 30*time.Second, "default retry MaxInterval") + assert.Equal(t, 300*time.Second, ocfg.RetryConfig.MaxElapsedTime, "default retry MaxElapsedTime") + assert.Equal(t, 5*time.Second, ocfg.RetryConfig.InitialInterval, "default retry InitialInterval") + assert.Equal(t, 30*time.Second, ocfg.RetryConfig.MaxInterval, "default retry MaxInterval") assert.True(t, ocfg.QueueConfig.Enabled, "default sending queue is enabled") - assert.Equal(t, ocfg.Encoding, EncodingProto) - assert.Equal(t, ocfg.Compression, configcompression.TypeGzip) + assert.Equal(t, EncodingProto, ocfg.Encoding) + assert.Equal(t, configcompression.TypeGzip, ocfg.Compression) } func TestCreateMetricsExporter(t *testing.T) { @@ -192,7 +192,7 @@ func TestCreateTracesExporter(t *testing.T) { if err != nil { // Since the endpoint of OTLP exporter doesn't actually exist, // exporter may already stop because it cannot connect. - assert.Equal(t, err.Error(), "rpc error: code = Canceled desc = grpc: the client connection is closing") + assert.Equal(t, "rpc error: code = Canceled desc = grpc: the client connection is closing", err.Error()) } }) } diff --git a/exporter/otlphttpexporter/go.mod b/exporter/otlphttpexporter/go.mod index f158a1a6adb..ecf43e4c77e 100644 --- a/exporter/otlphttpexporter/go.mod +++ b/exporter/otlphttpexporter/go.mod @@ -37,7 +37,6 @@ require ( github.com/gogo/protobuf v1.3.2 // indirect github.com/golang/snappy v0.0.4 // indirect github.com/google/uuid v1.6.0 // indirect - github.com/grpc-ecosystem/grpc-gateway/v2 v2.22.0 // indirect github.com/hashicorp/go-version v1.7.0 // indirect github.com/json-iterator/go v1.1.12 // indirect github.com/klauspost/compress v1.17.9 // indirect @@ -67,33 +66,20 @@ require ( go.opentelemetry.io/collector/extension/auth v0.109.0 // indirect go.opentelemetry.io/collector/extension/experimental/storage v0.109.0 // indirect go.opentelemetry.io/collector/featuregate v1.15.0 // indirect + go.opentelemetry.io/collector/internal/globalgates v0.109.0 // indirect go.opentelemetry.io/collector/receiver v0.109.0 // indirect go.opentelemetry.io/collector/receiver/receiverprofiles v0.109.0 // indirect - go.opentelemetry.io/contrib/config v0.9.0 // indirect go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.54.0 // indirect go.opentelemetry.io/otel v1.30.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.5.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.29.0 // indirect go.opentelemetry.io/otel/exporters/prometheus v0.52.0 // indirect - go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.5.0 // indirect - go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.29.0 // indirect - go.opentelemetry.io/otel/log v0.5.0 // indirect go.opentelemetry.io/otel/metric v1.30.0 // indirect go.opentelemetry.io/otel/sdk v1.30.0 // indirect - go.opentelemetry.io/otel/sdk/log v0.5.0 // indirect go.opentelemetry.io/otel/sdk/metric v1.30.0 // indirect go.opentelemetry.io/otel/trace v1.30.0 // indirect - go.opentelemetry.io/proto/otlp v1.3.1 // indirect go.uber.org/multierr v1.11.0 // indirect golang.org/x/net v0.29.0 // indirect golang.org/x/sys v0.25.0 // indirect golang.org/x/text v0.18.0 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20240822170219-fc7c04adadcd // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) @@ -159,3 +145,5 @@ replace go.opentelemetry.io/collector/exporter/exporterprofiles => ../exporterpr replace go.opentelemetry.io/collector/component/componentprofiles => ../../component/componentprofiles replace go.opentelemetry.io/collector/consumer/consumererror/consumererrorprofiles => ../../consumer/consumererror/consumererrorprofiles + +replace go.opentelemetry.io/collector/internal/globalgates => ../../internal/globalgates diff --git a/exporter/otlphttpexporter/go.sum b/exporter/otlphttpexporter/go.sum index 11db48feb97..f06be19ff12 100644 --- a/exporter/otlphttpexporter/go.sum +++ b/exporter/otlphttpexporter/go.sum @@ -27,8 +27,6 @@ github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeN github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/grpc-ecosystem/grpc-gateway/v2 v2.22.0 h1:asbCHRVmodnJTuQ3qamDwqVOIjwqUPTYmYuemVOx+Ys= -github.com/grpc-ecosystem/grpc-gateway/v2 v2.22.0/go.mod h1:ggCgvZ2r7uOoQjOyu2Y1NhHmEPPzzuhWgcza5M1Ji1I= github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY= github.com/hashicorp/go-version v1.7.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= @@ -80,46 +78,20 @@ github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsT github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -go.opentelemetry.io/contrib/config v0.9.0 h1:AJ1c6+vJ6SxvqBBhsi2RhLFMlc6SnJOg81Jp4toFyNw= -go.opentelemetry.io/contrib/config v0.9.0/go.mod h1:u/u2L6y/c8GKrq/AP51sfXV4Eu24btVlC3A5f867xwg= go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.54.0 h1:TT4fX+nBOA/+LUkobKGW1ydGcn+G3vRw9+g5HwCphpk= go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.54.0/go.mod h1:L7UH0GbB0p47T4Rri3uHjbpCFYrVrwc1I25QhNPiGK8= go.opentelemetry.io/otel v1.30.0 h1:F2t8sK4qf1fAmY9ua4ohFS/K+FUuOPemHUIXHtktrts= go.opentelemetry.io/otel v1.30.0/go.mod h1:tFw4Br9b7fOS+uEao81PJjVMjW/5fvNCbpsDIXqP0pc= -go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.5.0 h1:4d++HQ+Ihdl+53zSjtsCUFDmNMju2FC9qFkUlTxPLqo= -go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.5.0/go.mod h1:mQX5dTO3Mh5ZF7bPKDkt5c/7C41u/SiDr9XgTpzXXn8= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.29.0 h1:k6fQVDQexDE+3jG2SfCQjnHS7OamcP73YMoxEVq5B6k= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.29.0/go.mod h1:t4BrYLHU450Zo9fnydWlIuswB1bm7rM8havDpWOJeDo= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.29.0 h1:xvhQxJ/C9+RTnAj5DpTg7LSM1vbbMTiXt7e9hsfqHNw= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.29.0/go.mod h1:Fcvs2Bz1jkDM+Wf5/ozBGmi3tQ/c9zPKLnsipnfhGAo= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.29.0 h1:dIIDULZJpgdiHz5tXrTgKIMLkus6jEFa7x5SOKcyR7E= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.29.0/go.mod h1:jlRVBe7+Z1wyxFSUs48L6OBQZ5JwH2Hg/Vbl+t9rAgI= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.29.0 h1:nSiV3s7wiCam610XcLbYOmMfJxB9gO4uK3Xgv5gmTgg= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.29.0/go.mod h1:hKn/e/Nmd19/x1gvIHwtOwVWM+VhuITSWip3JUDghj0= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.29.0 h1:JAv0Jwtl01UFiyWZEMiJZBiTlv5A50zNs8lsthXqIio= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.29.0/go.mod h1:QNKLmUEAq2QUbPQUfvw4fmv0bgbK7UlOSFCnXyfvSNc= go.opentelemetry.io/otel/exporters/prometheus v0.52.0 h1:kmU3H0b9ufFSi8IQCcxack+sWUblKkFbqWYs6YiACGQ= go.opentelemetry.io/otel/exporters/prometheus v0.52.0/go.mod h1:+wsAp2+JhuGXX7YRkjlkx6hyWY3ogFPfNA4x3nyiAh0= -go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.5.0 h1:ThVXnEsdwNcxdBO+r96ci1xbF+PgNjwlk457VNuJODo= -go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.5.0/go.mod h1:rHWcSmC4q2h3gje/yOq6sAOaq8+UHxN/Ru3BbmDXOfY= -go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.29.0 h1:WDdP9acbMYjbKIyJUhTvtzj601sVJOqgWdUxSdR/Ysc= -go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.29.0/go.mod h1:BLbf7zbNIONBLPwvFnwNHGj4zge8uTCM/UPIVW1Mq2I= -go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.29.0 h1:X3ZjNp36/WlkSYx0ul2jw4PtbNEDDeLskw3VPsrpYM0= -go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.29.0/go.mod h1:2uL/xnOXh0CHOBFCWXz5u1A4GXLiW+0IQIzVbeOEQ0U= -go.opentelemetry.io/otel/log v0.5.0 h1:x1Pr6Y3gnXgl1iFBwtGy1W/mnzENoK0w0ZoaeOI3i30= -go.opentelemetry.io/otel/log v0.5.0/go.mod h1:NU/ozXeGuOR5/mjCRXYbTC00NFJ3NYuraV/7O78F0rE= go.opentelemetry.io/otel/metric v1.30.0 h1:4xNulvn9gjzo4hjg+wzIKG7iNFEaBMX00Qd4QIZs7+w= go.opentelemetry.io/otel/metric v1.30.0/go.mod h1:aXTfST94tswhWEb+5QjlSqG+cZlmyXy/u8jFpor3WqQ= go.opentelemetry.io/otel/sdk v1.30.0 h1:cHdik6irO49R5IysVhdn8oaiR9m8XluDaJAs4DfOrYE= go.opentelemetry.io/otel/sdk v1.30.0/go.mod h1:p14X4Ok8S+sygzblytT1nqG98QG2KYKv++HE0LY/mhg= -go.opentelemetry.io/otel/sdk/log v0.5.0 h1:A+9lSjlZGxkQOr7QSBJcuyyYBw79CufQ69saiJLey7o= -go.opentelemetry.io/otel/sdk/log v0.5.0/go.mod h1:zjxIW7sw1IHolZL2KlSAtrUi8JHttoeiQy43Yl3WuVQ= go.opentelemetry.io/otel/sdk/metric v1.30.0 h1:QJLT8Pe11jyHBHfSAgYH7kEmT24eX792jZO1bo4BXkM= go.opentelemetry.io/otel/sdk/metric v1.30.0/go.mod h1:waS6P3YqFNzeP01kuo/MBBYqaoBJl7efRQHOaydhy1Y= go.opentelemetry.io/otel/trace v1.30.0 h1:7UBkkYzeg3C7kQX8VAidWh2biiQbtAKjyIML8dQ9wmc= go.opentelemetry.io/otel/trace v1.30.0/go.mod h1:5EyKqTzzmyqB9bwtCCq6pDLktPK6fmGf/Dph+8VI02o= -go.opentelemetry.io/proto/otlp v1.3.1 h1:TrMUixzpM0yuc/znrFTP9MMRh8trP93mkCiDVeXrui0= -go.opentelemetry.io/proto/otlp v1.3.1/go.mod h1:0X1WI4de4ZsLrrJNLAQbFeLCm3T7yBkR0XqQ7niQU+8= go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= @@ -157,8 +129,6 @@ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8T golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -google.golang.org/genproto/googleapis/api v0.0.0-20240822170219-fc7c04adadcd h1:BBOTEWLuuEGQy9n1y9MhVJ9Qt0BDu21X8qZs71/uPZo= -google.golang.org/genproto/googleapis/api v0.0.0-20240822170219-fc7c04adadcd/go.mod h1:fO8wJzT2zbQbAjbIoos1285VfEIYKDDY+Dt+WpTkh6g= google.golang.org/genproto/googleapis/rpc v0.0.0-20240822170219-fc7c04adadcd h1:6TEm2ZxXoQmFWFlt1vNxvVOa1Q0dXFQD1m/rYjXmS0E= google.golang.org/genproto/googleapis/rpc v0.0.0-20240822170219-fc7c04adadcd/go.mod h1:UqMtugtsSgubUsoxbuAoiCXvqvErP7Gf0so0mK9tHxU= google.golang.org/grpc v1.66.0 h1:DibZuoBznOxbDQxRINckZcUvnCEvrW9pcWIE2yF9r1c= diff --git a/exporter/otlphttpexporter/otlp_test.go b/exporter/otlphttpexporter/otlp_test.go index 65e8ea02752..6bf3d2b4551 100644 --- a/exporter/otlphttpexporter/otlp_test.go +++ b/exporter/otlphttpexporter/otlp_test.go @@ -226,7 +226,7 @@ func TestErrorResponses(t *testing.T) { cfg := &Config{ Encoding: EncodingProto, TracesEndpoint: fmt.Sprintf("%s/v1/traces", srv.URL), - // Create without QueueSettings and RetryConfig so that ConsumeTraces + // Create without QueueConfig and RetryConfig so that ConsumeTraces // returns the errors that we want to check immediately. } exp, err := createTracesExporter(context.Background(), exportertest.NewNopSettings(), cfg) diff --git a/extension/memorylimiterextension/go.mod b/extension/memorylimiterextension/go.mod index 3a2820faa98..bed21c8dc20 100644 --- a/extension/memorylimiterextension/go.mod +++ b/extension/memorylimiterextension/go.mod @@ -66,8 +66,6 @@ replace go.opentelemetry.io/collector/confmap => ../../confmap replace go.opentelemetry.io/collector/extension => ../../extension -replace go.opentelemetry.io/collector/featuregate => ../../featuregate - replace go.opentelemetry.io/collector/pdata => ../../pdata replace go.opentelemetry.io/collector/consumer => ../../consumer diff --git a/extension/memorylimiterextension/go.sum b/extension/memorylimiterextension/go.sum index 5e336342bb7..97f09cd34bd 100644 --- a/extension/memorylimiterextension/go.sum +++ b/extension/memorylimiterextension/go.sum @@ -56,8 +56,8 @@ github.com/prometheus/common v0.59.1 h1:LXb1quJHWm1P6wq/U824uxYi4Sg0oGvNeUm1z5dJ github.com/prometheus/common v0.59.1/go.mod h1:GpWM7dewqmVYcd7SmRaiWVe9SSqjf0UrwnYnpEZNuT0= github.com/prometheus/procfs v0.15.1 h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0learggepc= github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk= -github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ= -github.com/rogpeppe/go-internal v1.10.0/go.mod h1:UQnix2H7Ngw/k4C5ijL5+65zddjncjaFoBhdsK/akog= +github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= +github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= github.com/shirou/gopsutil/v4 v4.24.8 h1:pVQjIenQkIhqO81mwTaXjTzOMT7d3TZkf43PlVFHENI= github.com/shirou/gopsutil/v4 v4.24.8/go.mod h1:wE0OrJtj4dG+hYkxqDH3QiBICdKSf04/npcvLLc/oRg= github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= diff --git a/extension/zpagesextension/go.mod b/extension/zpagesextension/go.mod index 1523f50ba81..6632d81b00a 100644 --- a/extension/zpagesextension/go.mod +++ b/extension/zpagesextension/go.mod @@ -20,7 +20,6 @@ require ( require ( github.com/beorn7/perks v1.0.1 // indirect - github.com/cenkalti/backoff/v4 v4.3.0 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/davecgh/go-spew v1.1.1 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect @@ -31,7 +30,6 @@ require ( github.com/gogo/protobuf v1.3.2 // indirect github.com/golang/snappy v0.0.4 // indirect github.com/google/uuid v1.6.0 // indirect - github.com/grpc-ecosystem/grpc-gateway/v2 v2.22.0 // indirect github.com/hashicorp/go-version v1.7.0 // indirect github.com/klauspost/compress v1.17.9 // indirect github.com/knadh/koanf/maps v0.1.1 // indirect @@ -54,30 +52,17 @@ require ( go.opentelemetry.io/collector/config/internal v0.109.0 // indirect go.opentelemetry.io/collector/extension/auth v0.109.0 // indirect go.opentelemetry.io/collector/featuregate v1.15.0 // indirect + go.opentelemetry.io/collector/internal/globalgates v0.109.0 // indirect go.opentelemetry.io/collector/pdata v1.15.0 // indirect - go.opentelemetry.io/contrib/config v0.9.0 // indirect go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.54.0 // indirect go.opentelemetry.io/otel v1.30.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.5.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.29.0 // indirect go.opentelemetry.io/otel/exporters/prometheus v0.52.0 // indirect - go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.5.0 // indirect - go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.29.0 // indirect - go.opentelemetry.io/otel/log v0.5.0 // indirect go.opentelemetry.io/otel/metric v1.30.0 // indirect - go.opentelemetry.io/otel/sdk/log v0.5.0 // indirect go.opentelemetry.io/otel/sdk/metric v1.30.0 // indirect - go.opentelemetry.io/proto/otlp v1.3.1 // indirect go.uber.org/multierr v1.11.0 // indirect golang.org/x/net v0.29.0 // indirect golang.org/x/sys v0.25.0 // indirect golang.org/x/text v0.18.0 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20240822170219-fc7c04adadcd // indirect google.golang.org/genproto/googleapis/rpc v0.0.0-20240822170219-fc7c04adadcd // indirect google.golang.org/grpc v1.66.0 // indirect google.golang.org/protobuf v1.34.2 // indirect @@ -130,3 +115,5 @@ replace go.opentelemetry.io/collector/consumer/consumertest => ../../consumer/co replace go.opentelemetry.io/collector/client => ../../client replace go.opentelemetry.io/collector/component/componentstatus => ../../component/componentstatus + +replace go.opentelemetry.io/collector/internal/globalgates => ../../internal/globalgates diff --git a/extension/zpagesextension/go.sum b/extension/zpagesextension/go.sum index d4707b85c11..479bcbe4f1e 100644 --- a/extension/zpagesextension/go.sum +++ b/extension/zpagesextension/go.sum @@ -1,7 +1,5 @@ github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= -github.com/cenkalti/backoff/v4 v4.3.0 h1:MyRJ/UdXutAwSAT+s3wNd7MfTIcy71VQueUuFK343L8= -github.com/cenkalti/backoff/v4 v4.3.0/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= @@ -25,8 +23,6 @@ github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/grpc-ecosystem/grpc-gateway/v2 v2.22.0 h1:asbCHRVmodnJTuQ3qamDwqVOIjwqUPTYmYuemVOx+Ys= -github.com/grpc-ecosystem/grpc-gateway/v2 v2.22.0/go.mod h1:ggCgvZ2r7uOoQjOyu2Y1NhHmEPPzzuhWgcza5M1Ji1I= github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY= github.com/hashicorp/go-version v1.7.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= @@ -75,48 +71,22 @@ github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsT github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -go.opentelemetry.io/contrib/config v0.9.0 h1:AJ1c6+vJ6SxvqBBhsi2RhLFMlc6SnJOg81Jp4toFyNw= -go.opentelemetry.io/contrib/config v0.9.0/go.mod h1:u/u2L6y/c8GKrq/AP51sfXV4Eu24btVlC3A5f867xwg= go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.54.0 h1:TT4fX+nBOA/+LUkobKGW1ydGcn+G3vRw9+g5HwCphpk= go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.54.0/go.mod h1:L7UH0GbB0p47T4Rri3uHjbpCFYrVrwc1I25QhNPiGK8= go.opentelemetry.io/contrib/zpages v0.54.0 h1:tSfm/LEK5E46sd5qx/Y9o4iQ65ipLubV0Una7veXFlA= go.opentelemetry.io/contrib/zpages v0.54.0/go.mod h1:sbe4/RH3CFKkdM5zuGwfziKjvkqUOK9hSgLFckiVZUI= go.opentelemetry.io/otel v1.30.0 h1:F2t8sK4qf1fAmY9ua4ohFS/K+FUuOPemHUIXHtktrts= go.opentelemetry.io/otel v1.30.0/go.mod h1:tFw4Br9b7fOS+uEao81PJjVMjW/5fvNCbpsDIXqP0pc= -go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.5.0 h1:4d++HQ+Ihdl+53zSjtsCUFDmNMju2FC9qFkUlTxPLqo= -go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.5.0/go.mod h1:mQX5dTO3Mh5ZF7bPKDkt5c/7C41u/SiDr9XgTpzXXn8= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.29.0 h1:k6fQVDQexDE+3jG2SfCQjnHS7OamcP73YMoxEVq5B6k= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.29.0/go.mod h1:t4BrYLHU450Zo9fnydWlIuswB1bm7rM8havDpWOJeDo= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.29.0 h1:xvhQxJ/C9+RTnAj5DpTg7LSM1vbbMTiXt7e9hsfqHNw= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.29.0/go.mod h1:Fcvs2Bz1jkDM+Wf5/ozBGmi3tQ/c9zPKLnsipnfhGAo= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.29.0 h1:dIIDULZJpgdiHz5tXrTgKIMLkus6jEFa7x5SOKcyR7E= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.29.0/go.mod h1:jlRVBe7+Z1wyxFSUs48L6OBQZ5JwH2Hg/Vbl+t9rAgI= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.29.0 h1:nSiV3s7wiCam610XcLbYOmMfJxB9gO4uK3Xgv5gmTgg= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.29.0/go.mod h1:hKn/e/Nmd19/x1gvIHwtOwVWM+VhuITSWip3JUDghj0= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.29.0 h1:JAv0Jwtl01UFiyWZEMiJZBiTlv5A50zNs8lsthXqIio= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.29.0/go.mod h1:QNKLmUEAq2QUbPQUfvw4fmv0bgbK7UlOSFCnXyfvSNc= go.opentelemetry.io/otel/exporters/prometheus v0.52.0 h1:kmU3H0b9ufFSi8IQCcxack+sWUblKkFbqWYs6YiACGQ= go.opentelemetry.io/otel/exporters/prometheus v0.52.0/go.mod h1:+wsAp2+JhuGXX7YRkjlkx6hyWY3ogFPfNA4x3nyiAh0= -go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.5.0 h1:ThVXnEsdwNcxdBO+r96ci1xbF+PgNjwlk457VNuJODo= -go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.5.0/go.mod h1:rHWcSmC4q2h3gje/yOq6sAOaq8+UHxN/Ru3BbmDXOfY= -go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.29.0 h1:WDdP9acbMYjbKIyJUhTvtzj601sVJOqgWdUxSdR/Ysc= -go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.29.0/go.mod h1:BLbf7zbNIONBLPwvFnwNHGj4zge8uTCM/UPIVW1Mq2I= -go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.29.0 h1:X3ZjNp36/WlkSYx0ul2jw4PtbNEDDeLskw3VPsrpYM0= -go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.29.0/go.mod h1:2uL/xnOXh0CHOBFCWXz5u1A4GXLiW+0IQIzVbeOEQ0U= -go.opentelemetry.io/otel/log v0.5.0 h1:x1Pr6Y3gnXgl1iFBwtGy1W/mnzENoK0w0ZoaeOI3i30= -go.opentelemetry.io/otel/log v0.5.0/go.mod h1:NU/ozXeGuOR5/mjCRXYbTC00NFJ3NYuraV/7O78F0rE= go.opentelemetry.io/otel/metric v1.30.0 h1:4xNulvn9gjzo4hjg+wzIKG7iNFEaBMX00Qd4QIZs7+w= go.opentelemetry.io/otel/metric v1.30.0/go.mod h1:aXTfST94tswhWEb+5QjlSqG+cZlmyXy/u8jFpor3WqQ= go.opentelemetry.io/otel/sdk v1.30.0 h1:cHdik6irO49R5IysVhdn8oaiR9m8XluDaJAs4DfOrYE= go.opentelemetry.io/otel/sdk v1.30.0/go.mod h1:p14X4Ok8S+sygzblytT1nqG98QG2KYKv++HE0LY/mhg= -go.opentelemetry.io/otel/sdk/log v0.5.0 h1:A+9lSjlZGxkQOr7QSBJcuyyYBw79CufQ69saiJLey7o= -go.opentelemetry.io/otel/sdk/log v0.5.0/go.mod h1:zjxIW7sw1IHolZL2KlSAtrUi8JHttoeiQy43Yl3WuVQ= go.opentelemetry.io/otel/sdk/metric v1.30.0 h1:QJLT8Pe11jyHBHfSAgYH7kEmT24eX792jZO1bo4BXkM= go.opentelemetry.io/otel/sdk/metric v1.30.0/go.mod h1:waS6P3YqFNzeP01kuo/MBBYqaoBJl7efRQHOaydhy1Y= go.opentelemetry.io/otel/trace v1.30.0 h1:7UBkkYzeg3C7kQX8VAidWh2biiQbtAKjyIML8dQ9wmc= go.opentelemetry.io/otel/trace v1.30.0/go.mod h1:5EyKqTzzmyqB9bwtCCq6pDLktPK6fmGf/Dph+8VI02o= -go.opentelemetry.io/proto/otlp v1.3.1 h1:TrMUixzpM0yuc/znrFTP9MMRh8trP93mkCiDVeXrui0= -go.opentelemetry.io/proto/otlp v1.3.1/go.mod h1:0X1WI4de4ZsLrrJNLAQbFeLCm3T7yBkR0XqQ7niQU+8= go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= @@ -154,8 +124,6 @@ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8T golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -google.golang.org/genproto/googleapis/api v0.0.0-20240822170219-fc7c04adadcd h1:BBOTEWLuuEGQy9n1y9MhVJ9Qt0BDu21X8qZs71/uPZo= -google.golang.org/genproto/googleapis/api v0.0.0-20240822170219-fc7c04adadcd/go.mod h1:fO8wJzT2zbQbAjbIoos1285VfEIYKDDY+Dt+WpTkh6g= google.golang.org/genproto/googleapis/rpc v0.0.0-20240822170219-fc7c04adadcd h1:6TEm2ZxXoQmFWFlt1vNxvVOa1Q0dXFQD1m/rYjXmS0E= google.golang.org/genproto/googleapis/rpc v0.0.0-20240822170219-fc7c04adadcd/go.mod h1:UqMtugtsSgubUsoxbuAoiCXvqvErP7Gf0so0mK9tHxU= google.golang.org/grpc v1.66.0 h1:DibZuoBznOxbDQxRINckZcUvnCEvrW9pcWIE2yF9r1c= diff --git a/go.mod b/go.mod index 3bd899031f9..5ff241af35e 100644 --- a/go.mod +++ b/go.mod @@ -19,11 +19,9 @@ require ( go.opentelemetry.io/collector/consumer v0.109.0 go.opentelemetry.io/collector/consumer/consumerprofiles v0.109.0 go.opentelemetry.io/collector/consumer/consumertest v0.109.0 - go.opentelemetry.io/collector/featuregate v1.15.0 go.opentelemetry.io/collector/pdata v1.15.0 go.opentelemetry.io/collector/pdata/pprofile v0.109.0 go.opentelemetry.io/collector/pdata/testdata v0.109.0 - go.opentelemetry.io/contrib/config v0.9.0 go.uber.org/goleak v1.3.0 go.uber.org/multierr v1.11.0 go.uber.org/zap v1.27.0 @@ -32,7 +30,6 @@ require ( require ( github.com/beorn7/perks v1.0.1 // indirect - github.com/cenkalti/backoff/v4 v4.3.0 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/davecgh/go-spew v1.1.1 // indirect github.com/go-logr/logr v1.4.2 // indirect @@ -41,8 +38,6 @@ require ( github.com/go-viper/mapstructure/v2 v2.1.0 // indirect github.com/gogo/protobuf v1.3.2 // indirect github.com/google/uuid v1.6.0 // indirect - github.com/grpc-ecosystem/grpc-gateway/v2 v2.22.0 // indirect - github.com/hashicorp/go-version v1.7.0 // indirect github.com/json-iterator/go v1.1.12 // indirect github.com/klauspost/compress v1.17.9 // indirect github.com/knadh/koanf/maps v0.1.1 // indirect @@ -60,32 +55,20 @@ require ( github.com/prometheus/client_model v0.6.1 // indirect github.com/prometheus/common v0.59.1 // indirect github.com/prometheus/procfs v0.15.1 // indirect + github.com/rogpeppe/go-internal v1.12.0 // indirect github.com/tklauser/go-sysconf v0.3.12 // indirect github.com/tklauser/numcpus v0.6.1 // indirect github.com/yusufpapurcu/wmi v1.2.4 // indirect go.opentelemetry.io/collector/config/configtelemetry v0.109.0 // indirect go.opentelemetry.io/otel v1.30.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.5.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.29.0 // indirect go.opentelemetry.io/otel/exporters/prometheus v0.52.0 // indirect - go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.5.0 // indirect - go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.29.0 // indirect - go.opentelemetry.io/otel/log v0.5.0 // indirect go.opentelemetry.io/otel/metric v1.30.0 // indirect go.opentelemetry.io/otel/sdk v1.30.0 // indirect - go.opentelemetry.io/otel/sdk/log v0.5.0 // indirect go.opentelemetry.io/otel/sdk/metric v1.30.0 // indirect go.opentelemetry.io/otel/trace v1.30.0 // indirect - go.opentelemetry.io/proto/otlp v1.3.1 // indirect golang.org/x/net v0.28.0 // indirect golang.org/x/sys v0.25.0 // indirect golang.org/x/text v0.17.0 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20240822170219-fc7c04adadcd // indirect google.golang.org/genproto/googleapis/rpc v0.0.0-20240822170219-fc7c04adadcd // indirect google.golang.org/protobuf v1.34.2 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect @@ -103,8 +86,6 @@ replace go.opentelemetry.io/collector/consumer => ./consumer replace go.opentelemetry.io/collector/consumer/consumertest => ./consumer/consumertest -replace go.opentelemetry.io/collector/featuregate => ./featuregate - replace go.opentelemetry.io/collector/pdata => ./pdata replace go.opentelemetry.io/collector/pdata/testdata => ./pdata/testdata diff --git a/go.sum b/go.sum index 863f4f83ffb..556ddb58cb8 100644 --- a/go.sum +++ b/go.sum @@ -1,7 +1,5 @@ github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= -github.com/cenkalti/backoff/v4 v4.3.0 h1:MyRJ/UdXutAwSAT+s3wNd7MfTIcy71VQueUuFK343L8= -github.com/cenkalti/backoff/v4 v4.3.0/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= @@ -24,10 +22,6 @@ github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeN github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/grpc-ecosystem/grpc-gateway/v2 v2.22.0 h1:asbCHRVmodnJTuQ3qamDwqVOIjwqUPTYmYuemVOx+Ys= -github.com/grpc-ecosystem/grpc-gateway/v2 v2.22.0/go.mod h1:ggCgvZ2r7uOoQjOyu2Y1NhHmEPPzzuhWgcza5M1Ji1I= -github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY= -github.com/hashicorp/go-version v1.7.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= @@ -87,44 +81,18 @@ github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9de github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yusufpapurcu/wmi v1.2.4 h1:zFUKzehAFReQwLys1b/iSMl+JQGSCSjtVqQn9bBrPo0= github.com/yusufpapurcu/wmi v1.2.4/go.mod h1:SBZ9tNy3G9/m5Oi98Zks0QjeHVDvuK0qfxQmPyzfmi0= -go.opentelemetry.io/contrib/config v0.9.0 h1:AJ1c6+vJ6SxvqBBhsi2RhLFMlc6SnJOg81Jp4toFyNw= -go.opentelemetry.io/contrib/config v0.9.0/go.mod h1:u/u2L6y/c8GKrq/AP51sfXV4Eu24btVlC3A5f867xwg= go.opentelemetry.io/otel v1.30.0 h1:F2t8sK4qf1fAmY9ua4ohFS/K+FUuOPemHUIXHtktrts= go.opentelemetry.io/otel v1.30.0/go.mod h1:tFw4Br9b7fOS+uEao81PJjVMjW/5fvNCbpsDIXqP0pc= -go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.5.0 h1:4d++HQ+Ihdl+53zSjtsCUFDmNMju2FC9qFkUlTxPLqo= -go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.5.0/go.mod h1:mQX5dTO3Mh5ZF7bPKDkt5c/7C41u/SiDr9XgTpzXXn8= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.29.0 h1:k6fQVDQexDE+3jG2SfCQjnHS7OamcP73YMoxEVq5B6k= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.29.0/go.mod h1:t4BrYLHU450Zo9fnydWlIuswB1bm7rM8havDpWOJeDo= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.29.0 h1:xvhQxJ/C9+RTnAj5DpTg7LSM1vbbMTiXt7e9hsfqHNw= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.29.0/go.mod h1:Fcvs2Bz1jkDM+Wf5/ozBGmi3tQ/c9zPKLnsipnfhGAo= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.29.0 h1:dIIDULZJpgdiHz5tXrTgKIMLkus6jEFa7x5SOKcyR7E= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.29.0/go.mod h1:jlRVBe7+Z1wyxFSUs48L6OBQZ5JwH2Hg/Vbl+t9rAgI= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.29.0 h1:nSiV3s7wiCam610XcLbYOmMfJxB9gO4uK3Xgv5gmTgg= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.29.0/go.mod h1:hKn/e/Nmd19/x1gvIHwtOwVWM+VhuITSWip3JUDghj0= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.29.0 h1:JAv0Jwtl01UFiyWZEMiJZBiTlv5A50zNs8lsthXqIio= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.29.0/go.mod h1:QNKLmUEAq2QUbPQUfvw4fmv0bgbK7UlOSFCnXyfvSNc= go.opentelemetry.io/otel/exporters/prometheus v0.52.0 h1:kmU3H0b9ufFSi8IQCcxack+sWUblKkFbqWYs6YiACGQ= go.opentelemetry.io/otel/exporters/prometheus v0.52.0/go.mod h1:+wsAp2+JhuGXX7YRkjlkx6hyWY3ogFPfNA4x3nyiAh0= -go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.5.0 h1:ThVXnEsdwNcxdBO+r96ci1xbF+PgNjwlk457VNuJODo= -go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.5.0/go.mod h1:rHWcSmC4q2h3gje/yOq6sAOaq8+UHxN/Ru3BbmDXOfY= -go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.29.0 h1:WDdP9acbMYjbKIyJUhTvtzj601sVJOqgWdUxSdR/Ysc= -go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.29.0/go.mod h1:BLbf7zbNIONBLPwvFnwNHGj4zge8uTCM/UPIVW1Mq2I= -go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.29.0 h1:X3ZjNp36/WlkSYx0ul2jw4PtbNEDDeLskw3VPsrpYM0= -go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.29.0/go.mod h1:2uL/xnOXh0CHOBFCWXz5u1A4GXLiW+0IQIzVbeOEQ0U= -go.opentelemetry.io/otel/log v0.5.0 h1:x1Pr6Y3gnXgl1iFBwtGy1W/mnzENoK0w0ZoaeOI3i30= -go.opentelemetry.io/otel/log v0.5.0/go.mod h1:NU/ozXeGuOR5/mjCRXYbTC00NFJ3NYuraV/7O78F0rE= go.opentelemetry.io/otel/metric v1.30.0 h1:4xNulvn9gjzo4hjg+wzIKG7iNFEaBMX00Qd4QIZs7+w= go.opentelemetry.io/otel/metric v1.30.0/go.mod h1:aXTfST94tswhWEb+5QjlSqG+cZlmyXy/u8jFpor3WqQ= go.opentelemetry.io/otel/sdk v1.30.0 h1:cHdik6irO49R5IysVhdn8oaiR9m8XluDaJAs4DfOrYE= go.opentelemetry.io/otel/sdk v1.30.0/go.mod h1:p14X4Ok8S+sygzblytT1nqG98QG2KYKv++HE0LY/mhg= -go.opentelemetry.io/otel/sdk/log v0.5.0 h1:A+9lSjlZGxkQOr7QSBJcuyyYBw79CufQ69saiJLey7o= -go.opentelemetry.io/otel/sdk/log v0.5.0/go.mod h1:zjxIW7sw1IHolZL2KlSAtrUi8JHttoeiQy43Yl3WuVQ= go.opentelemetry.io/otel/sdk/metric v1.30.0 h1:QJLT8Pe11jyHBHfSAgYH7kEmT24eX792jZO1bo4BXkM= go.opentelemetry.io/otel/sdk/metric v1.30.0/go.mod h1:waS6P3YqFNzeP01kuo/MBBYqaoBJl7efRQHOaydhy1Y= go.opentelemetry.io/otel/trace v1.30.0 h1:7UBkkYzeg3C7kQX8VAidWh2biiQbtAKjyIML8dQ9wmc= go.opentelemetry.io/otel/trace v1.30.0/go.mod h1:5EyKqTzzmyqB9bwtCCq6pDLktPK6fmGf/Dph+8VI02o= -go.opentelemetry.io/proto/otlp v1.3.1 h1:TrMUixzpM0yuc/znrFTP9MMRh8trP93mkCiDVeXrui0= -go.opentelemetry.io/proto/otlp v1.3.1/go.mod h1:0X1WI4de4ZsLrrJNLAQbFeLCm3T7yBkR0XqQ7niQU+8= go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= @@ -166,8 +134,6 @@ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8T golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -google.golang.org/genproto/googleapis/api v0.0.0-20240822170219-fc7c04adadcd h1:BBOTEWLuuEGQy9n1y9MhVJ9Qt0BDu21X8qZs71/uPZo= -google.golang.org/genproto/googleapis/api v0.0.0-20240822170219-fc7c04adadcd/go.mod h1:fO8wJzT2zbQbAjbIoos1285VfEIYKDDY+Dt+WpTkh6g= google.golang.org/genproto/googleapis/rpc v0.0.0-20240822170219-fc7c04adadcd h1:6TEm2ZxXoQmFWFlt1vNxvVOa1Q0dXFQD1m/rYjXmS0E= google.golang.org/genproto/googleapis/rpc v0.0.0-20240822170219-fc7c04adadcd/go.mod h1:UqMtugtsSgubUsoxbuAoiCXvqvErP7Gf0so0mK9tHxU= google.golang.org/grpc v1.66.0 h1:DibZuoBznOxbDQxRINckZcUvnCEvrW9pcWIE2yF9r1c= diff --git a/internal/cgroups/mountpoint_test.go b/internal/cgroups/mountpoint_test.go index 8ce2810f89f..07f0d0ce3e6 100644 --- a/internal/cgroups/mountpoint_test.go +++ b/internal/cgroups/mountpoint_test.go @@ -106,7 +106,7 @@ func TestNewMountPointFromLineErr(t *testing.T) { errExpected := mountPointFormatInvalidError{line} assert.Nil(t, mountPoint, "[%d] %q", i, line) - assert.Equal(t, err, errExpected, "[%d] %q", i, line) + assert.Equal(t, errExpected, err, "[%d] %q", i, line) } } diff --git a/internal/e2e/consume_contract_test.go b/internal/e2e/consume_contract_test.go index efda43101f3..98beb5cd361 100644 --- a/internal/e2e/consume_contract_test.go +++ b/internal/e2e/consume_contract_test.go @@ -22,7 +22,7 @@ func testExporterConfig(endpoint string) component.Config { retryConfig := configretry.NewDefaultBackOffConfig() retryConfig.InitialInterval = time.Millisecond // interval is short for the test purposes return &otlpexporter.Config{ - QueueConfig: exporterhelper.QueueSettings{Enabled: false}, + QueueConfig: exporterhelper.QueueConfig{Enabled: false}, RetryConfig: retryConfig, ClientConfig: configgrpc.ClientConfig{ Endpoint: endpoint, diff --git a/internal/fanoutconsumer/logs_test.go b/internal/fanoutconsumer/logs_test.go index c1b91a7a4e8..b7b4d510b4e 100644 --- a/internal/fanoutconsumer/logs_test.go +++ b/internal/fanoutconsumer/logs_test.go @@ -44,18 +44,18 @@ func TestLogsMultiplexingNonMutating(t *testing.T) { } } - assert.True(t, ld == p1.AllLogs()[0]) - assert.True(t, ld == p1.AllLogs()[1]) + assert.Equal(t, ld, p1.AllLogs()[0]) + assert.Equal(t, ld, p1.AllLogs()[1]) assert.EqualValues(t, ld, p1.AllLogs()[0]) assert.EqualValues(t, ld, p1.AllLogs()[1]) - assert.True(t, ld == p2.AllLogs()[0]) - assert.True(t, ld == p2.AllLogs()[1]) + assert.Equal(t, ld, p2.AllLogs()[0]) + assert.Equal(t, ld, p2.AllLogs()[1]) assert.EqualValues(t, ld, p2.AllLogs()[0]) assert.EqualValues(t, ld, p2.AllLogs()[1]) - assert.True(t, ld == p3.AllLogs()[0]) - assert.True(t, ld == p3.AllLogs()[1]) + assert.Equal(t, ld, p3.AllLogs()[0]) + assert.Equal(t, ld, p3.AllLogs()[1]) assert.EqualValues(t, ld, p3.AllLogs()[0]) assert.EqualValues(t, ld, p3.AllLogs()[1]) @@ -80,19 +80,19 @@ func TestLogsMultiplexingMutating(t *testing.T) { } } - assert.True(t, ld != p1.AllLogs()[0]) - assert.True(t, ld != p1.AllLogs()[1]) + assert.NotSame(t, ld, p1.AllLogs()[0]) + assert.NotSame(t, ld, p1.AllLogs()[1]) assert.EqualValues(t, ld, p1.AllLogs()[0]) assert.EqualValues(t, ld, p1.AllLogs()[1]) - assert.True(t, ld != p2.AllLogs()[0]) - assert.True(t, ld != p2.AllLogs()[1]) + assert.NotSame(t, ld, p2.AllLogs()[0]) + assert.NotSame(t, ld, p2.AllLogs()[1]) assert.EqualValues(t, ld, p2.AllLogs()[0]) assert.EqualValues(t, ld, p2.AllLogs()[1]) // For this consumer, will receive the initial data. - assert.True(t, ld == p3.AllLogs()[0]) - assert.True(t, ld == p3.AllLogs()[1]) + assert.Equal(t, ld, p3.AllLogs()[0]) + assert.Equal(t, ld, p3.AllLogs()[1]) assert.EqualValues(t, ld, p3.AllLogs()[0]) assert.EqualValues(t, ld, p3.AllLogs()[1]) @@ -121,18 +121,18 @@ func TestReadOnlyLogsMultiplexingMutating(t *testing.T) { // All consumers should receive the cloned data. - assert.True(t, ld != p1.AllLogs()[0]) - assert.True(t, ld != p1.AllLogs()[1]) + assert.NotEqual(t, ld, p1.AllLogs()[0]) + assert.NotEqual(t, ld, p1.AllLogs()[1]) assert.EqualValues(t, ldOrig, p1.AllLogs()[0]) assert.EqualValues(t, ldOrig, p1.AllLogs()[1]) - assert.True(t, ld != p2.AllLogs()[0]) - assert.True(t, ld != p2.AllLogs()[1]) + assert.NotEqual(t, ld, p2.AllLogs()[0]) + assert.NotEqual(t, ld, p2.AllLogs()[1]) assert.EqualValues(t, ldOrig, p2.AllLogs()[0]) assert.EqualValues(t, ldOrig, p2.AllLogs()[1]) - assert.True(t, ld != p3.AllLogs()[0]) - assert.True(t, ld != p3.AllLogs()[1]) + assert.NotEqual(t, ld, p3.AllLogs()[0]) + assert.NotEqual(t, ld, p3.AllLogs()[1]) assert.EqualValues(t, ldOrig, p3.AllLogs()[0]) assert.EqualValues(t, ldOrig, p3.AllLogs()[1]) } @@ -154,20 +154,20 @@ func TestLogsMultiplexingMixLastMutating(t *testing.T) { } } - assert.True(t, ld != p1.AllLogs()[0]) - assert.True(t, ld != p1.AllLogs()[1]) + assert.NotSame(t, ld, p1.AllLogs()[0]) + assert.NotSame(t, ld, p1.AllLogs()[1]) assert.EqualValues(t, ld, p1.AllLogs()[0]) assert.EqualValues(t, ld, p1.AllLogs()[1]) // For this consumer, will receive the initial data. - assert.True(t, ld == p2.AllLogs()[0]) - assert.True(t, ld == p2.AllLogs()[1]) + assert.Equal(t, ld, p2.AllLogs()[0]) + assert.Equal(t, ld, p2.AllLogs()[1]) assert.EqualValues(t, ld, p2.AllLogs()[0]) assert.EqualValues(t, ld, p2.AllLogs()[1]) // For this consumer, will clone the initial data. - assert.True(t, ld != p3.AllLogs()[0]) - assert.True(t, ld != p3.AllLogs()[1]) + assert.NotSame(t, ld, p3.AllLogs()[0]) + assert.NotSame(t, ld, p3.AllLogs()[1]) assert.EqualValues(t, ld, p3.AllLogs()[0]) assert.EqualValues(t, ld, p3.AllLogs()[1]) @@ -192,19 +192,19 @@ func TestLogsMultiplexingMixLastNonMutating(t *testing.T) { } } - assert.True(t, ld != p1.AllLogs()[0]) - assert.True(t, ld != p1.AllLogs()[1]) + assert.NotSame(t, ld, p1.AllLogs()[0]) + assert.NotSame(t, ld, p1.AllLogs()[1]) assert.EqualValues(t, ld, p1.AllLogs()[0]) assert.EqualValues(t, ld, p1.AllLogs()[1]) - assert.True(t, ld != p2.AllLogs()[0]) - assert.True(t, ld != p2.AllLogs()[1]) + assert.NotSame(t, ld, p2.AllLogs()[0]) + assert.NotSame(t, ld, p2.AllLogs()[1]) assert.EqualValues(t, ld, p2.AllLogs()[0]) assert.EqualValues(t, ld, p2.AllLogs()[1]) // For this consumer, will receive the initial data. - assert.True(t, ld == p3.AllLogs()[0]) - assert.True(t, ld == p3.AllLogs()[1]) + assert.Equal(t, ld, p3.AllLogs()[0]) + assert.Equal(t, ld, p3.AllLogs()[1]) assert.EqualValues(t, ld, p3.AllLogs()[0]) assert.EqualValues(t, ld, p3.AllLogs()[1]) @@ -224,8 +224,8 @@ func TestLogsWhenErrors(t *testing.T) { assert.Error(t, lfc.ConsumeLogs(context.Background(), ld)) } - assert.True(t, ld == p3.AllLogs()[0]) - assert.True(t, ld == p3.AllLogs()[1]) + assert.Equal(t, ld, p3.AllLogs()[0]) + assert.Equal(t, ld, p3.AllLogs()[1]) assert.EqualValues(t, ld, p3.AllLogs()[0]) assert.EqualValues(t, ld, p3.AllLogs()[1]) } diff --git a/internal/fanoutconsumer/metrics_test.go b/internal/fanoutconsumer/metrics_test.go index 51e00791a76..2dad5e7ff26 100644 --- a/internal/fanoutconsumer/metrics_test.go +++ b/internal/fanoutconsumer/metrics_test.go @@ -44,18 +44,18 @@ func TestMetricsMultiplexingNonMutating(t *testing.T) { } } - assert.True(t, md == p1.AllMetrics()[0]) - assert.True(t, md == p1.AllMetrics()[1]) + assert.Equal(t, md, p1.AllMetrics()[0]) + assert.Equal(t, md, p1.AllMetrics()[1]) assert.EqualValues(t, md, p1.AllMetrics()[0]) assert.EqualValues(t, md, p1.AllMetrics()[1]) - assert.True(t, md == p2.AllMetrics()[0]) - assert.True(t, md == p2.AllMetrics()[1]) + assert.Equal(t, md, p2.AllMetrics()[0]) + assert.Equal(t, md, p2.AllMetrics()[1]) assert.EqualValues(t, md, p2.AllMetrics()[0]) assert.EqualValues(t, md, p2.AllMetrics()[1]) - assert.True(t, md == p3.AllMetrics()[0]) - assert.True(t, md == p3.AllMetrics()[1]) + assert.Equal(t, md, p3.AllMetrics()[0]) + assert.Equal(t, md, p3.AllMetrics()[1]) assert.EqualValues(t, md, p3.AllMetrics()[0]) assert.EqualValues(t, md, p3.AllMetrics()[1]) @@ -80,19 +80,19 @@ func TestMetricsMultiplexingMutating(t *testing.T) { } } - assert.True(t, md != p1.AllMetrics()[0]) - assert.True(t, md != p1.AllMetrics()[1]) + assert.NotSame(t, md, p1.AllMetrics()[0]) + assert.NotSame(t, md, p1.AllMetrics()[1]) assert.EqualValues(t, md, p1.AllMetrics()[0]) assert.EqualValues(t, md, p1.AllMetrics()[1]) - assert.True(t, md != p2.AllMetrics()[0]) - assert.True(t, md != p2.AllMetrics()[1]) + assert.NotSame(t, md, p2.AllMetrics()[0]) + assert.NotSame(t, md, p2.AllMetrics()[1]) assert.EqualValues(t, md, p2.AllMetrics()[0]) assert.EqualValues(t, md, p2.AllMetrics()[1]) // For this consumer, will receive the initial data. - assert.True(t, md == p3.AllMetrics()[0]) - assert.True(t, md == p3.AllMetrics()[1]) + assert.Equal(t, md, p3.AllMetrics()[0]) + assert.Equal(t, md, p3.AllMetrics()[1]) assert.EqualValues(t, md, p3.AllMetrics()[0]) assert.EqualValues(t, md, p3.AllMetrics()[1]) @@ -121,18 +121,18 @@ func TestReadOnlyMetricsMultiplexingMixFirstMutating(t *testing.T) { // All consumers should receive the cloned data. - assert.True(t, md != p1.AllMetrics()[0]) - assert.True(t, md != p1.AllMetrics()[1]) + assert.NotEqual(t, md, p1.AllMetrics()[0]) + assert.NotEqual(t, md, p1.AllMetrics()[1]) assert.EqualValues(t, mdOrig, p1.AllMetrics()[0]) assert.EqualValues(t, mdOrig, p1.AllMetrics()[1]) - assert.True(t, md != p2.AllMetrics()[0]) - assert.True(t, md != p2.AllMetrics()[1]) + assert.NotEqual(t, md, p2.AllMetrics()[0]) + assert.NotEqual(t, md, p2.AllMetrics()[1]) assert.EqualValues(t, mdOrig, p2.AllMetrics()[0]) assert.EqualValues(t, mdOrig, p2.AllMetrics()[1]) - assert.True(t, md != p3.AllMetrics()[0]) - assert.True(t, md != p3.AllMetrics()[1]) + assert.NotEqual(t, md, p3.AllMetrics()[0]) + assert.NotEqual(t, md, p3.AllMetrics()[1]) assert.EqualValues(t, mdOrig, p3.AllMetrics()[0]) assert.EqualValues(t, mdOrig, p3.AllMetrics()[1]) } @@ -154,20 +154,20 @@ func TestMetricsMultiplexingMixLastMutating(t *testing.T) { } } - assert.True(t, md != p1.AllMetrics()[0]) - assert.True(t, md != p1.AllMetrics()[1]) + assert.NotSame(t, md, p1.AllMetrics()[0]) + assert.NotSame(t, md, p1.AllMetrics()[1]) assert.EqualValues(t, md, p1.AllMetrics()[0]) assert.EqualValues(t, md, p1.AllMetrics()[1]) // For this consumer, will receive the initial data. - assert.True(t, md == p2.AllMetrics()[0]) - assert.True(t, md == p2.AllMetrics()[1]) + assert.Equal(t, md, p2.AllMetrics()[0]) + assert.Equal(t, md, p2.AllMetrics()[1]) assert.EqualValues(t, md, p2.AllMetrics()[0]) assert.EqualValues(t, md, p2.AllMetrics()[1]) // For this consumer, will clone the initial data. - assert.True(t, md != p3.AllMetrics()[0]) - assert.True(t, md != p3.AllMetrics()[1]) + assert.NotSame(t, md, p3.AllMetrics()[0]) + assert.NotSame(t, md, p3.AllMetrics()[1]) assert.EqualValues(t, md, p3.AllMetrics()[0]) assert.EqualValues(t, md, p3.AllMetrics()[1]) @@ -192,19 +192,19 @@ func TestMetricsMultiplexingMixLastNonMutating(t *testing.T) { } } - assert.True(t, md != p1.AllMetrics()[0]) - assert.True(t, md != p1.AllMetrics()[1]) + assert.NotSame(t, md, p1.AllMetrics()[0]) + assert.NotSame(t, md, p1.AllMetrics()[1]) assert.EqualValues(t, md, p1.AllMetrics()[0]) assert.EqualValues(t, md, p1.AllMetrics()[1]) - assert.True(t, md != p2.AllMetrics()[0]) - assert.True(t, md != p2.AllMetrics()[1]) + assert.NotSame(t, md, p2.AllMetrics()[0]) + assert.NotSame(t, md, p2.AllMetrics()[1]) assert.EqualValues(t, md, p2.AllMetrics()[0]) assert.EqualValues(t, md, p2.AllMetrics()[1]) // For this consumer, will receive the initial data. - assert.True(t, md == p3.AllMetrics()[0]) - assert.True(t, md == p3.AllMetrics()[1]) + assert.Equal(t, md, p3.AllMetrics()[0]) + assert.Equal(t, md, p3.AllMetrics()[1]) assert.EqualValues(t, md, p3.AllMetrics()[0]) assert.EqualValues(t, md, p3.AllMetrics()[1]) @@ -224,8 +224,8 @@ func TestMetricsWhenErrors(t *testing.T) { assert.Error(t, mfc.ConsumeMetrics(context.Background(), md)) } - assert.True(t, md == p3.AllMetrics()[0]) - assert.True(t, md == p3.AllMetrics()[1]) + assert.Equal(t, md, p3.AllMetrics()[0]) + assert.Equal(t, md, p3.AllMetrics()[1]) assert.EqualValues(t, md, p3.AllMetrics()[0]) assert.EqualValues(t, md, p3.AllMetrics()[1]) } diff --git a/internal/fanoutconsumer/profiles_test.go b/internal/fanoutconsumer/profiles_test.go index 0f108239f5d..82915124194 100644 --- a/internal/fanoutconsumer/profiles_test.go +++ b/internal/fanoutconsumer/profiles_test.go @@ -45,18 +45,18 @@ func TestProfilesMultiplexingNonMutating(t *testing.T) { } } - assert.True(t, td == p1.AllProfiles()[0]) - assert.True(t, td == p1.AllProfiles()[1]) + assert.Equal(t, td, p1.AllProfiles()[0]) + assert.Equal(t, td, p1.AllProfiles()[1]) assert.EqualValues(t, td, p1.AllProfiles()[0]) assert.EqualValues(t, td, p1.AllProfiles()[1]) - assert.True(t, td == p2.AllProfiles()[0]) - assert.True(t, td == p2.AllProfiles()[1]) + assert.Equal(t, td, p2.AllProfiles()[0]) + assert.Equal(t, td, p2.AllProfiles()[1]) assert.EqualValues(t, td, p2.AllProfiles()[0]) assert.EqualValues(t, td, p2.AllProfiles()[1]) - assert.True(t, td == p3.AllProfiles()[0]) - assert.True(t, td == p3.AllProfiles()[1]) + assert.Equal(t, td, p3.AllProfiles()[0]) + assert.Equal(t, td, p3.AllProfiles()[1]) assert.EqualValues(t, td, p3.AllProfiles()[0]) assert.EqualValues(t, td, p3.AllProfiles()[1]) @@ -81,19 +81,19 @@ func TestProfilesMultiplexingMutating(t *testing.T) { } } - assert.True(t, td != p1.AllProfiles()[0]) - assert.True(t, td != p1.AllProfiles()[1]) + assert.NotSame(t, td, p1.AllProfiles()[0]) + assert.NotSame(t, td, p1.AllProfiles()[1]) assert.EqualValues(t, td, p1.AllProfiles()[0]) assert.EqualValues(t, td, p1.AllProfiles()[1]) - assert.True(t, td != p2.AllProfiles()[0]) - assert.True(t, td != p2.AllProfiles()[1]) + assert.NotSame(t, td, p2.AllProfiles()[0]) + assert.NotSame(t, td, p2.AllProfiles()[1]) assert.EqualValues(t, td, p2.AllProfiles()[0]) assert.EqualValues(t, td, p2.AllProfiles()[1]) // For this consumer, will receive the initial data. - assert.True(t, td == p3.AllProfiles()[0]) - assert.True(t, td == p3.AllProfiles()[1]) + assert.Equal(t, td, p3.AllProfiles()[0]) + assert.Equal(t, td, p3.AllProfiles()[1]) assert.EqualValues(t, td, p3.AllProfiles()[0]) assert.EqualValues(t, td, p3.AllProfiles()[1]) @@ -123,18 +123,18 @@ func TestReadOnlyProfilesMultiplexingMutating(t *testing.T) { // All consumers should receive the cloned data. - assert.True(t, td != p1.AllProfiles()[0]) - assert.True(t, td != p1.AllProfiles()[1]) + assert.NotEqual(t, td, p1.AllProfiles()[0]) + assert.NotEqual(t, td, p1.AllProfiles()[1]) assert.EqualValues(t, tdOrig, p1.AllProfiles()[0]) assert.EqualValues(t, tdOrig, p1.AllProfiles()[1]) - assert.True(t, td != p2.AllProfiles()[0]) - assert.True(t, td != p2.AllProfiles()[1]) + assert.NotEqual(t, td, p2.AllProfiles()[0]) + assert.NotEqual(t, td, p2.AllProfiles()[1]) assert.EqualValues(t, tdOrig, p2.AllProfiles()[0]) assert.EqualValues(t, tdOrig, p2.AllProfiles()[1]) - assert.True(t, td != p3.AllProfiles()[0]) - assert.True(t, td != p3.AllProfiles()[1]) + assert.NotEqual(t, td, p3.AllProfiles()[0]) + assert.NotEqual(t, td, p3.AllProfiles()[1]) assert.EqualValues(t, tdOrig, p3.AllProfiles()[0]) assert.EqualValues(t, tdOrig, p3.AllProfiles()[1]) } @@ -156,20 +156,20 @@ func TestProfilesMultiplexingMixLastMutating(t *testing.T) { } } - assert.True(t, td != p1.AllProfiles()[0]) - assert.True(t, td != p1.AllProfiles()[1]) + assert.NotSame(t, td, p1.AllProfiles()[0]) + assert.NotSame(t, td, p1.AllProfiles()[1]) assert.EqualValues(t, td, p1.AllProfiles()[0]) assert.EqualValues(t, td, p1.AllProfiles()[1]) // For this consumer, will receive the initial data. - assert.True(t, td == p2.AllProfiles()[0]) - assert.True(t, td == p2.AllProfiles()[1]) + assert.Equal(t, td, p2.AllProfiles()[0]) + assert.Equal(t, td, p2.AllProfiles()[1]) assert.EqualValues(t, td, p2.AllProfiles()[0]) assert.EqualValues(t, td, p2.AllProfiles()[1]) // For this consumer, will clone the initial data. - assert.True(t, td != p3.AllProfiles()[0]) - assert.True(t, td != p3.AllProfiles()[1]) + assert.NotSame(t, td, p3.AllProfiles()[0]) + assert.NotSame(t, td, p3.AllProfiles()[1]) assert.EqualValues(t, td, p3.AllProfiles()[0]) assert.EqualValues(t, td, p3.AllProfiles()[1]) @@ -194,19 +194,19 @@ func TestProfilesMultiplexingMixLastNonMutating(t *testing.T) { } } - assert.True(t, td != p1.AllProfiles()[0]) - assert.True(t, td != p1.AllProfiles()[1]) + assert.NotSame(t, td, p1.AllProfiles()[0]) + assert.NotSame(t, td, p1.AllProfiles()[1]) assert.EqualValues(t, td, p1.AllProfiles()[0]) assert.EqualValues(t, td, p1.AllProfiles()[1]) - assert.True(t, td != p2.AllProfiles()[0]) - assert.True(t, td != p2.AllProfiles()[1]) + assert.NotSame(t, td, p2.AllProfiles()[0]) + assert.NotSame(t, td, p2.AllProfiles()[1]) assert.EqualValues(t, td, p2.AllProfiles()[0]) assert.EqualValues(t, td, p2.AllProfiles()[1]) // For this consumer, will receive the initial data. - assert.True(t, td == p3.AllProfiles()[0]) - assert.True(t, td == p3.AllProfiles()[1]) + assert.Equal(t, td, p3.AllProfiles()[0]) + assert.Equal(t, td, p3.AllProfiles()[1]) assert.EqualValues(t, td, p3.AllProfiles()[0]) assert.EqualValues(t, td, p3.AllProfiles()[1]) @@ -226,8 +226,8 @@ func TestProfilesWhenErrors(t *testing.T) { assert.Error(t, tfc.ConsumeProfiles(context.Background(), td)) } - assert.True(t, td == p3.AllProfiles()[0]) - assert.True(t, td == p3.AllProfiles()[1]) + assert.Equal(t, td, p3.AllProfiles()[0]) + assert.Equal(t, td, p3.AllProfiles()[1]) assert.EqualValues(t, td, p3.AllProfiles()[0]) assert.EqualValues(t, td, p3.AllProfiles()[1]) } diff --git a/internal/fanoutconsumer/traces_test.go b/internal/fanoutconsumer/traces_test.go index 829e4cd9069..b17e674c46e 100644 --- a/internal/fanoutconsumer/traces_test.go +++ b/internal/fanoutconsumer/traces_test.go @@ -44,18 +44,18 @@ func TestTracesMultiplexingNonMutating(t *testing.T) { } } - assert.True(t, td == p1.AllTraces()[0]) - assert.True(t, td == p1.AllTraces()[1]) + assert.Equal(t, td, p1.AllTraces()[0]) + assert.Equal(t, td, p1.AllTraces()[1]) assert.EqualValues(t, td, p1.AllTraces()[0]) assert.EqualValues(t, td, p1.AllTraces()[1]) - assert.True(t, td == p2.AllTraces()[0]) - assert.True(t, td == p2.AllTraces()[1]) + assert.Equal(t, td, p2.AllTraces()[0]) + assert.Equal(t, td, p2.AllTraces()[1]) assert.EqualValues(t, td, p2.AllTraces()[0]) assert.EqualValues(t, td, p2.AllTraces()[1]) - assert.True(t, td == p3.AllTraces()[0]) - assert.True(t, td == p3.AllTraces()[1]) + assert.Equal(t, td, p3.AllTraces()[0]) + assert.Equal(t, td, p3.AllTraces()[1]) assert.EqualValues(t, td, p3.AllTraces()[0]) assert.EqualValues(t, td, p3.AllTraces()[1]) @@ -80,19 +80,19 @@ func TestTracesMultiplexingMutating(t *testing.T) { } } - assert.True(t, td != p1.AllTraces()[0]) - assert.True(t, td != p1.AllTraces()[1]) + assert.NotSame(t, td, p1.AllTraces()[0]) + assert.NotSame(t, td, p1.AllTraces()[1]) assert.EqualValues(t, td, p1.AllTraces()[0]) assert.EqualValues(t, td, p1.AllTraces()[1]) - assert.True(t, td != p2.AllTraces()[0]) - assert.True(t, td != p2.AllTraces()[1]) + assert.NotSame(t, td, p2.AllTraces()[0]) + assert.NotSame(t, td, p2.AllTraces()[1]) assert.EqualValues(t, td, p2.AllTraces()[0]) assert.EqualValues(t, td, p2.AllTraces()[1]) // For this consumer, will receive the initial data. - assert.True(t, td == p3.AllTraces()[0]) - assert.True(t, td == p3.AllTraces()[1]) + assert.Equal(t, td, p3.AllTraces()[0]) + assert.Equal(t, td, p3.AllTraces()[1]) assert.EqualValues(t, td, p3.AllTraces()[0]) assert.EqualValues(t, td, p3.AllTraces()[1]) @@ -122,18 +122,18 @@ func TestReadOnlyTracesMultiplexingMutating(t *testing.T) { // All consumers should receive the cloned data. - assert.True(t, td != p1.AllTraces()[0]) - assert.True(t, td != p1.AllTraces()[1]) + assert.NotEqual(t, td, p1.AllTraces()[0]) + assert.NotEqual(t, td, p1.AllTraces()[1]) assert.EqualValues(t, tdOrig, p1.AllTraces()[0]) assert.EqualValues(t, tdOrig, p1.AllTraces()[1]) - assert.True(t, td != p2.AllTraces()[0]) - assert.True(t, td != p2.AllTraces()[1]) + assert.NotEqual(t, td, p2.AllTraces()[0]) + assert.NotEqual(t, td, p2.AllTraces()[1]) assert.EqualValues(t, tdOrig, p2.AllTraces()[0]) assert.EqualValues(t, tdOrig, p2.AllTraces()[1]) - assert.True(t, td != p3.AllTraces()[0]) - assert.True(t, td != p3.AllTraces()[1]) + assert.NotEqual(t, td, p3.AllTraces()[0]) + assert.NotEqual(t, td, p3.AllTraces()[1]) assert.EqualValues(t, tdOrig, p3.AllTraces()[0]) assert.EqualValues(t, tdOrig, p3.AllTraces()[1]) } @@ -155,20 +155,20 @@ func TestTracesMultiplexingMixLastMutating(t *testing.T) { } } - assert.True(t, td != p1.AllTraces()[0]) - assert.True(t, td != p1.AllTraces()[1]) + assert.NotSame(t, td, p1.AllTraces()[0]) + assert.NotSame(t, td, p1.AllTraces()[1]) assert.EqualValues(t, td, p1.AllTraces()[0]) assert.EqualValues(t, td, p1.AllTraces()[1]) // For this consumer, will receive the initial data. - assert.True(t, td == p2.AllTraces()[0]) - assert.True(t, td == p2.AllTraces()[1]) + assert.Equal(t, td, p2.AllTraces()[0]) + assert.Equal(t, td, p2.AllTraces()[1]) assert.EqualValues(t, td, p2.AllTraces()[0]) assert.EqualValues(t, td, p2.AllTraces()[1]) // For this consumer, will clone the initial data. - assert.True(t, td != p3.AllTraces()[0]) - assert.True(t, td != p3.AllTraces()[1]) + assert.NotSame(t, td, p3.AllTraces()[0]) + assert.NotSame(t, td, p3.AllTraces()[1]) assert.EqualValues(t, td, p3.AllTraces()[0]) assert.EqualValues(t, td, p3.AllTraces()[1]) @@ -193,19 +193,19 @@ func TestTracesMultiplexingMixLastNonMutating(t *testing.T) { } } - assert.True(t, td != p1.AllTraces()[0]) - assert.True(t, td != p1.AllTraces()[1]) + assert.NotSame(t, td, p1.AllTraces()[0]) + assert.NotSame(t, td, p1.AllTraces()[1]) assert.EqualValues(t, td, p1.AllTraces()[0]) assert.EqualValues(t, td, p1.AllTraces()[1]) - assert.True(t, td != p2.AllTraces()[0]) - assert.True(t, td != p2.AllTraces()[1]) + assert.NotSame(t, td, p2.AllTraces()[0]) + assert.NotSame(t, td, p2.AllTraces()[1]) assert.EqualValues(t, td, p2.AllTraces()[0]) assert.EqualValues(t, td, p2.AllTraces()[1]) // For this consumer, will receive the initial data. - assert.True(t, td == p3.AllTraces()[0]) - assert.True(t, td == p3.AllTraces()[1]) + assert.Equal(t, td, p3.AllTraces()[0]) + assert.Equal(t, td, p3.AllTraces()[1]) assert.EqualValues(t, td, p3.AllTraces()[0]) assert.EqualValues(t, td, p3.AllTraces()[1]) @@ -225,8 +225,8 @@ func TestTracesWhenErrors(t *testing.T) { assert.Error(t, tfc.ConsumeTraces(context.Background(), td)) } - assert.True(t, td == p3.AllTraces()[0]) - assert.True(t, td == p3.AllTraces()[1]) + assert.Equal(t, td, p3.AllTraces()[0]) + assert.Equal(t, td, p3.AllTraces()[1]) assert.EqualValues(t, td, p3.AllTraces()[0]) assert.EqualValues(t, td, p3.AllTraces()[1]) } diff --git a/internal/globalgates/globalgates.go b/internal/globalgates/globalgates.go index 0f36ecad4ac..3a44f1fdb61 100644 --- a/internal/globalgates/globalgates.go +++ b/internal/globalgates/globalgates.go @@ -3,10 +3,46 @@ package globalgates // import "go.opentelemetry.io/collector/internal/globalgates" -import "go.opentelemetry.io/collector/featuregate" +import ( + "errors" + + "go.opentelemetry.io/collector/featuregate" +) var NoopTracerProvider = featuregate.GlobalRegistry().MustRegister("service.noopTracerProvider", featuregate.StageAlpha, featuregate.WithRegisterFromVersion("v0.107.0"), featuregate.WithRegisterToVersion("v0.109.0"), featuregate.WithRegisterDescription("Sets a Noop OpenTelemetry TracerProvider to reduce memory allocations. This featuregate is incompatible with the zPages extension.")) + +const UseLocalHostAsDefaultHostID = "component.UseLocalHostAsDefaultHost" + +// UseLocalHostAsDefaultHostfeatureGate is the feature gate that controls whether +// server-like receivers and extensions such as the OTLP receiver use localhost as the default host for their endpoints. +var UseLocalHostAsDefaultHostfeatureGate = mustRegisterOrLoad( + featuregate.GlobalRegistry(), + UseLocalHostAsDefaultHostID, + featuregate.StageBeta, + featuregate.WithRegisterDescription("controls whether server-like receivers and extensions such as the OTLP receiver use localhost as the default host for their endpoints"), +) + +// mustRegisterOrLoad tries to register the feature gate and loads it if it already exists. +// It panics on any other error. +func mustRegisterOrLoad(reg *featuregate.Registry, id string, stage featuregate.Stage, opts ...featuregate.RegisterOption) *featuregate.Gate { + gate, err := reg.Register(id, stage, opts...) + + if errors.Is(err, featuregate.ErrAlreadyRegistered) { + // Gate is already registered; find it. + // Only a handful of feature gates are registered, so it's fine to iterate over all of them. + reg.VisitAll(func(g *featuregate.Gate) { + if g.ID() == id { + gate = g + return + } + }) + } else if err != nil { + panic(err) + } + + return gate +} diff --git a/internal/iruntime/mem_info_test.go b/internal/iruntime/mem_info_test.go index 863fbe14028..57d0d857e66 100644 --- a/internal/iruntime/mem_info_test.go +++ b/internal/iruntime/mem_info_test.go @@ -12,5 +12,5 @@ import ( func TestReadMemInfo(t *testing.T) { vmStat, err := readMemInfo() assert.NoError(t, err) - assert.True(t, vmStat > 0) + assert.Positive(t, vmStat) } diff --git a/internal/iruntime/total_memory_linux_test.go b/internal/iruntime/total_memory_linux_test.go index 563f3942207..3e05aee21d8 100644 --- a/internal/iruntime/total_memory_linux_test.go +++ b/internal/iruntime/total_memory_linux_test.go @@ -15,5 +15,5 @@ import ( func TestTotalMemory(t *testing.T) { totalMemory, err := TotalMemory() require.NoError(t, err) - assert.True(t, totalMemory > 0) + assert.Positive(t, totalMemory) } diff --git a/internal/localhostgate/featuregate.go b/internal/localhostgate/featuregate.go deleted file mode 100644 index 568bbcdd786..00000000000 --- a/internal/localhostgate/featuregate.go +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright The OpenTelemetry Authors -// SPDX-License-Identifier: Apache-2.0 - -// package localhostgate defines a feature gate that controls whether server-like receivers and extensions use localhost as the default host for their endpoints. -// This package is duplicated across core and contrib to avoid exposing the feature gate as part of the public API. -// To do this we define a `registerOrLoad` helper and try to register the gate in both modules. -// IMPORTANT NOTE: ANY CHANGES TO THIS PACKAGE MUST BE MIRRORED IN THE CONTRIB COUNTERPART. -package localhostgate // import "go.opentelemetry.io/collector/internal/localhostgate" - -import ( - "errors" - "fmt" - - "go.uber.org/zap" - - "go.opentelemetry.io/collector/featuregate" -) - -const UseLocalHostAsDefaultHostID = "component.UseLocalHostAsDefaultHost" - -// UseLocalHostAsDefaultHostfeatureGate is the feature gate that controls whether -// server-like receivers and extensions such as the OTLP receiver use localhost as the default host for their endpoints. -var UseLocalHostAsDefaultHostfeatureGate = mustRegisterOrLoad( - featuregate.GlobalRegistry(), - UseLocalHostAsDefaultHostID, - featuregate.StageBeta, - featuregate.WithRegisterDescription("controls whether server-like receivers and extensions such as the OTLP receiver use localhost as the default host for their endpoints"), -) - -// mustRegisterOrLoad tries to register the feature gate and loads it if it already exists. -// It panics on any other error. -func mustRegisterOrLoad(reg *featuregate.Registry, id string, stage featuregate.Stage, opts ...featuregate.RegisterOption) *featuregate.Gate { - gate, err := reg.Register(id, stage, opts...) - - if errors.Is(err, featuregate.ErrAlreadyRegistered) { - // Gate is already registered; find it. - // Only a handful of feature gates are registered, so it's fine to iterate over all of them. - reg.VisitAll(func(g *featuregate.Gate) { - if g.ID() == id { - gate = g - return - } - }) - } else if err != nil { - panic(err) - } - - return gate -} - -// EndpointForPort gets the endpoint for a given port using localhost or 0.0.0.0 depending on the feature gate. -func EndpointForPort(port int) string { - host := "localhost" - if !UseLocalHostAsDefaultHostfeatureGate.IsEnabled() { - host = "0.0.0.0" - } - return fmt.Sprintf("%s:%d", host, port) -} - -// LogAboutUseLocalHostAsDefault logs about the upcoming change from 0.0.0.0 to localhost on server-like components. -func LogAboutUseLocalHostAsDefault(logger *zap.Logger) { - if UseLocalHostAsDefaultHostfeatureGate.IsEnabled() { - logger.Info( - "The default endpoints for all servers in components have changed to use localhost instead of 0.0.0.0. Disable the feature gate to temporarily revert to the previous default.", - zap.String("feature gate ID", UseLocalHostAsDefaultHostID), - ) - } -} diff --git a/internal/localhostgate/featuregate_test.go b/internal/localhostgate/featuregate_test.go deleted file mode 100644 index bde051c4f15..00000000000 --- a/internal/localhostgate/featuregate_test.go +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright The OpenTelemetry Authors -// SPDX-License-Identifier: Apache-2.0 - -package localhostgate - -import ( - "testing" - - "github.com/stretchr/testify/assert" - "github.com/stretchr/testify/require" - - "go.opentelemetry.io/collector/featuregate" -) - -func setFeatureGateForTest(t testing.TB, gate *featuregate.Gate, enabled bool) func() { - originalValue := gate.IsEnabled() - require.NoError(t, featuregate.GlobalRegistry().Set(gate.ID(), enabled)) - return func() { - require.NoError(t, featuregate.GlobalRegistry().Set(gate.ID(), originalValue)) - } -} - -func TestEndpointForPort(t *testing.T) { - tests := []struct { - port int - enabled bool - endpoint string - }{ - { - port: 4317, - enabled: false, - endpoint: "0.0.0.0:4317", - }, - { - port: 4317, - enabled: true, - endpoint: "localhost:4317", - }, - { - port: 0, - enabled: false, - endpoint: "0.0.0.0:0", - }, - { - port: 0, - enabled: true, - endpoint: "localhost:0", - }, - } - - for _, tt := range tests { - t.Run(tt.endpoint, func(t *testing.T) { - defer setFeatureGateForTest(t, UseLocalHostAsDefaultHostfeatureGate, tt.enabled)() - assert.Equal(t, EndpointForPort(tt.port), tt.endpoint) - }) - } -} diff --git a/internal/obsreportconfig/obsmetrics/obs_processor.go b/internal/obsreportconfig/obsmetrics/obs_processor.go deleted file mode 100644 index 3cbd8fc4a83..00000000000 --- a/internal/obsreportconfig/obsmetrics/obs_processor.go +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright The OpenTelemetry Authors -// SPDX-License-Identifier: Apache-2.0 - -package obsmetrics // import "go.opentelemetry.io/collector/internal/obsreportconfig/obsmetrics" - -const ( - // ProcessorKey is the key used to identify processors in metrics and traces. - ProcessorKey = "processor" - - // DroppedSpansKey is the key used to identify spans dropped by the Collector. - DroppedSpansKey = "dropped_spans" - - // DroppedMetricPointsKey is the key used to identify metric points dropped by the Collector. - DroppedMetricPointsKey = "dropped_metric_points" - - // DroppedLogRecordsKey is the key used to identify log records dropped by the Collector. - DroppedLogRecordsKey = "dropped_log_records" -) - -var ( - ProcessorMetricPrefix = ProcessorKey + MetricNameSep -) diff --git a/internal/obsreportconfig/obsmetrics/obs_scraper.go b/internal/obsreportconfig/obsmetrics/obs_scraper.go deleted file mode 100644 index 4254891f33a..00000000000 --- a/internal/obsreportconfig/obsmetrics/obs_scraper.go +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright The OpenTelemetry Authors -// SPDX-License-Identifier: Apache-2.0 - -package obsmetrics // import "go.opentelemetry.io/collector/internal/obsreportconfig/obsmetrics" - -const ( - // ScraperKey used to identify scrapers in metrics and traces. - ScraperKey = "scraper" - - // ScrapedMetricPointsKey used to identify metric points scraped by the - // Collector. - ScrapedMetricPointsKey = "scraped_metric_points" - // ErroredMetricPointsKey used to identify metric points errored (i.e. - // unable to be scraped) by the Collector. - ErroredMetricPointsKey = "errored_metric_points" -) - -const ( - ScraperPrefix = ScraperKey + SpanNameSep - ScraperMetricPrefix = ScraperKey + MetricNameSep - ScraperMetricsOperationSuffix = SpanNameSep + "MetricsScraped" -) diff --git a/internal/obsreportconfig/obsmetrics/obsmetrics.go b/internal/obsreportconfig/obsmetrics/obsmetrics.go deleted file mode 100644 index 02a49557c88..00000000000 --- a/internal/obsreportconfig/obsmetrics/obsmetrics.go +++ /dev/null @@ -1,11 +0,0 @@ -// Copyright The OpenTelemetry Authors -// SPDX-License-Identifier: Apache-2.0 - -// Package obsmetrics defines the obsreport metrics for each components -package obsmetrics // import "go.opentelemetry.io/collector/internal/obsreportconfig/obsmetrics" - -const ( - SpanNameSep = "/" - MetricNameSep = "_" - Scope = "go.opentelemetry.io/collector/obsreport" -) diff --git a/internal/obsreportconfig/obsreportconfig.go b/internal/obsreportconfig/obsreportconfig.go deleted file mode 100644 index 081326eaeda..00000000000 --- a/internal/obsreportconfig/obsreportconfig.go +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright The OpenTelemetry Authors -// SPDX-License-Identifier: Apache-2.0 - -package obsreportconfig // import "go.opentelemetry.io/collector/internal/obsreportconfig" - -import ( - "go.opentelemetry.io/collector/featuregate" -) - -// DisableHighCardinalityMetricsfeatureGate is the feature gate that controls whether the collector should enable -// potentially high cardinality metrics. The gate will be removed when the collector allows for view configuration. -var DisableHighCardinalityMetricsfeatureGate = featuregate.GlobalRegistry().MustRegister( - "telemetry.disableHighCardinalityMetrics", - featuregate.StageAlpha, - featuregate.WithRegisterDescription("controls whether the collector should enable potentially high"+ - "cardinality metrics. The gate will be removed when the collector allows for view configuration.")) - -// UseOtelWithSDKConfigurationForInternalTelemetryFeatureGate is the feature gate that controls whether the collector -// supports configuring the OpenTelemetry SDK via configuration -var UseOtelWithSDKConfigurationForInternalTelemetryFeatureGate = featuregate.GlobalRegistry().MustRegister( - "telemetry.useOtelWithSDKConfigurationForInternalTelemetry", - featuregate.StageBeta, - featuregate.WithRegisterDescription("controls whether the collector supports extended OpenTelemetry"+ - "configuration for internal telemetry")) diff --git a/internal/obsreportconfig/package_test.go b/internal/obsreportconfig/package_test.go deleted file mode 100644 index d70955f9088..00000000000 --- a/internal/obsreportconfig/package_test.go +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright The OpenTelemetry Authors -// SPDX-License-Identifier: Apache-2.0 - -package obsreportconfig - -import ( - "testing" - - "go.uber.org/goleak" -) - -func TestMain(m *testing.M) { - goleak.VerifyTestMain(m) -} diff --git a/internal/testutil/testutil.go b/internal/testutil/testutil.go index ae9e51926c6..60980e840e7 100644 --- a/internal/testutil/testutil.go +++ b/internal/testutil/testutil.go @@ -8,13 +8,11 @@ import ( "net" "os/exec" "runtime" - "strconv" "strings" "testing" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" - "go.opentelemetry.io/contrib/config" ) type portpair struct { @@ -86,22 +84,6 @@ func GetAvailableLocalIPv6Address(t testing.TB) string { return endpoint } -func GetAvailableLocalAddressPrometheus(t testing.TB) *config.Prometheus { - address := GetAvailableLocalAddress(t) - host, port, err := net.SplitHostPort(address) - if err != nil { - return nil - } - portInt, err := strconv.Atoi(port) - if err != nil { - return nil - } - return &config.Prometheus{ - Host: &host, - Port: &portInt, - } -} - func findAvailableAddress(network string, t testing.TB) string { var host string switch network { diff --git a/pdata/internal/cmd/pdatagen/internal/base_fields.go b/pdata/internal/cmd/pdatagen/internal/base_fields.go index 523ef352149..857125fbbfb 100644 --- a/pdata/internal/cmd/pdatagen/internal/base_fields.go +++ b/pdata/internal/cmd/pdatagen/internal/base_fields.go @@ -177,9 +177,17 @@ const accessorsOneOfPrimitiveTestTemplate = `func Test{{ .structName }}_{{ .acce const accessorsPrimitiveTestTemplate = `func Test{{ .structName }}_{{ .fieldName }}(t *testing.T) { ms := New{{ .structName }}() + {{- if eq .returnType "bool" }} + assert.{{- if eq .defaultVal "true" }}True{{- else }}False{{- end }}(t, ms.{{ .fieldName }}()) + {{- else }} assert.Equal(t, {{ .defaultVal }}, ms.{{ .fieldName }}()) + {{- end }} ms.Set{{ .fieldName }}({{ .testValue }}) + {{- if eq .returnType "bool" }} + assert.{{- if eq .testValue "true" }}True{{- else }}False{{- end }}(t, ms.{{ .fieldName }}()) + {{- else }} assert.Equal(t, {{ .testValue }}, ms.{{ .fieldName }}()) + {{- end }} sharedState := internal.StateReadOnly assert.Panics(t, func() { new{{ .structName }}(&{{ .originStructName }}{}, &sharedState).Set{{ .fieldName }}({{ .testValue }}) }) }` diff --git a/pdata/internal/cmd/pdatagen/internal/base_slices.go b/pdata/internal/cmd/pdatagen/internal/base_slices.go index d556207163a..21646d92bc1 100644 --- a/pdata/internal/cmd/pdatagen/internal/base_slices.go +++ b/pdata/internal/cmd/pdatagen/internal/base_slices.go @@ -272,13 +272,13 @@ func Test{{ .structName }}_Sort(t *testing.T) { return uintptr(unsafe.Pointer(a.orig)) < uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) < uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Less(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } es.Sort(func(a, b {{ .elementName }}) bool { return uintptr(unsafe.Pointer(a.orig)) > uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) > uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Greater(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } } {{- end }}` diff --git a/pdata/pcommon/map_test.go b/pdata/pcommon/map_test.go index dec5eae74c4..a60d650fdc0 100644 --- a/pdata/pcommon/map_test.go +++ b/pdata/pcommon/map_test.go @@ -427,7 +427,7 @@ func TestMap_EnsureCapacity_Existing(t *testing.T) { // Ensure previously existing element is still there. assert.Equal(t, 1, am.Len()) v, ok := am.Get("foo") - assert.Equal(t, v.Str(), "bar") + assert.Equal(t, "bar", v.Str()) assert.True(t, ok) assert.Equal(t, 5, cap(*am.getOrig())) @@ -439,11 +439,11 @@ func TestMap_EnsureCapacity_Existing(t *testing.T) { assert.Equal(t, 2, am.Len()) v, ok = am.Get("foo") - assert.Equal(t, v.Str(), "bar") + assert.Equal(t, "bar", v.Str()) assert.True(t, ok) v, ok = am.Get("abc") - assert.Equal(t, v.Str(), "xyz") + assert.Equal(t, "xyz", v.Str()) assert.True(t, ok) } diff --git a/pdata/plog/generated_logrecordslice_test.go b/pdata/plog/generated_logrecordslice_test.go index ff47a245987..d8f6b5345fb 100644 --- a/pdata/plog/generated_logrecordslice_test.go +++ b/pdata/plog/generated_logrecordslice_test.go @@ -129,13 +129,13 @@ func TestLogRecordSlice_Sort(t *testing.T) { return uintptr(unsafe.Pointer(a.orig)) < uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) < uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Less(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } es.Sort(func(a, b LogRecord) bool { return uintptr(unsafe.Pointer(a.orig)) > uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) > uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Greater(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } } diff --git a/pdata/plog/generated_resourcelogsslice_test.go b/pdata/plog/generated_resourcelogsslice_test.go index 993a597f119..3505ba5376a 100644 --- a/pdata/plog/generated_resourcelogsslice_test.go +++ b/pdata/plog/generated_resourcelogsslice_test.go @@ -129,13 +129,13 @@ func TestResourceLogsSlice_Sort(t *testing.T) { return uintptr(unsafe.Pointer(a.orig)) < uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) < uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Less(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } es.Sort(func(a, b ResourceLogs) bool { return uintptr(unsafe.Pointer(a.orig)) > uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) > uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Greater(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } } diff --git a/pdata/plog/generated_scopelogsslice_test.go b/pdata/plog/generated_scopelogsslice_test.go index 12678c7b4fc..6c599906449 100644 --- a/pdata/plog/generated_scopelogsslice_test.go +++ b/pdata/plog/generated_scopelogsslice_test.go @@ -129,13 +129,13 @@ func TestScopeLogsSlice_Sort(t *testing.T) { return uintptr(unsafe.Pointer(a.orig)) < uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) < uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Less(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } es.Sort(func(a, b ScopeLogs) bool { return uintptr(unsafe.Pointer(a.orig)) > uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) > uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Greater(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } } diff --git a/pdata/plog/plogotlp/request_test.go b/pdata/plog/plogotlp/request_test.go index a8376c2e87b..1a4acc62b97 100644 --- a/pdata/plog/plogotlp/request_test.go +++ b/pdata/plog/plogotlp/request_test.go @@ -39,9 +39,9 @@ var logsRequestJSON = []byte(` func TestRequestToPData(t *testing.T) { tr := NewExportRequest() - assert.Equal(t, tr.Logs().LogRecordCount(), 0) + assert.Equal(t, 0, tr.Logs().LogRecordCount()) tr.Logs().ResourceLogs().AppendEmpty().ScopeLogs().AppendEmpty().LogRecords().AppendEmpty() - assert.Equal(t, tr.Logs().LogRecordCount(), 1) + assert.Equal(t, 1, tr.Logs().LogRecordCount()) } func TestRequestJSON(t *testing.T) { diff --git a/pdata/pmetric/generated_exponentialhistogramdatapointslice_test.go b/pdata/pmetric/generated_exponentialhistogramdatapointslice_test.go index 7c938c6ee22..7367f854a3a 100644 --- a/pdata/pmetric/generated_exponentialhistogramdatapointslice_test.go +++ b/pdata/pmetric/generated_exponentialhistogramdatapointslice_test.go @@ -129,13 +129,13 @@ func TestExponentialHistogramDataPointSlice_Sort(t *testing.T) { return uintptr(unsafe.Pointer(a.orig)) < uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) < uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Less(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } es.Sort(func(a, b ExponentialHistogramDataPoint) bool { return uintptr(unsafe.Pointer(a.orig)) > uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) > uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Greater(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } } diff --git a/pdata/pmetric/generated_histogramdatapointslice_test.go b/pdata/pmetric/generated_histogramdatapointslice_test.go index bcf4305b993..14a4cd95c0c 100644 --- a/pdata/pmetric/generated_histogramdatapointslice_test.go +++ b/pdata/pmetric/generated_histogramdatapointslice_test.go @@ -129,13 +129,13 @@ func TestHistogramDataPointSlice_Sort(t *testing.T) { return uintptr(unsafe.Pointer(a.orig)) < uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) < uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Less(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } es.Sort(func(a, b HistogramDataPoint) bool { return uintptr(unsafe.Pointer(a.orig)) > uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) > uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Greater(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } } diff --git a/pdata/pmetric/generated_metricslice_test.go b/pdata/pmetric/generated_metricslice_test.go index cb89ca8beab..ecd625e9dac 100644 --- a/pdata/pmetric/generated_metricslice_test.go +++ b/pdata/pmetric/generated_metricslice_test.go @@ -129,13 +129,13 @@ func TestMetricSlice_Sort(t *testing.T) { return uintptr(unsafe.Pointer(a.orig)) < uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) < uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Less(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } es.Sort(func(a, b Metric) bool { return uintptr(unsafe.Pointer(a.orig)) > uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) > uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Greater(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } } diff --git a/pdata/pmetric/generated_numberdatapointslice_test.go b/pdata/pmetric/generated_numberdatapointslice_test.go index 6bc35ff03c2..e431fc4b0e2 100644 --- a/pdata/pmetric/generated_numberdatapointslice_test.go +++ b/pdata/pmetric/generated_numberdatapointslice_test.go @@ -129,13 +129,13 @@ func TestNumberDataPointSlice_Sort(t *testing.T) { return uintptr(unsafe.Pointer(a.orig)) < uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) < uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Less(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } es.Sort(func(a, b NumberDataPoint) bool { return uintptr(unsafe.Pointer(a.orig)) > uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) > uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Greater(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } } diff --git a/pdata/pmetric/generated_resourcemetricsslice_test.go b/pdata/pmetric/generated_resourcemetricsslice_test.go index 869f7a37503..41672b180c9 100644 --- a/pdata/pmetric/generated_resourcemetricsslice_test.go +++ b/pdata/pmetric/generated_resourcemetricsslice_test.go @@ -129,13 +129,13 @@ func TestResourceMetricsSlice_Sort(t *testing.T) { return uintptr(unsafe.Pointer(a.orig)) < uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) < uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Less(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } es.Sort(func(a, b ResourceMetrics) bool { return uintptr(unsafe.Pointer(a.orig)) > uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) > uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Greater(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } } diff --git a/pdata/pmetric/generated_scopemetricsslice_test.go b/pdata/pmetric/generated_scopemetricsslice_test.go index b0903bc256e..0374828d6b5 100644 --- a/pdata/pmetric/generated_scopemetricsslice_test.go +++ b/pdata/pmetric/generated_scopemetricsslice_test.go @@ -129,13 +129,13 @@ func TestScopeMetricsSlice_Sort(t *testing.T) { return uintptr(unsafe.Pointer(a.orig)) < uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) < uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Less(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } es.Sort(func(a, b ScopeMetrics) bool { return uintptr(unsafe.Pointer(a.orig)) > uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) > uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Greater(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } } diff --git a/pdata/pmetric/generated_sum_test.go b/pdata/pmetric/generated_sum_test.go index 98f3574b10f..1ee64cc58e8 100644 --- a/pdata/pmetric/generated_sum_test.go +++ b/pdata/pmetric/generated_sum_test.go @@ -48,9 +48,9 @@ func TestSum_AggregationTemporality(t *testing.T) { func TestSum_IsMonotonic(t *testing.T) { ms := NewSum() - assert.Equal(t, false, ms.IsMonotonic()) + assert.False(t, ms.IsMonotonic()) ms.SetIsMonotonic(true) - assert.Equal(t, true, ms.IsMonotonic()) + assert.True(t, ms.IsMonotonic()) sharedState := internal.StateReadOnly assert.Panics(t, func() { newSum(&otlpmetrics.Sum{}, &sharedState).SetIsMonotonic(true) }) } diff --git a/pdata/pmetric/generated_summarydatapointslice_test.go b/pdata/pmetric/generated_summarydatapointslice_test.go index 10a12b45e5a..2ebbe38c0bd 100644 --- a/pdata/pmetric/generated_summarydatapointslice_test.go +++ b/pdata/pmetric/generated_summarydatapointslice_test.go @@ -129,13 +129,13 @@ func TestSummaryDataPointSlice_Sort(t *testing.T) { return uintptr(unsafe.Pointer(a.orig)) < uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) < uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Less(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } es.Sort(func(a, b SummaryDataPoint) bool { return uintptr(unsafe.Pointer(a.orig)) > uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) > uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Greater(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } } diff --git a/pdata/pmetric/generated_summarydatapointvalueatquantileslice_test.go b/pdata/pmetric/generated_summarydatapointvalueatquantileslice_test.go index 5ad949f10d1..f879c4bc478 100644 --- a/pdata/pmetric/generated_summarydatapointvalueatquantileslice_test.go +++ b/pdata/pmetric/generated_summarydatapointvalueatquantileslice_test.go @@ -129,13 +129,13 @@ func TestSummaryDataPointValueAtQuantileSlice_Sort(t *testing.T) { return uintptr(unsafe.Pointer(a.orig)) < uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) < uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Less(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } es.Sort(func(a, b SummaryDataPointValueAtQuantile) bool { return uintptr(unsafe.Pointer(a.orig)) > uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) > uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Greater(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } } diff --git a/pdata/pmetric/pmetricotlp/request_test.go b/pdata/pmetric/pmetricotlp/request_test.go index 7b8ca7fcc5f..e125ef5fe61 100644 --- a/pdata/pmetric/pmetricotlp/request_test.go +++ b/pdata/pmetric/pmetricotlp/request_test.go @@ -35,9 +35,9 @@ var metricsRequestJSON = []byte(` func TestRequestToPData(t *testing.T) { tr := NewExportRequest() - assert.Equal(t, tr.Metrics().MetricCount(), 0) + assert.Equal(t, 0, tr.Metrics().MetricCount()) tr.Metrics().ResourceMetrics().AppendEmpty().ScopeMetrics().AppendEmpty().Metrics().AppendEmpty() - assert.Equal(t, tr.Metrics().MetricCount(), 1) + assert.Equal(t, 1, tr.Metrics().MetricCount()) } func TestRequestJSON(t *testing.T) { diff --git a/pdata/pprofile/generated_location_test.go b/pdata/pprofile/generated_location_test.go index 60f6d553bb6..fc20d72edcc 100644 --- a/pdata/pprofile/generated_location_test.go +++ b/pdata/pprofile/generated_location_test.go @@ -75,9 +75,9 @@ func TestLocation_Line(t *testing.T) { func TestLocation_IsFolded(t *testing.T) { ms := NewLocation() - assert.Equal(t, false, ms.IsFolded()) + assert.False(t, ms.IsFolded()) ms.SetIsFolded(true) - assert.Equal(t, true, ms.IsFolded()) + assert.True(t, ms.IsFolded()) sharedState := internal.StateReadOnly assert.Panics(t, func() { newLocation(&otlpprofiles.Location{}, &sharedState).SetIsFolded(true) }) } diff --git a/pdata/pprofile/generated_mapping_test.go b/pdata/pprofile/generated_mapping_test.go index 6a50c205084..ab575615297 100644 --- a/pdata/pprofile/generated_mapping_test.go +++ b/pdata/pprofile/generated_mapping_test.go @@ -111,36 +111,36 @@ func TestMapping_Attributes(t *testing.T) { func TestMapping_HasFunctions(t *testing.T) { ms := NewMapping() - assert.Equal(t, false, ms.HasFunctions()) + assert.False(t, ms.HasFunctions()) ms.SetHasFunctions(true) - assert.Equal(t, true, ms.HasFunctions()) + assert.True(t, ms.HasFunctions()) sharedState := internal.StateReadOnly assert.Panics(t, func() { newMapping(&otlpprofiles.Mapping{}, &sharedState).SetHasFunctions(true) }) } func TestMapping_HasFilenames(t *testing.T) { ms := NewMapping() - assert.Equal(t, false, ms.HasFilenames()) + assert.False(t, ms.HasFilenames()) ms.SetHasFilenames(true) - assert.Equal(t, true, ms.HasFilenames()) + assert.True(t, ms.HasFilenames()) sharedState := internal.StateReadOnly assert.Panics(t, func() { newMapping(&otlpprofiles.Mapping{}, &sharedState).SetHasFilenames(true) }) } func TestMapping_HasLineNumbers(t *testing.T) { ms := NewMapping() - assert.Equal(t, false, ms.HasLineNumbers()) + assert.False(t, ms.HasLineNumbers()) ms.SetHasLineNumbers(true) - assert.Equal(t, true, ms.HasLineNumbers()) + assert.True(t, ms.HasLineNumbers()) sharedState := internal.StateReadOnly assert.Panics(t, func() { newMapping(&otlpprofiles.Mapping{}, &sharedState).SetHasLineNumbers(true) }) } func TestMapping_HasInlineFrames(t *testing.T) { ms := NewMapping() - assert.Equal(t, false, ms.HasInlineFrames()) + assert.False(t, ms.HasInlineFrames()) ms.SetHasInlineFrames(true) - assert.Equal(t, true, ms.HasInlineFrames()) + assert.True(t, ms.HasInlineFrames()) sharedState := internal.StateReadOnly assert.Panics(t, func() { newMapping(&otlpprofiles.Mapping{}, &sharedState).SetHasInlineFrames(true) }) } diff --git a/pdata/pprofile/generated_profilescontainersslice_test.go b/pdata/pprofile/generated_profilescontainersslice_test.go index 428fd677c3a..902fd4cf24b 100644 --- a/pdata/pprofile/generated_profilescontainersslice_test.go +++ b/pdata/pprofile/generated_profilescontainersslice_test.go @@ -129,13 +129,13 @@ func TestProfilesContainersSlice_Sort(t *testing.T) { return uintptr(unsafe.Pointer(a.orig)) < uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) < uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Less(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } es.Sort(func(a, b ProfileContainer) bool { return uintptr(unsafe.Pointer(a.orig)) > uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) > uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Greater(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } } diff --git a/pdata/pprofile/generated_resourceprofilesslice_test.go b/pdata/pprofile/generated_resourceprofilesslice_test.go index 3d319fc8b16..32ec740a939 100644 --- a/pdata/pprofile/generated_resourceprofilesslice_test.go +++ b/pdata/pprofile/generated_resourceprofilesslice_test.go @@ -129,13 +129,13 @@ func TestResourceProfilesSlice_Sort(t *testing.T) { return uintptr(unsafe.Pointer(a.orig)) < uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) < uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Less(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } es.Sort(func(a, b ResourceProfiles) bool { return uintptr(unsafe.Pointer(a.orig)) > uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) > uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Greater(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } } diff --git a/pdata/pprofile/generated_scopeprofilesslice_test.go b/pdata/pprofile/generated_scopeprofilesslice_test.go index 831dafdec09..78dc1f05f1a 100644 --- a/pdata/pprofile/generated_scopeprofilesslice_test.go +++ b/pdata/pprofile/generated_scopeprofilesslice_test.go @@ -129,13 +129,13 @@ func TestScopeProfilesSlice_Sort(t *testing.T) { return uintptr(unsafe.Pointer(a.orig)) < uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) < uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Less(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } es.Sort(func(a, b ScopeProfiles) bool { return uintptr(unsafe.Pointer(a.orig)) > uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) > uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Greater(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } } diff --git a/pdata/pprofile/pprofileotlp/request_test.go b/pdata/pprofile/pprofileotlp/request_test.go index 0d17ec54fc4..c685346f5a7 100644 --- a/pdata/pprofile/pprofileotlp/request_test.go +++ b/pdata/pprofile/pprofileotlp/request_test.go @@ -43,9 +43,9 @@ var profilesRequestJSON = []byte(` func TestRequestToPData(t *testing.T) { tr := NewExportRequest() - assert.Equal(t, tr.Profiles().SampleCount(), 0) + assert.Equal(t, 0, tr.Profiles().SampleCount()) tr.Profiles().ResourceProfiles().AppendEmpty().ScopeProfiles().AppendEmpty().Profiles().AppendEmpty().Profile().Sample().AppendEmpty() - assert.Equal(t, tr.Profiles().SampleCount(), 1) + assert.Equal(t, 1, tr.Profiles().SampleCount()) } func TestRequestJSON(t *testing.T) { diff --git a/pdata/ptrace/generated_resourcespansslice_test.go b/pdata/ptrace/generated_resourcespansslice_test.go index aa7bdf738a9..0a031d93420 100644 --- a/pdata/ptrace/generated_resourcespansslice_test.go +++ b/pdata/ptrace/generated_resourcespansslice_test.go @@ -129,13 +129,13 @@ func TestResourceSpansSlice_Sort(t *testing.T) { return uintptr(unsafe.Pointer(a.orig)) < uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) < uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Less(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } es.Sort(func(a, b ResourceSpans) bool { return uintptr(unsafe.Pointer(a.orig)) > uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) > uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Greater(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } } diff --git a/pdata/ptrace/generated_scopespansslice_test.go b/pdata/ptrace/generated_scopespansslice_test.go index 1c3fa931bf1..f7594580658 100644 --- a/pdata/ptrace/generated_scopespansslice_test.go +++ b/pdata/ptrace/generated_scopespansslice_test.go @@ -129,13 +129,13 @@ func TestScopeSpansSlice_Sort(t *testing.T) { return uintptr(unsafe.Pointer(a.orig)) < uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) < uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Less(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } es.Sort(func(a, b ScopeSpans) bool { return uintptr(unsafe.Pointer(a.orig)) > uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) > uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Greater(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } } diff --git a/pdata/ptrace/generated_spaneventslice_test.go b/pdata/ptrace/generated_spaneventslice_test.go index 86da67e1332..7da302ec805 100644 --- a/pdata/ptrace/generated_spaneventslice_test.go +++ b/pdata/ptrace/generated_spaneventslice_test.go @@ -129,13 +129,13 @@ func TestSpanEventSlice_Sort(t *testing.T) { return uintptr(unsafe.Pointer(a.orig)) < uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) < uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Less(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } es.Sort(func(a, b SpanEvent) bool { return uintptr(unsafe.Pointer(a.orig)) > uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) > uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Greater(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } } diff --git a/pdata/ptrace/generated_spanlinkslice_test.go b/pdata/ptrace/generated_spanlinkslice_test.go index 9ad8f4dc276..95606c26c0c 100644 --- a/pdata/ptrace/generated_spanlinkslice_test.go +++ b/pdata/ptrace/generated_spanlinkslice_test.go @@ -129,13 +129,13 @@ func TestSpanLinkSlice_Sort(t *testing.T) { return uintptr(unsafe.Pointer(a.orig)) < uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) < uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Less(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } es.Sort(func(a, b SpanLink) bool { return uintptr(unsafe.Pointer(a.orig)) > uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) > uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Greater(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } } diff --git a/pdata/ptrace/generated_spanslice_test.go b/pdata/ptrace/generated_spanslice_test.go index 1ae585b996f..e8d9e66b161 100644 --- a/pdata/ptrace/generated_spanslice_test.go +++ b/pdata/ptrace/generated_spanslice_test.go @@ -129,13 +129,13 @@ func TestSpanSlice_Sort(t *testing.T) { return uintptr(unsafe.Pointer(a.orig)) < uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) < uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Less(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } es.Sort(func(a, b Span) bool { return uintptr(unsafe.Pointer(a.orig)) > uintptr(unsafe.Pointer(b.orig)) }) for i := 1; i < es.Len(); i++ { - assert.True(t, uintptr(unsafe.Pointer(es.At(i-1).orig)) > uintptr(unsafe.Pointer(es.At(i).orig))) + assert.Greater(t, uintptr(unsafe.Pointer(es.At(i-1).orig)), uintptr(unsafe.Pointer(es.At(i).orig))) } } diff --git a/pdata/ptrace/ptraceotlp/request_test.go b/pdata/ptrace/ptraceotlp/request_test.go index d7fb76997b5..be9530f5acd 100644 --- a/pdata/ptrace/ptraceotlp/request_test.go +++ b/pdata/ptrace/ptraceotlp/request_test.go @@ -39,9 +39,9 @@ var tracesRequestJSON = []byte(` func TestRequestToPData(t *testing.T) { tr := NewExportRequest() - assert.Equal(t, tr.Traces().SpanCount(), 0) + assert.Equal(t, 0, tr.Traces().SpanCount()) tr.Traces().ResourceSpans().AppendEmpty().ScopeSpans().AppendEmpty().Spans().AppendEmpty() - assert.Equal(t, tr.Traces().SpanCount(), 1) + assert.Equal(t, 1, tr.Traces().SpanCount()) } func TestRequestJSON(t *testing.T) { diff --git a/processor/batchprocessor/go.mod b/processor/batchprocessor/go.mod index ce8955ac4fa..557defcc6c3 100644 --- a/processor/batchprocessor/go.mod +++ b/processor/batchprocessor/go.mod @@ -4,7 +4,6 @@ go 1.22.0 require ( github.com/stretchr/testify v1.9.0 - go.opentelemetry.io/collector v0.109.0 go.opentelemetry.io/collector/client v1.15.0 go.opentelemetry.io/collector/component v0.109.0 go.opentelemetry.io/collector/config/configtelemetry v0.109.0 @@ -62,8 +61,6 @@ require ( gopkg.in/yaml.v3 v3.0.1 // indirect ) -replace go.opentelemetry.io/collector => ../../ - replace go.opentelemetry.io/collector/processor => ../ replace go.opentelemetry.io/collector/component => ../../component @@ -72,8 +69,6 @@ replace go.opentelemetry.io/collector/client => ../../client replace go.opentelemetry.io/collector/confmap => ../../confmap -replace go.opentelemetry.io/collector/featuregate => ../../featuregate - replace go.opentelemetry.io/collector/pdata => ../../pdata replace go.opentelemetry.io/collector/pdata/testdata => ../../pdata/testdata diff --git a/processor/batchprocessor/metrics.go b/processor/batchprocessor/metrics.go index 98302403707..0c98063ceb2 100644 --- a/processor/batchprocessor/metrics.go +++ b/processor/batchprocessor/metrics.go @@ -10,15 +10,14 @@ import ( "go.opentelemetry.io/otel/metric" "go.opentelemetry.io/collector/config/configtelemetry" - "go.opentelemetry.io/collector/internal/obsreportconfig/obsmetrics" "go.opentelemetry.io/collector/processor" "go.opentelemetry.io/collector/processor/batchprocessor/internal/metadata" + "go.opentelemetry.io/collector/processor/internal" ) type trigger int const ( - typeStr = "batch" triggerTimeout trigger = iota triggerBatchSize ) @@ -33,7 +32,7 @@ type batchProcessorTelemetry struct { } func newBatchProcessorTelemetry(set processor.Settings, currentMetadataCardinality func() int) (*batchProcessorTelemetry, error) { - attrs := attribute.NewSet(attribute.String(obsmetrics.ProcessorKey, set.ID.String())) + attrs := attribute.NewSet(attribute.String(internal.ProcessorKey, set.ID.String())) telemetryBuilder, err := metadata.NewTelemetryBuilder(set.TelemetrySettings, metadata.WithProcessorBatchMetadataCardinalityCallback(func() int64 { diff --git a/processor/go.mod b/processor/go.mod index c1295c12e13..726c6aff708 100644 --- a/processor/go.mod +++ b/processor/go.mod @@ -5,7 +5,6 @@ go 1.22.0 require ( github.com/google/uuid v1.6.0 github.com/stretchr/testify v1.9.0 - go.opentelemetry.io/collector v0.109.0 go.opentelemetry.io/collector/component v0.109.0 go.opentelemetry.io/collector/component/componentstatus v0.109.0 go.opentelemetry.io/collector/config/configtelemetry v0.109.0 @@ -53,16 +52,10 @@ require ( gopkg.in/yaml.v3 v3.0.1 // indirect ) -replace go.opentelemetry.io/collector => ../ - replace go.opentelemetry.io/collector/component => ../component -replace go.opentelemetry.io/collector/confmap => ../confmap - replace go.opentelemetry.io/collector/consumer => ../consumer -replace go.opentelemetry.io/collector/featuregate => ../featuregate - replace go.opentelemetry.io/collector/pdata => ../pdata replace go.opentelemetry.io/collector/pdata/testdata => ../pdata/testdata diff --git a/processor/internal/obsmetrics.go b/processor/internal/obsmetrics.go new file mode 100644 index 00000000000..c96fbe5e9e0 --- /dev/null +++ b/processor/internal/obsmetrics.go @@ -0,0 +1,13 @@ +// Copyright The OpenTelemetry Authors +// SPDX-License-Identifier: Apache-2.0 + +package internal // import "go.opentelemetry.io/collector/processor/internal" + +const ( + MetricNameSep = "_" + + // ProcessorKey is the key used to identify processors in metrics and traces. + ProcessorKey = "processor" + + ProcessorMetricPrefix = ProcessorKey + MetricNameSep +) diff --git a/processor/memorylimiterprocessor/go.mod b/processor/memorylimiterprocessor/go.mod index 8fb635fc96a..32e125c5222 100644 --- a/processor/memorylimiterprocessor/go.mod +++ b/processor/memorylimiterprocessor/go.mod @@ -76,8 +76,6 @@ replace go.opentelemetry.io/collector/component => ../../component replace go.opentelemetry.io/collector/confmap => ../../confmap -replace go.opentelemetry.io/collector/featuregate => ../../featuregate - replace go.opentelemetry.io/collector/pdata => ../../pdata replace go.opentelemetry.io/collector/pdata/testdata => ../../pdata/testdata diff --git a/processor/memorylimiterprocessor/go.sum b/processor/memorylimiterprocessor/go.sum index 1037084e6a5..556ddb58cb8 100644 --- a/processor/memorylimiterprocessor/go.sum +++ b/processor/memorylimiterprocessor/go.sum @@ -65,8 +65,8 @@ github.com/prometheus/common v0.59.1 h1:LXb1quJHWm1P6wq/U824uxYi4Sg0oGvNeUm1z5dJ github.com/prometheus/common v0.59.1/go.mod h1:GpWM7dewqmVYcd7SmRaiWVe9SSqjf0UrwnYnpEZNuT0= github.com/prometheus/procfs v0.15.1 h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0learggepc= github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk= -github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ= -github.com/rogpeppe/go-internal v1.10.0/go.mod h1:UQnix2H7Ngw/k4C5ijL5+65zddjncjaFoBhdsK/akog= +github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= +github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= github.com/shirou/gopsutil/v4 v4.24.8 h1:pVQjIenQkIhqO81mwTaXjTzOMT7d3TZkf43PlVFHENI= github.com/shirou/gopsutil/v4 v4.24.8/go.mod h1:wE0OrJtj4dG+hYkxqDH3QiBICdKSf04/npcvLLc/oRg= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= diff --git a/processor/processorhelper/obsreport.go b/processor/processorhelper/obsreport.go index 05f485c3093..158b590cfc4 100644 --- a/processor/processorhelper/obsreport.go +++ b/processor/processorhelper/obsreport.go @@ -11,8 +11,8 @@ import ( "go.opentelemetry.io/otel/metric" "go.opentelemetry.io/collector/component" - "go.opentelemetry.io/collector/internal/obsreportconfig/obsmetrics" "go.opentelemetry.io/collector/processor" + "go.opentelemetry.io/collector/processor/internal" "go.opentelemetry.io/collector/processor/processorhelper/internal/metadata" ) @@ -20,14 +20,14 @@ import ( // the standards used in the Collector. The configType should be the same // value used to identify the type on the config. func BuildCustomMetricName(configType, metric string) string { - componentPrefix := obsmetrics.ProcessorMetricPrefix - if !strings.HasSuffix(componentPrefix, obsmetrics.MetricNameSep) { - componentPrefix += obsmetrics.MetricNameSep + componentPrefix := internal.ProcessorMetricPrefix + if !strings.HasSuffix(componentPrefix, internal.MetricNameSep) { + componentPrefix += internal.MetricNameSep } if configType == "" { return componentPrefix } - return componentPrefix + configType + obsmetrics.MetricNameSep + metric + return componentPrefix + configType + internal.MetricNameSep + metric } // ObsReport is a helper to add observability to a processor. @@ -54,7 +54,7 @@ func newObsReport(cfg ObsReportSettings) (*ObsReport, error) { } return &ObsReport{ otelAttrs: []attribute.KeyValue{ - attribute.String(obsmetrics.ProcessorKey, cfg.ProcessorID.String()), + attribute.String(internal.ProcessorKey, cfg.ProcessorID.String()), }, telemetryBuilder: telemetryBuilder, }, nil diff --git a/processor/processorhelper/processor.go b/processor/processorhelper/processor.go index 8bdaa4fbf73..de0c00fb7d2 100644 --- a/processor/processorhelper/processor.go +++ b/processor/processorhelper/processor.go @@ -13,7 +13,7 @@ import ( "go.opentelemetry.io/collector/component" "go.opentelemetry.io/collector/consumer" - "go.opentelemetry.io/collector/internal/obsreportconfig/obsmetrics" + "go.opentelemetry.io/collector/processor/internal" ) // ErrSkipProcessingData is a sentinel value to indicate when traces or metrics should intentionally be dropped @@ -69,5 +69,5 @@ func fromOptions(options []Option) *baseSettings { } func spanAttributes(id component.ID) trace.EventOption { - return trace.WithAttributes(attribute.String(obsmetrics.ProcessorKey, id.String())) + return trace.WithAttributes(attribute.String(internal.ProcessorKey, id.String())) } diff --git a/processor/processorprofiles/go.mod b/processor/processorprofiles/go.mod index d1d9b43eb09..558c291fc7e 100644 --- a/processor/processorprofiles/go.mod +++ b/processor/processorprofiles/go.mod @@ -39,24 +39,18 @@ replace go.opentelemetry.io/collector/processor => ../ replace go.opentelemetry.io/collector/config/configtelemetry => ../../config/configtelemetry -replace go.opentelemetry.io/collector => ../.. - replace go.opentelemetry.io/collector/pdata/pprofile => ../../pdata/pprofile replace go.opentelemetry.io/collector/consumer => ../../consumer replace go.opentelemetry.io/collector/pdata/testdata => ../../pdata/testdata -replace go.opentelemetry.io/collector/confmap => ../../confmap - replace go.opentelemetry.io/collector/component => ../../component replace go.opentelemetry.io/collector/pdata => ../../pdata replace go.opentelemetry.io/collector/consumer/consumerprofiles => ../../consumer/consumerprofiles -replace go.opentelemetry.io/collector/featuregate => ../../featuregate - replace go.opentelemetry.io/collector/consumer/consumertest => ../../consumer/consumertest replace go.opentelemetry.io/collector/component/componentstatus => ../../component/componentstatus diff --git a/receiver/go.mod b/receiver/go.mod index 1b0247f7dac..4a3b2b2f7ee 100644 --- a/receiver/go.mod +++ b/receiver/go.mod @@ -5,7 +5,6 @@ go 1.22.0 require ( github.com/google/uuid v1.6.0 github.com/stretchr/testify v1.9.0 - go.opentelemetry.io/collector v0.109.0 go.opentelemetry.io/collector/component v0.109.0 go.opentelemetry.io/collector/config/configtelemetry v0.109.0 go.opentelemetry.io/collector/consumer v0.109.0 @@ -51,22 +50,14 @@ require ( gopkg.in/yaml.v3 v3.0.1 // indirect ) -replace go.opentelemetry.io/collector => ../ - replace go.opentelemetry.io/collector/component => ../component -replace go.opentelemetry.io/collector/confmap => ../confmap - replace go.opentelemetry.io/collector/consumer => ../consumer -replace go.opentelemetry.io/collector/featuregate => ../featuregate - replace go.opentelemetry.io/collector/pdata => ../pdata replace go.opentelemetry.io/collector/pdata/testdata => ../pdata/testdata -retract v0.76.0 // Depends on retracted pdata v1.0.0-rc10 module - replace go.opentelemetry.io/collector/config/configtelemetry => ../config/configtelemetry replace go.opentelemetry.io/collector/pdata/pprofile => ../pdata/pprofile @@ -75,6 +66,6 @@ replace go.opentelemetry.io/collector/consumer/consumerprofiles => ../consumer/c replace go.opentelemetry.io/collector/consumer/consumertest => ../consumer/consumertest -replace go.opentelemetry.io/collector/component/componentstatus => ../component/componentstatus - replace go.opentelemetry.io/collector/receiver/receiverprofiles => ./receiverprofiles + +retract v0.76.0 // Depends on retracted pdata v1.0.0-rc10 module diff --git a/internal/obsreportconfig/obsmetrics/obs_receiver.go b/receiver/internal/obsmetrics.go similarity index 67% rename from internal/obsreportconfig/obsmetrics/obs_receiver.go rename to receiver/internal/obsmetrics.go index bcb6306f81b..7a4ba33de32 100644 --- a/internal/obsreportconfig/obsmetrics/obs_receiver.go +++ b/receiver/internal/obsmetrics.go @@ -1,9 +1,12 @@ // Copyright The OpenTelemetry Authors // SPDX-License-Identifier: Apache-2.0 -package obsmetrics // import "go.opentelemetry.io/collector/internal/obsreportconfig/obsmetrics" +package internal // import "go.opentelemetry.io/collector/receiver/internal" const ( + // SpanNameSep is duplicate between receiver and exporter. + SpanNameSep = "/" + // ReceiverKey used to identify receivers in metrics and traces. ReceiverKey = "receiver" // TransportKey used to identify the transport used to received the data. @@ -27,11 +30,20 @@ const ( // RefusedLogRecordsKey used to identify log records refused (ie.: not ingested) by the // Collector. RefusedLogRecordsKey = "refused_log_records" -) -var ( + // ScraperKey used to identify scrapers in metrics and traces. + ScraperKey = "scraper" + + // ScrapedMetricPointsKey used to identify metric points scraped by the + // Collector. + ScrapedMetricPointsKey = "scraped_metric_points" + // ErroredMetricPointsKey used to identify metric points errored (i.e. + // unable to be scraped) by the Collector. + ErroredMetricPointsKey = "errored_metric_points" + ScraperPrefix = ScraperKey + SpanNameSep + ScraperMetricsOperationSuffix = SpanNameSep + "MetricsScraped" + ReceiverPrefix = ReceiverKey + SpanNameSep - ReceiverMetricPrefix = ReceiverKey + MetricNameSep ReceiveTraceDataOperationSuffix = SpanNameSep + "TraceDataReceived" ReceiverMetricsOperationSuffix = SpanNameSep + "MetricsReceived" ReceiverLogsOperationSuffix = SpanNameSep + "LogsReceived" diff --git a/receiver/nopreceiver/go.mod b/receiver/nopreceiver/go.mod index 4f1a7448a1f..80857581489 100644 --- a/receiver/nopreceiver/go.mod +++ b/receiver/nopreceiver/go.mod @@ -72,16 +72,10 @@ replace go.opentelemetry.io/collector/pdata/testdata => ../../pdata/testdata replace go.opentelemetry.io/collector/config/configtelemetry => ../../config/configtelemetry -replace go.opentelemetry.io/collector => ../.. - -replace go.opentelemetry.io/collector/featuregate => ../../featuregate - replace go.opentelemetry.io/collector/pdata/pprofile => ../../pdata/pprofile replace go.opentelemetry.io/collector/consumer/consumerprofiles => ../../consumer/consumerprofiles replace go.opentelemetry.io/collector/consumer/consumertest => ../../consumer/consumertest -replace go.opentelemetry.io/collector/component/componentstatus => ../../component/componentstatus - replace go.opentelemetry.io/collector/receiver/receiverprofiles => ../receiverprofiles diff --git a/receiver/otlpreceiver/factory.go b/receiver/otlpreceiver/factory.go index 22181929879..8ba2e6d9092 100644 --- a/receiver/otlpreceiver/factory.go +++ b/receiver/otlpreceiver/factory.go @@ -5,13 +5,14 @@ package otlpreceiver // import "go.opentelemetry.io/collector/receiver/otlprecei import ( "context" + "fmt" "go.opentelemetry.io/collector/component" "go.opentelemetry.io/collector/config/configgrpc" "go.opentelemetry.io/collector/config/confighttp" "go.opentelemetry.io/collector/config/confignet" "go.opentelemetry.io/collector/consumer" - "go.opentelemetry.io/collector/internal/localhostgate" + "go.opentelemetry.io/collector/internal/globalgates" "go.opentelemetry.io/collector/internal/sharedcomponent" "go.opentelemetry.io/collector/receiver" "go.opentelemetry.io/collector/receiver/otlpreceiver/internal/metadata" @@ -43,7 +44,7 @@ func createDefaultConfig() component.Config { Protocols: Protocols{ GRPC: &configgrpc.ServerConfig{ NetAddr: confignet.AddrConfig{ - Endpoint: localhostgate.EndpointForPort(grpcPort), + Endpoint: endpointForPort(globalgates.UseLocalHostAsDefaultHostfeatureGate.IsEnabled(), grpcPort), Transport: confignet.TransportTypeTCP, }, // We almost write 0 bytes, so no need to tune WriteBufferSize. @@ -51,7 +52,7 @@ func createDefaultConfig() component.Config { }, HTTP: &HTTPConfig{ ServerConfig: &confighttp.ServerConfig{ - Endpoint: localhostgate.EndpointForPort(httpPort), + Endpoint: endpointForPort(globalgates.UseLocalHostAsDefaultHostfeatureGate.IsEnabled(), httpPort), }, TracesURLPath: defaultTracesURLPath, MetricsURLPath: defaultMetricsURLPath, @@ -137,3 +138,12 @@ func createLog( // When the receiver is shutdown it should be removed from this map so the same configuration // can be recreated successfully. var receivers = sharedcomponent.NewMap[*Config, *otlpReceiver]() + +// endpointForPort gets the endpoint for a given port using localhost or 0.0.0.0 depending on the feature gate. +func endpointForPort(useLocalHostAsDefault bool, port int) string { + host := "localhost" + if !useLocalHostAsDefault { + host = "0.0.0.0" + } + return fmt.Sprintf("%s:%d", host, port) +} diff --git a/receiver/otlpreceiver/factory_test.go b/receiver/otlpreceiver/factory_test.go index 02a6bf63a76..530c61548c3 100644 --- a/receiver/otlpreceiver/factory_test.go +++ b/receiver/otlpreceiver/factory_test.go @@ -331,3 +331,38 @@ func TestCreateLogReceiver(t *testing.T) { }) } } + +func TestEndpointForPort(t *testing.T) { + tests := []struct { + port int + enabled bool + endpoint string + }{ + { + port: 4317, + enabled: false, + endpoint: "0.0.0.0:4317", + }, + { + port: 4317, + enabled: true, + endpoint: "localhost:4317", + }, + { + port: 0, + enabled: false, + endpoint: "0.0.0.0:0", + }, + { + port: 0, + enabled: true, + endpoint: "localhost:0", + }, + } + + for _, tt := range tests { + t.Run(tt.endpoint, func(t *testing.T) { + assert.Equal(t, endpointForPort(tt.enabled, tt.port), tt.endpoint) + }) + } +} diff --git a/receiver/otlpreceiver/go.mod b/receiver/otlpreceiver/go.mod index 28955e236bb..40182efcd8a 100644 --- a/receiver/otlpreceiver/go.mod +++ b/receiver/otlpreceiver/go.mod @@ -17,6 +17,7 @@ require ( go.opentelemetry.io/collector/confmap v1.15.0 go.opentelemetry.io/collector/consumer v0.109.0 go.opentelemetry.io/collector/consumer/consumertest v0.109.0 + go.opentelemetry.io/collector/internal/globalgates v0.109.0 go.opentelemetry.io/collector/pdata v1.15.0 go.opentelemetry.io/collector/pdata/testdata v0.109.0 go.opentelemetry.io/collector/receiver v0.109.0 @@ -29,7 +30,6 @@ require ( require ( github.com/beorn7/perks v1.0.1 // indirect - github.com/cenkalti/backoff/v4 v4.3.0 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/davecgh/go-spew v1.1.1 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect @@ -39,7 +39,6 @@ require ( github.com/go-viper/mapstructure/v2 v2.1.0 // indirect github.com/golang/snappy v0.0.4 // indirect github.com/google/uuid v1.6.0 // indirect - github.com/grpc-ecosystem/grpc-gateway/v2 v2.22.0 // indirect github.com/hashicorp/go-version v1.7.0 // indirect github.com/json-iterator/go v1.1.12 // indirect github.com/knadh/koanf/maps v0.1.1 // indirect @@ -68,32 +67,18 @@ require ( go.opentelemetry.io/collector/featuregate v1.15.0 // indirect go.opentelemetry.io/collector/pdata/pprofile v0.109.0 // indirect go.opentelemetry.io/collector/receiver/receiverprofiles v0.109.0 // indirect - go.opentelemetry.io/contrib/config v0.9.0 // indirect go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.54.0 // indirect go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.54.0 // indirect go.opentelemetry.io/otel v1.30.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.5.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.29.0 // indirect go.opentelemetry.io/otel/exporters/prometheus v0.52.0 // indirect - go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.5.0 // indirect - go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.29.0 // indirect - go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.29.0 // indirect - go.opentelemetry.io/otel/log v0.5.0 // indirect go.opentelemetry.io/otel/metric v1.30.0 // indirect go.opentelemetry.io/otel/sdk v1.30.0 // indirect - go.opentelemetry.io/otel/sdk/log v0.5.0 // indirect go.opentelemetry.io/otel/sdk/metric v1.30.0 // indirect go.opentelemetry.io/otel/trace v1.30.0 // indirect - go.opentelemetry.io/proto/otlp v1.3.1 // indirect go.uber.org/multierr v1.11.0 // indirect golang.org/x/net v0.29.0 // indirect golang.org/x/sys v0.25.0 // indirect golang.org/x/text v0.18.0 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20240822170219-fc7c04adadcd // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) @@ -127,6 +112,8 @@ replace go.opentelemetry.io/collector/extension/auth => ../../extension/auth replace go.opentelemetry.io/collector/featuregate => ../../featuregate +replace go.opentelemetry.io/collector/internal/globalgates => ../../internal/globalgates + replace go.opentelemetry.io/collector/pdata => ../../pdata replace go.opentelemetry.io/collector/pdata/testdata => ../../pdata/testdata @@ -135,11 +122,6 @@ replace go.opentelemetry.io/collector/receiver => ../ replace go.opentelemetry.io/collector/consumer => ../../consumer -retract ( - v0.76.0 // Depends on retracted pdata v1.0.0-rc10 module, use v0.76.1 - v0.69.0 // Release failed, use v0.69.1 -) - replace go.opentelemetry.io/collector/pdata/pprofile => ../../pdata/pprofile replace go.opentelemetry.io/collector/consumer/consumerprofiles => ../../consumer/consumerprofiles @@ -151,3 +133,8 @@ replace go.opentelemetry.io/collector/client => ../../client replace go.opentelemetry.io/collector/component/componentstatus => ../../component/componentstatus replace go.opentelemetry.io/collector/receiver/receiverprofiles => ../receiverprofiles + +retract ( + v0.76.0 // Depends on retracted pdata v1.0.0-rc10 module, use v0.76.1 + v0.69.0 // Release failed, use v0.69.1 +) diff --git a/receiver/otlpreceiver/go.sum b/receiver/otlpreceiver/go.sum index 1c675b1c8c1..89ec05c98f8 100644 --- a/receiver/otlpreceiver/go.sum +++ b/receiver/otlpreceiver/go.sum @@ -1,7 +1,5 @@ github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= -github.com/cenkalti/backoff/v4 v4.3.0 h1:MyRJ/UdXutAwSAT+s3wNd7MfTIcy71VQueUuFK343L8= -github.com/cenkalti/backoff/v4 v4.3.0/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= @@ -27,8 +25,6 @@ github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeN github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/grpc-ecosystem/grpc-gateway/v2 v2.22.0 h1:asbCHRVmodnJTuQ3qamDwqVOIjwqUPTYmYuemVOx+Ys= -github.com/grpc-ecosystem/grpc-gateway/v2 v2.22.0/go.mod h1:ggCgvZ2r7uOoQjOyu2Y1NhHmEPPzzuhWgcza5M1Ji1I= github.com/hashicorp/go-version v1.7.0 h1:5tqGy27NaOTB8yJKUZELlFAS/LTKJkrmONwQKeRZfjY= github.com/hashicorp/go-version v1.7.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= @@ -82,48 +78,22 @@ github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsT github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -go.opentelemetry.io/contrib/config v0.9.0 h1:AJ1c6+vJ6SxvqBBhsi2RhLFMlc6SnJOg81Jp4toFyNw= -go.opentelemetry.io/contrib/config v0.9.0/go.mod h1:u/u2L6y/c8GKrq/AP51sfXV4Eu24btVlC3A5f867xwg= go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.54.0 h1:r6I7RJCN86bpD/FQwedZ0vSixDpwuWREjW9oRMsmqDc= go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.54.0/go.mod h1:B9yO6b04uB80CzjedvewuqDhxJxi11s7/GtiGa8bAjI= go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.54.0 h1:TT4fX+nBOA/+LUkobKGW1ydGcn+G3vRw9+g5HwCphpk= go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.54.0/go.mod h1:L7UH0GbB0p47T4Rri3uHjbpCFYrVrwc1I25QhNPiGK8= go.opentelemetry.io/otel v1.30.0 h1:F2t8sK4qf1fAmY9ua4ohFS/K+FUuOPemHUIXHtktrts= go.opentelemetry.io/otel v1.30.0/go.mod h1:tFw4Br9b7fOS+uEao81PJjVMjW/5fvNCbpsDIXqP0pc= -go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.5.0 h1:4d++HQ+Ihdl+53zSjtsCUFDmNMju2FC9qFkUlTxPLqo= -go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.5.0/go.mod h1:mQX5dTO3Mh5ZF7bPKDkt5c/7C41u/SiDr9XgTpzXXn8= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.29.0 h1:k6fQVDQexDE+3jG2SfCQjnHS7OamcP73YMoxEVq5B6k= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.29.0/go.mod h1:t4BrYLHU450Zo9fnydWlIuswB1bm7rM8havDpWOJeDo= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.29.0 h1:xvhQxJ/C9+RTnAj5DpTg7LSM1vbbMTiXt7e9hsfqHNw= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.29.0/go.mod h1:Fcvs2Bz1jkDM+Wf5/ozBGmi3tQ/c9zPKLnsipnfhGAo= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.29.0 h1:dIIDULZJpgdiHz5tXrTgKIMLkus6jEFa7x5SOKcyR7E= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.29.0/go.mod h1:jlRVBe7+Z1wyxFSUs48L6OBQZ5JwH2Hg/Vbl+t9rAgI= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.29.0 h1:nSiV3s7wiCam610XcLbYOmMfJxB9gO4uK3Xgv5gmTgg= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.29.0/go.mod h1:hKn/e/Nmd19/x1gvIHwtOwVWM+VhuITSWip3JUDghj0= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.29.0 h1:JAv0Jwtl01UFiyWZEMiJZBiTlv5A50zNs8lsthXqIio= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.29.0/go.mod h1:QNKLmUEAq2QUbPQUfvw4fmv0bgbK7UlOSFCnXyfvSNc= go.opentelemetry.io/otel/exporters/prometheus v0.52.0 h1:kmU3H0b9ufFSi8IQCcxack+sWUblKkFbqWYs6YiACGQ= go.opentelemetry.io/otel/exporters/prometheus v0.52.0/go.mod h1:+wsAp2+JhuGXX7YRkjlkx6hyWY3ogFPfNA4x3nyiAh0= -go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.5.0 h1:ThVXnEsdwNcxdBO+r96ci1xbF+PgNjwlk457VNuJODo= -go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.5.0/go.mod h1:rHWcSmC4q2h3gje/yOq6sAOaq8+UHxN/Ru3BbmDXOfY= -go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.29.0 h1:WDdP9acbMYjbKIyJUhTvtzj601sVJOqgWdUxSdR/Ysc= -go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.29.0/go.mod h1:BLbf7zbNIONBLPwvFnwNHGj4zge8uTCM/UPIVW1Mq2I= -go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.29.0 h1:X3ZjNp36/WlkSYx0ul2jw4PtbNEDDeLskw3VPsrpYM0= -go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.29.0/go.mod h1:2uL/xnOXh0CHOBFCWXz5u1A4GXLiW+0IQIzVbeOEQ0U= -go.opentelemetry.io/otel/log v0.5.0 h1:x1Pr6Y3gnXgl1iFBwtGy1W/mnzENoK0w0ZoaeOI3i30= -go.opentelemetry.io/otel/log v0.5.0/go.mod h1:NU/ozXeGuOR5/mjCRXYbTC00NFJ3NYuraV/7O78F0rE= go.opentelemetry.io/otel/metric v1.30.0 h1:4xNulvn9gjzo4hjg+wzIKG7iNFEaBMX00Qd4QIZs7+w= go.opentelemetry.io/otel/metric v1.30.0/go.mod h1:aXTfST94tswhWEb+5QjlSqG+cZlmyXy/u8jFpor3WqQ= go.opentelemetry.io/otel/sdk v1.30.0 h1:cHdik6irO49R5IysVhdn8oaiR9m8XluDaJAs4DfOrYE= go.opentelemetry.io/otel/sdk v1.30.0/go.mod h1:p14X4Ok8S+sygzblytT1nqG98QG2KYKv++HE0LY/mhg= -go.opentelemetry.io/otel/sdk/log v0.5.0 h1:A+9lSjlZGxkQOr7QSBJcuyyYBw79CufQ69saiJLey7o= -go.opentelemetry.io/otel/sdk/log v0.5.0/go.mod h1:zjxIW7sw1IHolZL2KlSAtrUi8JHttoeiQy43Yl3WuVQ= go.opentelemetry.io/otel/sdk/metric v1.30.0 h1:QJLT8Pe11jyHBHfSAgYH7kEmT24eX792jZO1bo4BXkM= go.opentelemetry.io/otel/sdk/metric v1.30.0/go.mod h1:waS6P3YqFNzeP01kuo/MBBYqaoBJl7efRQHOaydhy1Y= go.opentelemetry.io/otel/trace v1.30.0 h1:7UBkkYzeg3C7kQX8VAidWh2biiQbtAKjyIML8dQ9wmc= go.opentelemetry.io/otel/trace v1.30.0/go.mod h1:5EyKqTzzmyqB9bwtCCq6pDLktPK6fmGf/Dph+8VI02o= -go.opentelemetry.io/proto/otlp v1.3.1 h1:TrMUixzpM0yuc/znrFTP9MMRh8trP93mkCiDVeXrui0= -go.opentelemetry.io/proto/otlp v1.3.1/go.mod h1:0X1WI4de4ZsLrrJNLAQbFeLCm3T7yBkR0XqQ7niQU+8= go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= @@ -161,8 +131,6 @@ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8T golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -google.golang.org/genproto/googleapis/api v0.0.0-20240822170219-fc7c04adadcd h1:BBOTEWLuuEGQy9n1y9MhVJ9Qt0BDu21X8qZs71/uPZo= -google.golang.org/genproto/googleapis/api v0.0.0-20240822170219-fc7c04adadcd/go.mod h1:fO8wJzT2zbQbAjbIoos1285VfEIYKDDY+Dt+WpTkh6g= google.golang.org/genproto/googleapis/rpc v0.0.0-20240822170219-fc7c04adadcd h1:6TEm2ZxXoQmFWFlt1vNxvVOa1Q0dXFQD1m/rYjXmS0E= google.golang.org/genproto/googleapis/rpc v0.0.0-20240822170219-fc7c04adadcd/go.mod h1:UqMtugtsSgubUsoxbuAoiCXvqvErP7Gf0so0mK9tHxU= google.golang.org/grpc v1.66.0 h1:DibZuoBznOxbDQxRINckZcUvnCEvrW9pcWIE2yF9r1c= diff --git a/receiver/receiverhelper/obsreport.go b/receiver/receiverhelper/obsreport.go index b998a315062..790adb60f4c 100644 --- a/receiver/receiverhelper/obsreport.go +++ b/receiver/receiverhelper/obsreport.go @@ -14,8 +14,8 @@ import ( "go.opentelemetry.io/otel/trace" "go.opentelemetry.io/collector/component" - "go.opentelemetry.io/collector/internal/obsreportconfig/obsmetrics" "go.opentelemetry.io/collector/receiver" + "go.opentelemetry.io/collector/receiver/internal" "go.opentelemetry.io/collector/receiver/receiverhelper/internal/metadata" ) @@ -54,14 +54,14 @@ func newReceiver(cfg ObsReportSettings) (*ObsReport, error) { return nil, err } return &ObsReport{ - spanNamePrefix: obsmetrics.ReceiverPrefix + cfg.ReceiverID.String(), + spanNamePrefix: internal.ReceiverPrefix + cfg.ReceiverID.String(), transport: cfg.Transport, longLivedCtx: cfg.LongLivedCtx, tracer: cfg.ReceiverCreateSettings.TracerProvider.Tracer(cfg.ReceiverID.String()), otelAttrs: []attribute.KeyValue{ - attribute.String(obsmetrics.ReceiverKey, cfg.ReceiverID.String()), - attribute.String(obsmetrics.TransportKey, cfg.Transport), + attribute.String(internal.ReceiverKey, cfg.ReceiverID.String()), + attribute.String(internal.TransportKey, cfg.Transport), }, telemetryBuilder: telemetryBuilder, }, nil @@ -71,7 +71,7 @@ func newReceiver(cfg ObsReportSettings) (*ObsReport, error) { // The returned context should be used in other calls to the obsreport functions // dealing with the same receive operation. func (rec *ObsReport) StartTracesOp(operationCtx context.Context) context.Context { - return rec.startOp(operationCtx, obsmetrics.ReceiveTraceDataOperationSuffix) + return rec.startOp(operationCtx, internal.ReceiveTraceDataOperationSuffix) } // EndTracesOp completes the receive operation that was started with @@ -89,7 +89,7 @@ func (rec *ObsReport) EndTracesOp( // The returned context should be used in other calls to the obsreport functions // dealing with the same receive operation. func (rec *ObsReport) StartLogsOp(operationCtx context.Context) context.Context { - return rec.startOp(operationCtx, obsmetrics.ReceiverLogsOperationSuffix) + return rec.startOp(operationCtx, internal.ReceiverLogsOperationSuffix) } // EndLogsOp completes the receive operation that was started with @@ -107,7 +107,7 @@ func (rec *ObsReport) EndLogsOp( // The returned context should be used in other calls to the obsreport functions // dealing with the same receive operation. func (rec *ObsReport) StartMetricsOp(operationCtx context.Context) context.Context { - return rec.startOp(operationCtx, obsmetrics.ReceiverMetricsOperationSuffix) + return rec.startOp(operationCtx, internal.ReceiverMetricsOperationSuffix) } // EndMetricsOp completes the receive operation that was started with @@ -141,7 +141,7 @@ func (rec *ObsReport) startOp(receiverCtx context.Context, operationSuffix strin } if rec.transport != "" { - span.SetAttributes(attribute.String(obsmetrics.TransportKey, rec.transport)) + span.SetAttributes(attribute.String(internal.TransportKey, rec.transport)) } return ctx } @@ -170,18 +170,18 @@ func (rec *ObsReport) endOp( var acceptedItemsKey, refusedItemsKey string switch dataType { case component.DataTypeTraces: - acceptedItemsKey = obsmetrics.AcceptedSpansKey - refusedItemsKey = obsmetrics.RefusedSpansKey + acceptedItemsKey = internal.AcceptedSpansKey + refusedItemsKey = internal.RefusedSpansKey case component.DataTypeMetrics: - acceptedItemsKey = obsmetrics.AcceptedMetricPointsKey - refusedItemsKey = obsmetrics.RefusedMetricPointsKey + acceptedItemsKey = internal.AcceptedMetricPointsKey + refusedItemsKey = internal.RefusedMetricPointsKey case component.DataTypeLogs: - acceptedItemsKey = obsmetrics.AcceptedLogRecordsKey - refusedItemsKey = obsmetrics.RefusedLogRecordsKey + acceptedItemsKey = internal.AcceptedLogRecordsKey + refusedItemsKey = internal.RefusedLogRecordsKey } span.SetAttributes( - attribute.String(obsmetrics.FormatKey, format), + attribute.String(internal.FormatKey, format), attribute.Int64(acceptedItemsKey, int64(numAccepted)), attribute.Int64(refusedItemsKey, int64(numRefused)), ) diff --git a/receiver/receiverhelper/obsreport_test.go b/receiver/receiverhelper/obsreport_test.go index adbb45959ff..105dcfe91c2 100644 --- a/receiver/receiverhelper/obsreport_test.go +++ b/receiver/receiverhelper/obsreport_test.go @@ -15,8 +15,8 @@ import ( "go.opentelemetry.io/collector/component" "go.opentelemetry.io/collector/component/componenttest" - "go.opentelemetry.io/collector/internal/obsreportconfig/obsmetrics" "go.opentelemetry.io/collector/receiver" + "go.opentelemetry.io/collector/receiver/internal" ) const ( @@ -65,13 +65,13 @@ func TestReceiveTraceDataOp(t *testing.T) { switch { case params[i].err == nil: acceptedSpans += params[i].items - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.AcceptedSpansKey, Value: attribute.Int64Value(int64(params[i].items))}) - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.RefusedSpansKey, Value: attribute.Int64Value(0)}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.AcceptedSpansKey, Value: attribute.Int64Value(int64(params[i].items))}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.RefusedSpansKey, Value: attribute.Int64Value(0)}) assert.Equal(t, codes.Unset, span.Status().Code) case errors.Is(params[i].err, errFake): refusedSpans += params[i].items - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.AcceptedSpansKey, Value: attribute.Int64Value(0)}) - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.RefusedSpansKey, Value: attribute.Int64Value(int64(params[i].items))}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.AcceptedSpansKey, Value: attribute.Int64Value(0)}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.RefusedSpansKey, Value: attribute.Int64Value(int64(params[i].items))}) assert.Equal(t, codes.Error, span.Status().Code) assert.Equal(t, params[i].err.Error(), span.Status().Description) default: @@ -113,13 +113,13 @@ func TestReceiveLogsOp(t *testing.T) { switch { case params[i].err == nil: acceptedLogRecords += params[i].items - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.AcceptedLogRecordsKey, Value: attribute.Int64Value(int64(params[i].items))}) - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.RefusedLogRecordsKey, Value: attribute.Int64Value(0)}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.AcceptedLogRecordsKey, Value: attribute.Int64Value(int64(params[i].items))}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.RefusedLogRecordsKey, Value: attribute.Int64Value(0)}) assert.Equal(t, codes.Unset, span.Status().Code) case errors.Is(params[i].err, errFake): refusedLogRecords += params[i].items - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.AcceptedLogRecordsKey, Value: attribute.Int64Value(0)}) - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.RefusedLogRecordsKey, Value: attribute.Int64Value(int64(params[i].items))}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.AcceptedLogRecordsKey, Value: attribute.Int64Value(0)}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.RefusedLogRecordsKey, Value: attribute.Int64Value(int64(params[i].items))}) assert.Equal(t, codes.Error, span.Status().Code) assert.Equal(t, params[i].err.Error(), span.Status().Description) default: @@ -161,13 +161,13 @@ func TestReceiveMetricsOp(t *testing.T) { switch { case params[i].err == nil: acceptedMetricPoints += params[i].items - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.AcceptedMetricPointsKey, Value: attribute.Int64Value(int64(params[i].items))}) - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.RefusedMetricPointsKey, Value: attribute.Int64Value(0)}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.AcceptedMetricPointsKey, Value: attribute.Int64Value(int64(params[i].items))}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.RefusedMetricPointsKey, Value: attribute.Int64Value(0)}) assert.Equal(t, codes.Unset, span.Status().Code) case errors.Is(params[i].err, errFake): refusedMetricPoints += params[i].items - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.AcceptedMetricPointsKey, Value: attribute.Int64Value(0)}) - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.RefusedMetricPointsKey, Value: attribute.Int64Value(int64(params[i].items))}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.AcceptedMetricPointsKey, Value: attribute.Int64Value(0)}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.RefusedMetricPointsKey, Value: attribute.Int64Value(int64(params[i].items))}) assert.Equal(t, codes.Error, span.Status().Code) assert.Equal(t, params[i].err.Error(), span.Status().Description) default: @@ -216,15 +216,15 @@ func TestReceiveWithLongLivedCtx(t *testing.T) { assert.Equal(t, parentSpan.SpanContext().TraceID(), link.SpanContext.TraceID()) assert.Equal(t, parentSpan.SpanContext().SpanID(), link.SpanContext.SpanID()) assert.Equal(t, "receiver/"+receiverID.String()+"/TraceDataReceived", span.Name()) - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.TransportKey, Value: attribute.StringValue(transport)}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.TransportKey, Value: attribute.StringValue(transport)}) switch { case params[i].err == nil: - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.AcceptedSpansKey, Value: attribute.Int64Value(int64(params[i].items))}) - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.RefusedSpansKey, Value: attribute.Int64Value(0)}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.AcceptedSpansKey, Value: attribute.Int64Value(int64(params[i].items))}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.RefusedSpansKey, Value: attribute.Int64Value(0)}) assert.Equal(t, codes.Unset, span.Status().Code) case errors.Is(params[i].err, errFake): - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.AcceptedSpansKey, Value: attribute.Int64Value(0)}) - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.RefusedSpansKey, Value: attribute.Int64Value(int64(params[i].items))}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.AcceptedSpansKey, Value: attribute.Int64Value(0)}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.RefusedSpansKey, Value: attribute.Int64Value(int64(params[i].items))}) assert.Equal(t, codes.Error, span.Status().Code) assert.Equal(t, params[i].err.Error(), span.Status().Description) default: diff --git a/receiver/receiverprofiles/go.mod b/receiver/receiverprofiles/go.mod index 48ee18bb28d..b6568bdc841 100644 --- a/receiver/receiverprofiles/go.mod +++ b/receiver/receiverprofiles/go.mod @@ -37,8 +37,6 @@ require ( replace go.opentelemetry.io/collector/receiver => ../ -replace go.opentelemetry.io/collector/confmap => ../../confmap - replace go.opentelemetry.io/collector/consumer => ../../consumer replace go.opentelemetry.io/collector/component => ../../component @@ -47,16 +45,10 @@ replace go.opentelemetry.io/collector/consumer/consumerprofiles => ../../consume replace go.opentelemetry.io/collector/config/configtelemetry => ../../config/configtelemetry -replace go.opentelemetry.io/collector => ../.. - replace go.opentelemetry.io/collector/pdata/testdata => ../../pdata/testdata -replace go.opentelemetry.io/collector/featuregate => ../../featuregate - replace go.opentelemetry.io/collector/pdata/pprofile => ../../pdata/pprofile replace go.opentelemetry.io/collector/pdata => ../../pdata replace go.opentelemetry.io/collector/consumer/consumertest => ../../consumer/consumertest - -replace go.opentelemetry.io/collector/component/componentstatus => ../../component/componentstatus diff --git a/receiver/scraperhelper/obsreport.go b/receiver/scraperhelper/obsreport.go index 4dfbdfd6ec8..6c950a21711 100644 --- a/receiver/scraperhelper/obsreport.go +++ b/receiver/scraperhelper/obsreport.go @@ -13,8 +13,8 @@ import ( "go.opentelemetry.io/otel/trace" "go.opentelemetry.io/collector/component" - "go.opentelemetry.io/collector/internal/obsreportconfig/obsmetrics" "go.opentelemetry.io/collector/receiver" + "go.opentelemetry.io/collector/receiver/internal" "go.opentelemetry.io/collector/receiver/scrapererror" "go.opentelemetry.io/collector/receiver/scraperhelper/internal/metadata" ) @@ -47,8 +47,8 @@ func newScraper(cfg obsReportSettings) (*obsReport, error) { tracer: cfg.ReceiverCreateSettings.TracerProvider.Tracer(cfg.Scraper.String()), otelAttrs: []attribute.KeyValue{ - attribute.String(obsmetrics.ReceiverKey, cfg.ReceiverID.String()), - attribute.String(obsmetrics.ScraperKey, cfg.Scraper.String()), + attribute.String(internal.ReceiverKey, cfg.ReceiverID.String()), + attribute.String(internal.ScraperKey, cfg.Scraper.String()), }, telemetryBuilder: telemetryBuilder, }, nil @@ -58,7 +58,7 @@ func newScraper(cfg obsReportSettings) (*obsReport, error) { // returned context should be used in other calls to the obsreport functions // dealing with the same scrape operation. func (s *obsReport) StartMetricsOp(ctx context.Context) context.Context { - spanName := obsmetrics.ScraperPrefix + s.receiverID.String() + obsmetrics.SpanNameSep + s.scraper.String() + obsmetrics.ScraperMetricsOperationSuffix + spanName := internal.ScraperPrefix + s.receiverID.String() + internal.SpanNameSep + s.scraper.String() + internal.ScraperMetricsOperationSuffix ctx, _ = s.tracer.Start(ctx, spanName) return ctx } @@ -88,9 +88,9 @@ func (s *obsReport) EndMetricsOp( // end span according to errors if span.IsRecording() { span.SetAttributes( - attribute.String(obsmetrics.FormatKey, component.DataTypeMetrics.String()), - attribute.Int64(obsmetrics.ScrapedMetricPointsKey, int64(numScrapedMetrics)), - attribute.Int64(obsmetrics.ErroredMetricPointsKey, int64(numErroredMetrics)), + attribute.String(internal.FormatKey, component.DataTypeMetrics.String()), + attribute.Int64(internal.ScrapedMetricPointsKey, int64(numScrapedMetrics)), + attribute.Int64(internal.ErroredMetricPointsKey, int64(numErroredMetrics)), ) if err != nil { diff --git a/receiver/scraperhelper/obsreport_test.go b/receiver/scraperhelper/obsreport_test.go index 6b469d728b7..e5927a1165e 100644 --- a/receiver/scraperhelper/obsreport_test.go +++ b/receiver/scraperhelper/obsreport_test.go @@ -15,8 +15,8 @@ import ( "go.opentelemetry.io/collector/component" "go.opentelemetry.io/collector/component/componenttest" - "go.opentelemetry.io/collector/internal/obsreportconfig/obsmetrics" "go.opentelemetry.io/collector/receiver" + "go.opentelemetry.io/collector/receiver/internal" "go.opentelemetry.io/collector/receiver/scrapererror" ) @@ -64,21 +64,21 @@ func TestScrapeMetricsDataOp(t *testing.T) { switch { case params[i].err == nil: scrapedMetricPoints += params[i].items - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.ScrapedMetricPointsKey, Value: attribute.Int64Value(int64(params[i].items))}) - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.ErroredMetricPointsKey, Value: attribute.Int64Value(0)}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.ScrapedMetricPointsKey, Value: attribute.Int64Value(int64(params[i].items))}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.ErroredMetricPointsKey, Value: attribute.Int64Value(0)}) assert.Equal(t, codes.Unset, span.Status().Code) case errors.Is(params[i].err, errFake): erroredMetricPoints += params[i].items - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.ScrapedMetricPointsKey, Value: attribute.Int64Value(0)}) - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.ErroredMetricPointsKey, Value: attribute.Int64Value(int64(params[i].items))}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.ScrapedMetricPointsKey, Value: attribute.Int64Value(0)}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.ErroredMetricPointsKey, Value: attribute.Int64Value(int64(params[i].items))}) assert.Equal(t, codes.Error, span.Status().Code) assert.Equal(t, params[i].err.Error(), span.Status().Description) case errors.Is(params[i].err, partialErrFake): scrapedMetricPoints += params[i].items erroredMetricPoints++ - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.ScrapedMetricPointsKey, Value: attribute.Int64Value(int64(params[i].items))}) - require.Contains(t, span.Attributes(), attribute.KeyValue{Key: obsmetrics.ErroredMetricPointsKey, Value: attribute.Int64Value(1)}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.ScrapedMetricPointsKey, Value: attribute.Int64Value(int64(params[i].items))}) + require.Contains(t, span.Attributes(), attribute.KeyValue{Key: internal.ErroredMetricPointsKey, Value: attribute.Int64Value(1)}) assert.Equal(t, codes.Error, span.Status().Code) assert.Equal(t, params[i].err.Error(), span.Status().Description) default: diff --git a/receiver/scraperhelper/scrapercontroller_test.go b/receiver/scraperhelper/scrapercontroller_test.go index 28965a10caa..5a459b7e514 100644 --- a/receiver/scraperhelper/scrapercontroller_test.go +++ b/receiver/scraperhelper/scrapercontroller_test.go @@ -384,7 +384,7 @@ func TestScrapeControllerStartsOnInit(t *testing.T) { assert.NoError(t, r.Start(context.Background(), componenttest.NewNopHost()), "Must not error on start") <-time.After(500 * time.Nanosecond) assert.NoError(t, r.Shutdown(context.Background()), "Must not have errored on shutdown") - assert.Equal(t, tsm.timesScrapeCalled, 1, "Must have been called as soon as the controller started") + assert.Equal(t, 1, tsm.timesScrapeCalled, "Must have been called as soon as the controller started") } func TestScrapeControllerInitialDelay(t *testing.T) { diff --git a/service/internal/builders/extension_test.go b/service/internal/builders/extension_test.go index 4baa3a8d193..153c094c29b 100644 --- a/service/internal/builders/extension_test.go +++ b/service/internal/builders/extension_test.go @@ -43,7 +43,7 @@ func TestExtensionBuilder(t *testing.T) { // Check that the extension has access to the resource attributes. nop, ok := e.(nopExtension) assert.True(t, ok) - assert.Equal(t, nop.Settings.Resource.Attributes().Len(), 0) + assert.Equal(t, 0, nop.Settings.Resource.Attributes().Len()) missingType, err := b.Create(context.Background(), createExtensionSettings(unknownID)) assert.EqualError(t, err, "extension factory not available for: \"unknown\"") diff --git a/service/internal/resource/config_test.go b/service/internal/resource/config_test.go index 38fcba1a139..950054132fa 100644 --- a/service/internal/resource/config_test.go +++ b/service/internal/resource/config_test.go @@ -124,7 +124,7 @@ func TestBuildResource(t *testing.T) { otelRes := New(buildInfo, resMap) res := pdataFromSdk(otelRes) - assert.Equal(t, res.Attributes().Len(), 3) + assert.Equal(t, 3, res.Attributes().Len()) value, ok := res.Attributes().Get(semconv.AttributeServiceName) assert.True(t, ok) assert.Equal(t, buildInfo.Command, value.AsString()) @@ -145,7 +145,7 @@ func TestBuildResource(t *testing.T) { res = pdataFromSdk(otelRes) // Attributes should not exist since we nil-ified all. - assert.Equal(t, res.Attributes().Len(), 0) + assert.Equal(t, 0, res.Attributes().Len()) // Check override values strPtr := func(v string) *string { return &v } @@ -157,7 +157,7 @@ func TestBuildResource(t *testing.T) { otelRes = New(buildInfo, resMap) res = pdataFromSdk(otelRes) - assert.Equal(t, res.Attributes().Len(), 3) + assert.Equal(t, 3, res.Attributes().Len()) value, ok = res.Attributes().Get(semconv.AttributeServiceName) assert.True(t, ok) assert.Equal(t, "a", value.AsString()) diff --git a/service/service.go b/service/service.go index d5efc90c675..29bd3d57e92 100644 --- a/service/service.go +++ b/service/service.go @@ -23,8 +23,8 @@ import ( "go.opentelemetry.io/collector/connector" "go.opentelemetry.io/collector/exporter" "go.opentelemetry.io/collector/extension" - "go.opentelemetry.io/collector/internal/localhostgate" - "go.opentelemetry.io/collector/internal/obsreportconfig" + "go.opentelemetry.io/collector/featuregate" + "go.opentelemetry.io/collector/internal/globalgates" "go.opentelemetry.io/collector/pdata/pcommon" "go.opentelemetry.io/collector/processor" "go.opentelemetry.io/collector/receiver" @@ -37,6 +37,22 @@ import ( "go.opentelemetry.io/collector/service/telemetry" ) +// useOtelWithSDKConfigurationForInternalTelemetryFeatureGate is the feature gate that controls whether the collector +// supports configuring the OpenTelemetry SDK via configuration +var useOtelWithSDKConfigurationForInternalTelemetryFeatureGate = featuregate.GlobalRegistry().MustRegister( + "telemetry.useOtelWithSDKConfigurationForInternalTelemetry", + featuregate.StageBeta, + featuregate.WithRegisterDescription("controls whether the collector supports extended OpenTelemetry"+ + "configuration for internal telemetry")) + +// disableHighCardinalityMetricsfeatureGate is the feature gate that controls whether the collector should enable +// potentially high cardinality metrics. The gate will be removed when the collector allows for view configuration. +var disableHighCardinalityMetricsfeatureGate = featuregate.GlobalRegistry().MustRegister( + "telemetry.disableHighCardinalityMetrics", + featuregate.StageAlpha, + featuregate.WithRegisterDescription("controls whether the collector should enable potentially high"+ + "cardinality metrics. The gate will be removed when the collector allows for view configuration.")) + // Settings holds configuration for building a new Service. type Settings struct { // BuildInfo provides collector start information. @@ -88,7 +104,7 @@ type Service struct { // New creates a new Service, its telemetry, and Components. func New(ctx context.Context, set Settings, cfg Config) (*Service, error) { - disableHighCard := obsreportconfig.DisableHighCardinalityMetricsfeatureGate.IsEnabled() + disableHighCard := disableHighCardinalityMetricsfeatureGate.IsEnabled() srv := &Service{ buildInfo: set.BuildInfo, @@ -173,10 +189,8 @@ func New(ctx context.Context, set Settings, cfg Config) (*Service, error) { return nil, err } - if cfg.Telemetry.Metrics.Level != configtelemetry.LevelNone && cfg.Telemetry.Metrics.Address != "" { - if err = proctelemetry.RegisterProcessMetrics(srv.telemetrySettings); err != nil { - return nil, fmt.Errorf("failed to register process metrics: %w", err) - } + if err = proctelemetry.RegisterProcessMetrics(srv.telemetrySettings); err != nil { + return nil, fmt.Errorf("failed to register process metrics: %w", err) } return srv, nil @@ -192,7 +206,7 @@ func logsAboutMeterProvider(logger *zap.Logger, cfg telemetry.MetricsConfig, mp return } - if len(cfg.Address) != 0 && obsreportconfig.UseOtelWithSDKConfigurationForInternalTelemetryFeatureGate.IsEnabled() { + if len(cfg.Address) != 0 && useOtelWithSDKConfigurationForInternalTelemetryFeatureGate.IsEnabled() { logger.Warn("service::telemetry::metrics::address is being deprecated in favor of service::telemetry::metrics::readers") } @@ -237,7 +251,7 @@ func (srv *Service) Start(ctx context.Context) error { } srv.telemetrySettings.Logger.Info("Everything is ready. Begin running and processing data.") - localhostgate.LogAboutUseLocalHostAsDefault(srv.telemetrySettings.Logger) + logAboutUseLocalHostAsDefault(srv.telemetrySettings.Logger) return nil } @@ -343,3 +357,13 @@ func pdataFromSdk(res *sdkresource.Resource) pcommon.Resource { } return pcommonRes } + +// logAboutUseLocalHostAsDefault logs about the upcoming change from 0.0.0.0 to localhost on server-like components. +func logAboutUseLocalHostAsDefault(logger *zap.Logger) { + if globalgates.UseLocalHostAsDefaultHostfeatureGate.IsEnabled() { + logger.Info( + "The default endpoints for all servers in components have changed to use localhost instead of 0.0.0.0. Disable the feature gate to temporarily revert to the previous default.", + zap.String("feature gate ID", globalgates.UseLocalHostAsDefaultHostID), + ) + } +} diff --git a/service/service_test.go b/service/service_test.go index a76e267490d..8ca370b00da 100644 --- a/service/service_test.go +++ b/service/service_test.go @@ -8,7 +8,9 @@ import ( "context" "errors" "fmt" + "net" "net/http" + "strconv" "strings" "sync" "testing" @@ -17,6 +19,7 @@ import ( "github.com/prometheus/common/expfmt" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" + "go.opentelemetry.io/contrib/config" "go.uber.org/zap" "go.uber.org/zap/zapcore" @@ -325,6 +328,87 @@ func testCollectorStartHelper(t *testing.T, tc ownMetricsTestCase, network strin } } +func TestServiceTelemetryWithReaders(t *testing.T) { + for _, tc := range ownMetricsTestCases() { + t.Run(fmt.Sprintf("ipv4_%s", tc.name), func(t *testing.T) { + testCollectorStartHelperWithReaders(t, tc, "tcp4") + }) + t.Run(fmt.Sprintf("ipv6_%s", tc.name), func(t *testing.T) { + testCollectorStartHelperWithReaders(t, tc, "tcp6") + }) + } +} + +func testCollectorStartHelperWithReaders(t *testing.T, tc ownMetricsTestCase, network string) { + var once sync.Once + loggingHookCalled := false + hook := func(zapcore.Entry) error { + once.Do(func() { + loggingHookCalled = true + }) + return nil + } + + var ( + metricsAddr *config.Prometheus + zpagesAddr string + ) + switch network { + case "tcp", "tcp4": + metricsAddr = getAvailableLocalAddressPrometheus(t) + zpagesAddr = testutil.GetAvailableLocalAddress(t) + case "tcp6": + metricsAddr = getAvailableLocalIPv6AddressPrometheus(t) + zpagesAddr = testutil.GetAvailableLocalIPv6Address(t) + } + require.NotZero(t, metricsAddr, "network must be either of tcp, tcp4 or tcp6") + require.NotZero(t, zpagesAddr, "network must be either of tcp, tcp4 or tcp6") + + set := newNopSettings() + set.BuildInfo = component.BuildInfo{Version: "test version", Command: otelCommand} + set.ExtensionsConfigs = map[component.ID]component.Config{ + component.MustNewID("zpages"): &zpagesextension.Config{ + ServerConfig: confighttp.ServerConfig{Endpoint: zpagesAddr}, + }, + } + set.ExtensionsFactories = map[component.Type]extension.Factory{component.MustNewType("zpages"): zpagesextension.NewFactory()} + set.LoggingOptions = []zap.Option{zap.Hooks(hook)} + + cfg := newNopConfig() + cfg.Extensions = []component.ID{component.MustNewID("zpages")} + cfg.Telemetry.Metrics.Address = "" + cfg.Telemetry.Metrics.Readers = []config.MetricReader{ + { + Pull: &config.PullMetricReader{ + Exporter: config.MetricExporter{ + Prometheus: metricsAddr, + }, + }, + }, + } + cfg.Telemetry.Resource = make(map[string]*string) + // Include resource attributes under the service::telemetry::resource key. + for k, v := range tc.userDefinedResource { + cfg.Telemetry.Resource[k] = v + } + + // Create a service, check for metrics, shutdown and repeat to ensure that telemetry can be started/shutdown and started again. + for i := 0; i < 2; i++ { + srv, err := New(context.Background(), set, cfg) + require.NoError(t, err) + + require.NoError(t, srv.Start(context.Background())) + // Sleep for 1 second to ensure the http server is started. + time.Sleep(1 * time.Second) + assert.True(t, loggingHookCalled) + + assertResourceLabels(t, srv.telemetrySettings.Resource, tc.expectedLabels) + assertMetrics(t, fmt.Sprintf("%s:%d", *metricsAddr.Host, *metricsAddr.Port), tc.expectedLabels) + assertZPages(t, zpagesAddr) + require.NoError(t, srv.Shutdown(context.Background())) + } +} + // TestServiceTelemetryRestart tests that the service correctly restarts the telemetry server. func TestServiceTelemetryRestart(t *testing.T) { // Create a service @@ -486,7 +570,20 @@ func assertMetrics(t *testing.T, metricsAddr string, expectedLabels map[string]l require.NoError(t, err) prefix := "otelcol" + expectedMetrics := map[string]bool{ + "target_info": false, + "otelcol_process_memory_rss": false, + "otelcol_process_cpu_seconds": false, + "otelcol_process_runtime_total_sys_memory_bytes": false, + "otelcol_process_runtime_heap_alloc_bytes": false, + "otelcol_process_runtime_total_alloc_bytes": false, + "otelcol_process_uptime": false, + } for metricName, metricFamily := range parsed { + if _, ok := expectedMetrics[metricName]; !ok { + require.True(t, ok, "unexpected metric: %s", metricName) + } + expectedMetrics[metricName] = true if metricName != "target_info" { // require is used here so test fails with a single message. require.True( @@ -516,6 +613,9 @@ func assertMetrics(t *testing.T, metricsAddr string, expectedLabels map[string]l } } } + for k, val := range expectedMetrics { + require.True(t, val, "missing metric: %s", k) + } } func assertZPages(t *testing.T, zpagesAddr string) { @@ -645,3 +745,26 @@ func newConfigWatcherExtensionFactory(name component.Type) extension.Factory { component.StabilityLevelDevelopment, ) } + +func getAvailableLocalIPv6AddressPrometheus(t testing.TB) *config.Prometheus { + return addrToPrometheus(testutil.GetAvailableLocalIPv6Address(t)) +} + +func getAvailableLocalAddressPrometheus(t testing.TB) *config.Prometheus { + return addrToPrometheus(testutil.GetAvailableLocalAddress(t)) +} + +func addrToPrometheus(address string) *config.Prometheus { + host, port, err := net.SplitHostPort(address) + if err != nil { + return nil + } + portInt, err := strconv.Atoi(port) + if err != nil { + return nil + } + return &config.Prometheus{ + Host: &host, + Port: &portInt, + } +} diff --git a/service/telemetry_test.go b/service/telemetry_test.go index a8a382c62ec..7c2cb6541d7 100644 --- a/service/telemetry_test.go +++ b/service/telemetry_test.go @@ -194,7 +194,7 @@ func TestTelemetryInit(t *testing.T) { { Pull: &config.PullMetricReader{ Exporter: config.MetricExporter{ - Prometheus: testutil.GetAvailableLocalAddressPrometheus(t), + Prometheus: getAvailableLocalAddressPrometheus(t), }, }, },