SpringBootのトレース情報をSentryで確認する際の調査メモ
初期設定
build.gradle
implementation 'io.sentry:sentry-spring-boot-starter:5.7.3'
開発環境用のプロパティファイル
application-develop.properties
# Sentry
sentry.dsn={SentryUrl}
sentry.traces-sample-rate=1.0
sentry.send-default-pii=true
sentry.environment=develop
「sentry.traces-sample-rate」は、送信する割合ということで、本番環境では割合を減らすことが推奨されている。
「sentry.send-default-pii」は、trueにすることで送信元IPをセットできる。
「sentry.environment」は、どの環境の情報か判別できるようにするために設定する。
SentrySpanアノテーションの付与
メソッドでも良いが、クラス単位で付与するとクラス内のメソッド全てが対象となる。
SampleController.java
@Controller
@RequestMapping("sample")
@SentrySpan
public class SampleController {
// 省略
}
SampleServiceImple.java
@Service
@SentrySpan
public class SampleServiceImpl implements SampleService {
// 省略
}
SampleRepository.java
@Mapper
@SentrySpan
public interface SampleRepository {
// 省略
}
結果
アノテーションを付与するだけで、トレースが容易になりました。