elastic / apm-agent-java

https://www.elastic.co/guide/en/apm/agent/java/current/index.html
Apache License 2.0
567 stars 321 forks source link

More native support for calling and implementing the GraphQL APIs #1297

Open michaelhyatt opened 4 years ago

michaelhyatt commented 4 years ago

When implementing a GraphQL API, there should be a way to create separate transactions dynamically for each Resolver method. At the moment, the agent creates one transaction for all the calls to GraphQL API. I understand it is possible to use @CaptureTransaction annotations, but it requires not having an active transaction in flight, which needs the autodiscovery to be switched off, and that is not ideal.

When invoking a GraphQL API from Java, the Spans should contain the GraphQL expression similar to how JDBC calls are being represented in the UI with their respective SQL statement visible. GraphQL expression is visible in the request but requires capturing request bodies, which has performance impact.

Choi-JinHwan commented 2 years ago

we need GrqphQL framework support ex) dgs