getsentry / getsentry/sentry-javascript
Ensure Fastify instrumentation sends data expected for name and description inference
- Dominant language
- TypeScript
- Stars
- 8.7k
- Forks
- 1.8k
- Avg merge
- 1d 17h
- Merged PRs (30d)
- 515
Description
Right now, Fastify sends data that's largely divergent from other instrumentation:
* op: `hook.fastify` is not registered anywhere, meaning we don't go through the correct span description/name inference rule. I'd propose `function` or `function.fastify` as a replacement.
* It doesn't seem like `middleware` is the correct replacement since Fastify themselves don't refer to hooks as middleware. Middleware could be added via third party dependencies, in which case they should go through our express instrumentation.
* attributes: A [few attributes]() are not registered in sentry conventions and there'd be other, more established hooks that can replace them.
Contributor guide
Research direction
Start with packages/server-utils/src/integrations/tracing-channel/fastify/instrumentation.ts, especially the operation and attributes referenced in the issue. Compare Fastify's emitted data with Sentry conventions and other instrumentation to determine the appropriate inference inputs. Done means the instrumentation sends registered, consistent data for span name and description inference.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- backend-api-design, observability-sre
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100