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

Akka-http server metrics instrumentation broken for HTTP2 since akka-http 10.5.1 #1373

Open
adisnep opened this issue Oct 29, 2024 · 1 comment · May be fixed by #1374
Open

Akka-http server metrics instrumentation broken for HTTP2 since akka-http 10.5.1 #1373

adisnep opened this issue Oct 29, 2024 · 1 comment · May be fixed by #1374

Comments

@adisnep
Copy link

adisnep commented Oct 29, 2024

Version 10.5.1 of akka-http comes with a refactoring for the handleWithStreamIdHeader method of the akka.http.impl.engine.http2.Http2Blueprint which brakes the server metrics instrumentation because this method is used by Kamon with reflection to pass info required to collect these metrics (for specific details regarding the refactoring check the following commit akka/akka-http@02bb987). Due to the current method signature the info necessary to collect the metrics can't be carried using the handleWithStreamIdHeader method anymore so we need a different way of carrying and extracting it.

My proposal will be to use the advise method instead of the intercept method in Kamon to hook on the same method handleWithStreamIdHeader ofakka.http.impl.engine.http2.Http2Blueprint and extract the necessary info simply because this is agnostic of the method signature(I see it more future proof than the current approach) and also used in other places in Kamon.

@adisnep adisnep linked a pull request Oct 29, 2024 that will close this issue
@adisnep
Copy link
Author

adisnep commented Oct 29, 2024

I opened the following PR #1374 to address the issue. Please let me know you thoughts about it.

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 a pull request may close this issue.

1 participant