Skip to main content
Version 10 focuses on upgrading OpenTelemetry dependencies to v2 with minimal breaking changes. This is a smaller upgrade compared to v7 to v8.

Prerequisites

  • Review the v10 changelog
  • Compatible with Sentry self-hosted 24.4.2 or higher
  • Test in a non-production environment first

Version Support Changes

Version 10 has updated runtime requirements:Node.js:
  • Minimum: Node 18.0.0
  • ESM-only SDKs (Astro, Nuxt, SvelteKit): Node 18.19.1+
Browsers:
  • Chrome 80+
  • Edge 80+
  • Safari 14+, iOS Safari 14.4+
  • Firefox 74+
  • Samsung Internet 13.0+
TypeScript:
  • Minimum: TypeScript 5.0.4
Deno:
  • Minimum: Deno 2.0.0

Installation

Major Changes from v9

1. Removed APIs

Hub API Completely Removed

The Hub API was deprecated in v8 and is now fully removed in v9+. Before (v8):
After (v9+):

Metrics API Removed

The metrics beta has ended. All metrics APIs have been removed.

Debug Integration Removed

Before (v8):
After (v9+): Use beforeSend hook to log events:

2. OpenTelemetry v2 (v10)

Version 10 upgrades OpenTelemetry dependencies from v1 to v2. Node.js Impact: All OpenTelemetry instrumentations have been updated. If you use custom OpenTelemetry instrumentations, you may need to update them:

3. Behavior Changes

beforeSendSpan Changes (v9)

You can no longer drop spans by returning null from beforeSendSpan. Before (v8):
After (v9+):

First Input Delay (FID) Removed (v10)

FID web vital has been removed as it’s deprecated by Google.

IP Address Collection (v10.4+)

IP address inference now respects sendDefaultPii: Before (v10.0-10.3):
After (v10.4+):

4. AWS Lambda Layer Changes

Version 10 Layer:
Version 9 Layer (for updates/fixes):

Framework-Specific Changes

Next.js

Source Maps (v9)

Client-side source maps are now automatically deleted after upload: Before (v8):
After (v9+):

Build ID as Release (v9)

Next.js Build ID is no longer used as the release name:

SvelteKit (v9)

Remix v1.x is no longer supported. Upgrade to v2+.

React (v9)

Error Boundary Types

Error types are now unknown instead of Error: Before (v8):
After (v9+):

Node.js (v9)

processThreadBreadcrumbIntegration Renamed

Before (v8):
After (v9+):

Prisma v6 (v9)

Prisma integration now supports v6 by default:
For Prisma v5:

Step-by-Step Migration

From v8 to v9

1. Update Dependencies:
2. Remove Hub API Usage:
3. Update beforeSendSpan:
4. Remove Metrics: Remove all Sentry.metrics.* calls. 5. Test:
  • Error capturing
  • Performance monitoring
  • Custom instrumentation

From v9 to v10

1. Update Dependencies:
2. Update TypeScript (if needed):
3. Update Node.js (if needed): Ensure you’re running Node 18.0.0 or higher. 4. Update OpenTelemetry Instrumentations: If you use custom instrumentations, update to v2-compatible versions. 5. Handle IP Address Changes:
6. Test:
  • All functionality still works
  • OpenTelemetry instrumentations work
  • Web vitals are captured (INP instead of FID)

Migration Checklist

v8 to v9

  • Update all @sentry/* packages to v9
  • Remove all Hub API usage
  • Remove metrics API calls
  • Update beforeSendSpan logic
  • Update React error boundary types
  • Rename processThreadBreadcrumbIntegration to childProcessIntegration
  • Test error capturing
  • Test performance monitoring

v9 to v10

  • Verify Node.js version ≥ 18.0.0
  • Verify TypeScript version ≥ 5.0.4
  • Update all @sentry/* packages to v10
  • Update OpenTelemetry instrumentations to v2
  • Set sendDefaultPii if you need IP addresses
  • Update AWS Lambda layer ARN (if using)
  • Test OpenTelemetry instrumentations
  • Verify web vitals capture (INP vs FID)

Common Issues

Issue: TypeScript errors about incompatible typesSolution: Upgrade TypeScript to 5.0.4 or higher:
Issue: Custom OpenTelemetry instrumentations stopped working in v10Solution: Update instrumentations to v2-compatible versions:
Issue: User IP addresses no longer captured (v10.4+)Solution: Enable sendDefaultPii:
Issue: getCurrentHub is not a functionSolution: Replace with new API:

Quick Reference: API Changes

Getting Help

If you encounter issues:
  1. Check the v9 migration guide
  2. Check the v10 migration guide
  3. Search GitHub issues
  4. Ask in Discord

Next Steps

General Upgrading Guide

Best practices for upgrading Sentry

Custom Integrations

Build custom integrations