

We also host a community project page dedicated to the New Relic Apollo Server plugin.Īs noted in our security policy, New Relic is committed to the privacy and security of our customers and their data. To all contributors, we thank you! Without your contribution, this project would not be what it is today. If you have any questions, or to execute our corporate CLA (which is required if your contribution is on behalf of a company), drop us an email at you would like to contribute to this project, review these guidelines. You only have to sign the CLA one time per project. We encourage your contributions to improve the New Relic Apollo Server plugin! Keep in mind that when you submit your pull request, you'll need to sign the CLA via the click-through using CLA-Assistant.
NEW RELIC TIMESLICE CODE
We define “Personal Data” as any information relating to an identified or identifiable individual, including, for example, your name, phone number, post code or zip code, Device ID, IP address, and email address.įor more information, review New Relic’s General Data Privacy Notice. We must emphasize the importance of not sharing personal data in public forums, and ask all users to scrub logs and diagnostic information for sensitive information, whether personal, proprietary, or otherwise.


NRDiag can also automatically attach troubleshooting data to a New Relic Support ticket. If NRDiag detects a problem, it suggests troubleshooting steps. New Relic offers NRDiag, a client-side diagnostic utility that automatically detects common problems with New Relic agents. This troubleshooting framework steps you through common troubleshooting questions. Should you need assistance with New Relic products, you are in good hands with several support diagnostic tools and support channels. Individual test scripts include: npm run unit Verify that your changes don't break existing functionality.Īll tests are stored in tests/ and are written using The module includes a suite of unit and functional tests which should be used to The agent will notice GraphQL errors that get sent back to the client.ĭepend on where the error was thrown, these will be associated with either the operation span or the specific field resolve span (Distribute Tracing enabled) to enable further debugging of issues. The field name, return type, parent type, path and arguments (disabled by default) are all captured as attributes.įor more information on collected attributes, including enabling args capture, see the segments and spans documentation Errors These represent the individual duration and attributes of a specific field being resolved as a part of the GraphQL operation. For example, libraries.books might be used instead of just books. Resolve segments/spans leverage the resolution path of the individual field to best differentiate within a given trace or transaction. The operation type and operation name are captured as attributes on a segment or span as well as the query with obfuscated arguments.įor more information on collected attributes, see the segments and spans documentation Field Resolve Segments/Spans These represent the individual duration and attributes of a specific invocation within a transaction or trace.

Operation segments/spans include the operation type, operation name and deepest unique path. Segments and spans (when Distributed Tracing enabled) are captured for GraphQL operations, field resolution and additional work (when instrumented) that occurs as a part of field resolution such as making a query to a database. Const plugin = createPlugin ( ' FACET field LIMIT 10įor more information on metrics and some recommended visualizations, please see the metrics documentation.
