Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add e2e unit test for OTLP receiver in jaeger-v1 #6535

Closed
yurishkuro opened this issue Jan 13, 2025 · 1 comment · Fixed by #6541
Closed

Add e2e unit test for OTLP receiver in jaeger-v1 #6535

yurishkuro opened this issue Jan 13, 2025 · 1 comment · Fixed by #6541
Labels
area/otel area/storage enhancement good first issue Good for beginners help wanted Features that maintainers are willing to accept but do not have cycles to implement

Comments

@yurishkuro
Copy link
Member

The PR #6532 completes the upgrade of jaeger-v1 write pipeline to v2 storage API. However, there is no unit tests that would track the whole pipeline from receiving a network message to passing it to a mock v2 storage implementation. We would like to add it.

There is a comment in the code complaining about the lack of such test:

// Ideally, we want to test with a real gRPC client, but OTEL repos only have those as internal packages.

However, we could use HTTP endpoint of OTLP receiver to submit OTLP trace data as JSON.

The main validation is to ensure that a v2 mock trace writer is passed to the SpanProcessor and that writer is invoked with the expected trace submitted via HTTP.

The test should also validate that the tenancy information is propagated all the way from the client to the storage (as part of the Context in the WriteTraces call.

This issue is a good preparation for the mentorship project #6458.

@yurishkuro yurishkuro added good first issue Good for beginners help wanted Features that maintainers are willing to accept but do not have cycles to implement labels Jan 13, 2025
@chahatsagarmain
Copy link
Contributor

Working on this .

yurishkuro added a commit that referenced this issue Jan 15, 2025

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
## Which problem is this PR solving?
- Resolves #6474

## Description of the changes
- Hook up OTLP and Zipkin receivers into v2 write path in the
SpanProcessor.
- Add unit tests to validate that `ptrace.Traces` object is being
received by the SpanProcessor.

## How was this change tested?
- CI
- Created `good-first-issue` #6535 to add e2e tests after this

---------

Signed-off-by: Yuri Shkuro <github@ysh.us>
yurishkuro added a commit that referenced this issue Jan 30, 2025
## Which problem is this PR solving?
- Resolves #6535

## Description of the changes
- Added unit test 

## How was this change tested?
- 

## Checklist
- [ ] I have read
https://github.com/jaegertracing/jaeger/blob/master/CONTRIBUTING_GUIDELINES.md
- [ ] I have signed all commits
- [ ] I have added unit tests for the new functionality
- [ ] I have run lint and test steps successfully
  - for `jaeger`: `make lint test`
  - for `jaeger-ui`: `npm run lint` and `npm run test`

---------

Signed-off-by: chahatsagarmain <chahatsagar2003@gmail.com>
Signed-off-by: Yuri Shkuro <yurishkuro@users.noreply.github.com>
Signed-off-by: chahat sagar <109112505+chahatsagarmain@users.noreply.github.com>
Co-authored-by: Yuri Shkuro <yurishkuro@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/otel area/storage enhancement good first issue Good for beginners help wanted Features that maintainers are willing to accept but do not have cycles to implement
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants