apache / apache/pulsar

[improve] OpenTelemetry supports end-to-end testing

Open
#24,545 4 comments 0 reactions 0 assignees View on GitHub
type/enhancement
Dominant language
Java
Stars
15.3k
Forks
3.8k
Avg merge
1d 14h
Merged PRs (30d)
160

Description

### Search before reporting

- [x] I searched in the [issues](https://github.com/apache/pulsar/issues) and found nothing similar.

### Motivation

In OpenTelemetry's OTLP mode, only a Go implementation of the Server is available. Consequently, when conducting end-to-end testing of the Pulsar OpenTelemetry client to the Server, we can only simulate the environment by launching Pods within the integration test module. However, it is impossible to retrieve actual data from the Server side, rendering the testing ineffective.

### Solution

The OLTP server uses Protobuf and gRPC protocols. We can copy these proto files and build a custom gRPC server.

### Alternatives

_No response_

### Anything else?

_No response_

### Are you willing to submit a PR?

- [ ] I'm willing to submit a PR!

Contributor guide

Open the contributing guide

Research direction

Start by examining the integration test module and the OTLP mode used by the Pulsar OpenTelemetry client. Review the required proto files and the existing Go OTLP server behavior before assessing a custom gRPC server. Done means end-to-end tests can send telemetry to the server and retrieve actual server-side data.

Written by the indexing model from the issue text.

Assessment

Tech stack
grpc, java
Domain
distributed-systems, observability-sre, testing-qa
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.