getsentry / getsentry/sentry-javascript

Add file path attribute to page-related spans

Ouverte
#17,134 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub
Feature
Langage dominant
TypeScript
Étoiles
8.7k
Forks
1.8k
Merge moyen
1 j 17 h
PR mergées (30 j)
515

Description

### Problem Statement

Our `pageload`, `navigation` but also ` http.server` spans often can be be mentally associated to specific files. For example:

- A pageload of a NextJS (/insert file-based routing framework of your choice) route, has a clear file where the page code is living
- A server-side SSR request for a specific page in an NextJS app can be associated with the same files.

Today, we don't track this information with our spans. In many cases, the span name will be very similar to the file path, but any connection we make here will always be implicit and prone to errors (e.g. `/users/[id]` corresponding to a route like `src/users/[id]/page.jsx`

### Solution Brainstorm

For framework SDKs where we already collect build-time information about the available routes (e.g. #16686 or more broadly, our recent [parametrization efforts](https://linear.app/getsentry/project/parametrized-routes-everywhere-443af0345211)), this should be possible.

Things get more complicated for frameworks or projects that don't rely on file-based routing. For these, adding a file name attribute is likely out of scope.

We'll probably make use of the [`code.file.path` attribute](https://opentelemetry.io/docs/specs/semconv/registry/attributes/code/#code-file-path) semantic attribute.

Guide de contribution

Ouvrir le guide de contribution

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.