-
Notifications
You must be signed in to change notification settings - Fork 2k
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
diagnostics channel out for performance checking #3133
Comments
Neat! I'd love to see what you have so far, @RichardWright. (Note: I'm not a maintainer, just a GraphQL user interested in observability.) The sound of it is reminiscent of https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-graphql, which monkey-patches graphql's A related question to
then, is
Not sure how the overhead, maintainability, value, etc. of these two styles of instrumentation compare. That may be a factor that the maintainers of this package weigh costs/benefits of adding this kind of code to the package. |
Ah, there's good context on
Perhaps their vision, then, is that modules publish data to a diagnostic channel, and then OpenTelemetry instrumentations can work by subscribing to that channel rather than monkey-patching other packages. That approach is being discussed in open-telemetry/opentelemetry-js#1263. Ok, going to back away now and let you have this issue again. 😬 |
you can do this with |
@saihaj That is much higher level and doesn't have subscriber awareness. |
adding something like this to graphql-js we would need to a way to export platform specific module. Cause we also want to support |
Questions regarding how to use GraphQL
Hi! I'm currently measuring the time taken for graphql to render and posting the results onto a diagnostics channel. Would a pr be accepted to have this code in the main lib?
nodejs functionality in question is here - https://nodejs.org/dist/latest-v14.x/docs/api/diagnostics_channel.html
It's opt in so users wouldn't having timings if no one is listening for them.
The text was updated successfully, but these errors were encountered: