Skip to content

Add fs2-grpc-otel4s-trace module#843

Merged
ahjohannessen merged 1 commit into
typelevel:mainfrom
iRevive:topic/otel4s
Apr 24, 2026
Merged

Add fs2-grpc-otel4s-trace module#843
ahjohannessen merged 1 commit into
typelevel:mainfrom
iRevive:topic/otel4s

Conversation

@iRevive
Copy link
Copy Markdown
Contributor

@iRevive iRevive commented Apr 21, 2026

As otel4s approaches 1.0.0, it makes sense for fs2-grpc to provide first-class tracing instrumentation.

This PR adds an fs2-grpc-otel4s-trace module with client and service aspects for OpenTelemetry tracing via otel4s. The implementation follows the current OpenTelemetry gRPC semantic conventions for span kind, span names, RPC attributes, gRPC status codes, and error classification.

The core concept was already tested in a few prod environments via https://github.com/iRevive/fs2-grpc-otel4s.

@ahjohannessen
Copy link
Copy Markdown
Collaborator

I will take a look at the PR tomorrow :)

Copy link
Copy Markdown
Collaborator

@ahjohannessen ahjohannessen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great work 👍

Not sure if other eyes are needed on this one.

@iRevive
Copy link
Copy Markdown
Contributor Author

iRevive commented Apr 23, 2026

The public API surface is rather small, and we can make binary-compatible changes in the future. Perhaps we can merge the changes and then we will get a snapshot? A snapshot should be enough to test this implementation in different private environments.

@ahjohannessen
Copy link
Copy Markdown
Collaborator

Not sure how to publish snapshots, but I am merging it.

@ahjohannessen ahjohannessen merged commit 9f2cb27 into typelevel:main Apr 24, 2026
5 checks passed
@iRevive iRevive deleted the topic/otel4s branch May 1, 2026 13:50
@ahjohannessen
Copy link
Copy Markdown
Collaborator

@iRevive I have released v3.1.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants