Skip to content

Unable to set transaction name using Nest.js, Apollo GraphQL & @sentry/nestjs #12990

Open

Description

Is there an existing issue for this?

How do you use Sentry?

Sentry Saas (sentry.io)

Which SDK are you using?

@sentry/nestjs

SDK Version

8.19.0

Framework Version

10.3.10

Link to Sentry event

https://nino-vrijman.sentry.io/performance/trace/9dd0463a73c42f414ee79f41e3cf67bd/?node=span-cf85ed63b585ac8f&node=txn-709d8314ffb94ea8a642738416f3efda&project=5585265&query=http.method%3APOST&referrer=performance-transaction-summary&source=performance_transaction_summary&statsPeriod=3m&timestamp=1721399127&transaction=POST+%2Fgraphql&unselectedSeries=p100%28%29&unselectedSeries=avg%28%29

SDK Setup/Reproduction Example

Link to reproduction in a fresh Nest.js project:
https://github.com/nino-vrijman/nest-graphql-sentry-transation-name

// eslint-disable-next-line @typescript-eslint/no-var-requires
const Sentry = require('@sentry/nestjs');

// Ensure to call this before requiring any other modules!
Sentry.init({
  dsn: process.env.SENTRY_DSN,
  sampleRate: 1.0,
  tracesSampleRate: 1.0,
  profilesSampler: 1.0,
  environment: 'localhost',
  integrations: [Sentry.nestIntegration(), Sentry.graphqlIntegration()],
});

Steps to Reproduce

  1. Run back-end using SENTRY_DSN=<your sentry dsn> npm run start:dev
  2. Do a simple GraphQL request with a name of choice: query TestTransactionName { hello }
  3. Check logs that the transaction name seems to have changed in multiple places, most notably in the isolation scope which seems to be the culprit. Only the active span name has been updated.
  4. Check Sentry > Performance and see that every query is grouped under POST /graphql instead of the GraphQL query name like TestTransactionName

Image

Image

Expected Result

The Transaction name on the Performance page is set to GraphQL query TestTransactionName

Actual Result

Everything is grouped under POST /graphql

Image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions