Giter Site home page Giter Site logo

Comments (12)

bizob2828 avatar bizob2828 commented on July 18, 2024 1

@Blankll I responded to all the issues you logged except for this. Can you update your example app to use dataloader so I can check out what's going on around losing context with dynamo?

from newrelic-node-apollo-server-plugin.

workato-integration avatar workato-integration commented on July 18, 2024 1

Jira CommentId: 138941
Commented by revans:

It looks like our sync doesn't load all comments. this one is the most relevant thus far #215 (comment)

from newrelic-node-apollo-server-plugin.

jordigh avatar jordigh commented on July 18, 2024

Hi, @Blankll thanks for the bug report. This seems related to other problems, and it would help if we can gather more information about what is happening.

For issues like this and other related issues, (newrelic/node-newrelic-aws-sdk#145, newrelic/node-newrelic-aws-sdk#145 newrelic/node-newrelic-aws-sdk#146 and newrelic/node-newrelic-aws-sdk#147), I recommend leveraging our support team over at support.newrelic.com which can help deep-dive into solving the problem. They will also ask to collect the necessary information which may or may not be sensitive (such as logs).

from newrelic-node-apollo-server-plugin.

Blankll avatar Blankll commented on July 18, 2024

Hi @jordigh the other 3 issues are more about missing some information in Span, but this one is different, I think this one is because this plugin currently hasn't compatible with dataloader or dataloader should also need to instrument, it is not some information missing in Span, it does not record the DynamoDB call Span that triggered in dataloader at all

from newrelic-node-apollo-server-plugin.

bizob2828 avatar bizob2828 commented on July 18, 2024

@Blankll if you can provide reproduction cases that would be helpful. If you're not comfortable doing that, as @jordigh suggested you should go through support.newrelic.com and they can help deep dive.

from newrelic-node-apollo-server-plugin.

Blankll avatar Blankll commented on July 18, 2024

Hi @jordigh @bizob2828 this repo has the sample to simulate issue #145, issue #146, and issue #147, please have a check

from newrelic-node-apollo-server-plugin.

bizob2828 avatar bizob2828 commented on July 18, 2024

Much appreciated @Blankll. We will take a look internally and get back to you.

from newrelic-node-apollo-server-plugin.

olivierlacan avatar olivierlacan commented on July 18, 2024

I don't think this issue is specific to DynamoDB, I believe it's specific to Dataloader itself and the way it executes all datastore queries as a batch: https://github.com/graphql/dataloader#batching

With this plugin enabled, New Relic database traces misreport time spent loading data within dataloader batch loading functions by a fairly wide margin:
image

I can confirm the 762ms total load time is accurate based on browser timings of this same GraphQL resolver query:
image

This also fails to list a Postgres select within each of the resolve.ApolloServer function calls which each correspond to a batch loader function in a Dataloader class.

Since Dataloader uses process.nextTick this plugin (or the newrelic package, maybe?) might need to account for that. See: https://github.com/graphql/dataloader/blob/588a8b6c6391aad042b369f10dc440c7e0458312/src/index.js#L232-L246

from newrelic-node-apollo-server-plugin.

bizob2828 avatar bizob2828 commented on July 18, 2024

@olivierlacan if you can create a sample app that reproduces this problem we'd be able to triage the issue much easier. Do you think that's possible? I suspect it's an issue with async context propagation and perhaps adding new behavior for this dataloader

from newrelic-node-apollo-server-plugin.

workato-integration avatar workato-integration commented on July 18, 2024

https://issues.newrelic.com/browse/NEWRELIC-6377

from newrelic-node-apollo-server-plugin.

bizob2828 avatar bizob2828 commented on July 18, 2024

I removed the bug flag as we technically don't support the graphql dataloader plugin

from newrelic-node-apollo-server-plugin.

workato-integration avatar workato-integration commented on July 18, 2024

Jira CommentId: 199168
Commented by jgutierrezhermoso:

I'm unable to reproduce this issue. I built a sample app using Apollo, Koa, the Dataloader and DynamoDB, and as far as I can tell, everything is working fine. Distributed traces are showing up with DynamoDB in them.

newrelic/newrelic-node-examples#68 (comment)

from newrelic-node-apollo-server-plugin.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.