diff --git a/testbed/go.mod b/testbed/go.mod index 2bee2b55191e..582ae84a1cb0 100644 --- a/testbed/go.mod +++ b/testbed/go.mod @@ -31,6 +31,7 @@ require ( github.com/stretchr/testify v1.8.4 go.opentelemetry.io/collector v0.81.0 go.opentelemetry.io/collector/component v0.81.0 + go.opentelemetry.io/collector/config/configcompression v0.81.0 go.opentelemetry.io/collector/config/configgrpc v0.81.0 go.opentelemetry.io/collector/config/confighttp v0.81.0 go.opentelemetry.io/collector/config/confignet v0.81.0 @@ -212,7 +213,6 @@ require ( github.com/yusufpapurcu/wmi v1.2.3 // indirect go.opencensus.io v0.24.0 // indirect go.opentelemetry.io/collector/config/configauth v0.81.0 // indirect - go.opentelemetry.io/collector/config/configcompression v0.81.0 // indirect go.opentelemetry.io/collector/config/configopaque v0.81.0 // indirect go.opentelemetry.io/collector/config/configtelemetry v0.81.0 // indirect go.opentelemetry.io/collector/config/internal v0.81.0 // indirect diff --git a/testbed/testbed/mock_backend_test.go b/testbed/testbed/mock_backend_test.go index 92bc351330dd..d5493cbafb00 100644 --- a/testbed/testbed/mock_backend_test.go +++ b/testbed/testbed/mock_backend_test.go @@ -27,7 +27,7 @@ func TestGeneratorAndBackend(t *testing.T) { { name: "OTLP/HTTP-OTLP/HTTP", receiver: NewOTLPHTTPDataReceiver(port), - sender: NewOTLPHTTPTraceDataSender(DefaultHost, port), + sender: NewOTLPHTTPTraceDataSender(DefaultHost, port, ""), }, } diff --git a/testbed/testbed/senders.go b/testbed/testbed/senders.go index 2bc8691fc51d..1fca0860cedb 100644 --- a/testbed/testbed/senders.go +++ b/testbed/testbed/senders.go @@ -9,6 +9,7 @@ import ( "net" "go.opentelemetry.io/collector/component/componenttest" + "go.opentelemetry.io/collector/config/configcompression" "go.opentelemetry.io/collector/config/configtls" "go.opentelemetry.io/collector/consumer" "go.opentelemetry.io/collector/exporter/exportertest" @@ -77,6 +78,7 @@ func (dsb *DataSenderBase) Flush() { type otlpHTTPDataSender struct { DataSenderBase + compression configcompression.CompressionType } func (ods *otlpHTTPDataSender) fillConfig(cfg *otlphttpexporter.Config) *otlphttpexporter.Config { @@ -88,6 +90,7 @@ func (ods *otlpHTTPDataSender) fillConfig(cfg *otlphttpexporter.Config) *otlphtt cfg.TLSSetting = configtls.TLSClientSetting{ Insecure: true, } + cfg.Compression = ods.compression return cfg } @@ -111,13 +114,14 @@ type otlpHTTPTraceDataSender struct { } // NewOTLPHTTPTraceDataSender creates a new TraceDataSender for OTLP/HTTP traces exporter. -func NewOTLPHTTPTraceDataSender(host string, port int) TraceDataSender { +func NewOTLPHTTPTraceDataSender(host string, port int, compression configcompression.CompressionType) TraceDataSender { return &otlpHTTPTraceDataSender{ otlpHTTPDataSender: otlpHTTPDataSender{ DataSenderBase: DataSenderBase{ Port: port, Host: host, }, + compression: compression, }, } } diff --git a/testbed/tests/trace_test.go b/testbed/tests/trace_test.go index 161dc4631c12..5d060867ad95 100644 --- a/testbed/tests/trace_test.go +++ b/testbed/tests/trace_test.go @@ -75,7 +75,7 @@ func TestTrace10kSPS(t *testing.T) { }, { "OTLP-HTTP", - testbed.NewOTLPHTTPTraceDataSender(testbed.DefaultHost, testbed.GetAvailablePort(t)), + testbed.NewOTLPHTTPTraceDataSender(testbed.DefaultHost, testbed.GetAvailablePort(t), ""), testbed.NewOTLPHTTPDataReceiver(testbed.GetAvailablePort(t)), testbed.ResourceSpec{ ExpectedMaxCPU: 20, @@ -84,13 +84,22 @@ func TestTrace10kSPS(t *testing.T) { }, { "OTLP-HTTP-gzip", - testbed.NewOTLPHTTPTraceDataSender(testbed.DefaultHost, testbed.GetAvailablePort(t)), + testbed.NewOTLPHTTPTraceDataSender(testbed.DefaultHost, testbed.GetAvailablePort(t), "gzip"), testbed.NewOTLPHTTPDataReceiver(testbed.GetAvailablePort(t)).WithCompression("gzip"), testbed.ResourceSpec{ ExpectedMaxCPU: 25, ExpectedMaxRAM: 100, }, }, + { + "OTLP-HTTP-zstd", + testbed.NewOTLPHTTPTraceDataSender(testbed.DefaultHost, testbed.GetAvailablePort(t), "zstd"), + testbed.NewOTLPHTTPDataReceiver(testbed.GetAvailablePort(t)).WithCompression("zstd"), + testbed.ResourceSpec{ + ExpectedMaxCPU: 22, + ExpectedMaxRAM: 220, + }, + }, { "SAPM", datasenders.NewSapmDataSender(testbed.GetAvailablePort(t), ""),