integration

package
v1.56.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 3, 2024 License: Apache-2.0 Imports: 15 Imported by: 0

README

Integration

Jaeger v2 integration tests are built on top of OTEL Testbed module. OTEL Testbed provide comprehensive tools for conducting end-to-end tests for the OTEL Collector, such as reproducible short-term benchmarks, correctness tests, long-running stability tests and maximum load stress tests. However, we only utilize the correctness tests from testbed, it generates and sends every combinatorial trace attributes and matches every single of them with the received traces from another end. To learn more about OTEL Testbed, please refer to the their README.

Architecture

Here's the architecture to test the OpenTelemetry Collector pipeline from end-to-end with the designated storage backends. integration diagram

Testbed components:

Component Description
LoadGenerator Encapsulates DataProvider and DataSender in order to generate and send data.
Golden DataProvider Generates traces from the "Golden" dataset generated using pairwise combinatorial testing techniques. Testbed example uses PICT to generate the test data, e.g. testdata.
OTLP Trace DataSender With the generated traces from DataProvider, the DataSender sends traces to OTLP receiver in the collector instance.
Mockbackend Encapsulates DataReceiver and provides consume functionality.
DataReceiver A custom DataReceiver that will host a Jaeger storage extension to retrieve traces from the database by pulling them using our artificial Jaeger storage receiver.
Consumer Consumer does not actually a thing in MockBackend but only to make the diagram intuitive, the traces received from our artificial receiver will be stored inside MockBackend.
Correctness Test Validator Checks if the traces received from MockBackend are all matches with the generated traces from DataProvider.

gRPC Integration Test

To conduct the tests, run the following command:

scripts/grpc-integration-test.sh <remote_storage_image_version>

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type StorageIntegration

type StorageIntegration struct {
	Name       string
	ConfigFile string
}

func (*StorageIntegration) Test

func (s *StorageIntegration) Test(t *testing.T)

Directories

Path Synopsis
receivers

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL