-
Notifications
You must be signed in to change notification settings - Fork 144
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 bindFlow instrumentation broken #189
Comments
@ryanb93 Thanks for this. I'll take a look soon and see if we can't come up with a fix |
Thanks If anyone else is having the same problem, you can keep using the Routing DSL and then bind like this: Http()
.newServerAt(interface, port)
.connectionSource()
.to(Sink.foreach(_ handleWithAsyncHandler customRoutes))
.run() This starts reporting transactions to the NewRelic agent however all transactions are attributed to edit: Additionally using Http().newServerAt(interface = "localhost", port).bind {
path("asyncPing") {
get {
complete {
println("request made")
StatusCodes.OK -> "Hoops!"
}
}
}
} |
Some investigation: NewRelic hooks into the following methods within bindAndHandleAsync
bindAndHandleSync When a server is created using
When a server is created using
It might be that it's better to hook into the underlying |
Description
When creating an AkkaHttp server using
Http().newServerAt("localhost", 8080).bindFlow(....)
instrumentation breaks. This is possibly due tohandleWithAsyncHandler
not being called, which is where instrumentation is hooked.Expected Behavior
Transactions are instrumented normally.
Steps to Reproduce
Create a new server as follows:
A test has been created that shows an example of this: main...ryanb93:main
Your Environment
NewRelic Agent: 6.3.0
JVM: Java 11 OpenJDK
Akka Http: 10.2.2
Scala 2.13.3
Additional context
Some additional comments here: #149 (comment)
The text was updated successfully, but these errors were encountered: