Automatic Instrumentation

Spring MVC Integration

Sentry Spring Boot integration, once enabled, captures each incoming Spring MVC HTTP request and turns it into a transaction with SentryTracingFilter. Transaction names follow pattern <HTTP method> <Spring MVC route>, for example for a request to a following controller:

import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;

class HelloController {

  Person person(@PathVariable Long id) {

Each sampled request executed by this controller method will be turned into a transaction GET /person/{id}.

RestTemplate Instrumentation

Sentry Spring Boot integration provides SentrySpanRestTemplateCustomizer that creates a span for each outgoing HTTP request executed with a RestTemplate. To use instrumented RestTemplate make sure to create RestTemplate beans using RestTemplateBuilder:

import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Bean;
import org.springframework.boot.web.client.RestTemplateBuilder;

class AppConfig {
  RestTemplate restTemplate(RestTemplateBuilder builder) {
Help improve this content
Our documentation is open source and available on GitHub. Your contributions are welcome, whether fixing a typo (drat!) to suggesting an update ("yeah, this would be better").