---
title: "Migrating Version 5.x to 6.0"
description: "Learn about migrating from version 5.x to 6.0.0"
url: https://docs.sentry.io/platforms/java/guides/log4j2/migration/5.x-to-6.0/
---

# Migrating Version 5.x to 6.0 | Sentry for Log4j 2.x

## [Migrating from `io.sentry:sentry` `5.x` to `io.sentry:sentry` `6.0.0`](https://docs.sentry.io/platforms/java/guides/log4j2/migration/5.x-to-6.0/#migrating-from-iosentrysentry-5x-to-iosentrysentry-600)

* Kotlin plugin is upgraded to `1.5`.

* Kotlin `languageVersion` is upgraded to `1.4`.

* `Gson` is removed as a transitive dependency and vendored in the SDK.

  * Protocol classes now implement the `JsonSerializable` and `JsonDeserializer` interfaces.

* Spring Boot has been upgraded to `2.5.13`

* `SentryOptions#shutdownTimeout` is renamed to `shutdownTimeoutMillis`.

* Removed `@Deprecated` and `@ApiStatus.ScheduledForRemoval` methods

  * `ITransaction#setRequest`
  * `ITransaction#getRequest`
  * `ITransaction#getContexts`
  * `SentryBaseEvent#getOriginThrowable`
  * `SentryOptions#getCacheDirSize`
  * `SentryOptions#setCacheDirSize`
  * `SentryOptions#isEnableSessionTracking`
  * `SentryOptions#setEnableSessionTracking`
  * `sentry.enable-tracing` property
  * `SentrySpringRequestListener`, `SentrySpringFilter` is used instead.
  * `SentryUserProviderEventProcessor`, please use `SentryUserProvider` instead.

* `SentryOptions#enableScopeSync` is now enabled by default.

* `ISpan` now has higher precision using the `System#nanoTime` instead of milliseconds.

* `TransactionNameProvider` is now an interface and `SpringMvcTransactionNameProvider` is the default implementation.

* Hints changed its type from `Object` to `io.sentry.Hint`

*Old*:

```kotlin
Sentry.captureException(RuntimeException("exception"), "myStringHint")
```

*New*:

```kotlin
val hints = mutableMapOf<String, Any>("myHint" to "myStringHint")
Sentry.captureException(RuntimeException("exception"), hints)
```

* `SentryOptions#sendClientReports` is now enabled by default. To disable it, see [sendClientReports](https://docs.sentry.io/platforms/java/configuration.md#client-reports). For more information on the option see [sendClientReports](https://docs.sentry.io/platforms/java/configuration/options.md#sendClientReports).

### [Sentry Self-hosted Compatibility](https://docs.sentry.io/platforms/java/guides/log4j2/migration/5.x-to-6.0/#sentry-self-hosted-compatibility)

* Starting with version `6.0.0` of `sentry`, [Sentry's version >= v21.9.0](https://github.com/getsentry/self-hosted/releases) is required or you have to manually disable sending client reports via the `sendClientReports` option. This only applies to self-hosted Sentry. If you are using [sentry.io](https://sentry.io), no action is needed.

There are more changes and refactors, but they are not user breaking changes.
