@@ -11,6 +11,7 @@ import (
1111 "beryju.io/gravity/pkg/roles"
1212 "beryju.io/gravity/pkg/storage"
1313 "github.com/Masterminds/semver/v3"
14+ "github.com/getsentry/sentry-go"
1415 clientv3 "go.etcd.io/etcd/client/v3"
1516 "go.uber.org/zap"
1617)
@@ -77,15 +78,17 @@ func (mi *Migrator) Run(ctx context.Context) (*storage.Client, error) {
7778 }
7879 mi .log .Debug ("Checking migrations to activate for cluster version" , zap .String ("clusterVersion" , cv .String ()))
7980 cli := mi .ri .KV ()
81+ span := sentry .TransactionFromContext (ctx ).StartChild ("gravity.instance.migrate" )
82+ defer span .Finish ()
8083 for _ , m := range mi .migrations {
8184 mi .log .Debug ("Checking if migration needs to be run" , zap .String ("migration" , m .Name ()))
82- enabled , err := m .Check (cv , ctx )
85+ enabled , err := m .Check (cv , span . Context () )
8386 if err != nil {
8487 mi .log .Warn ("failed to check if migration should be enabled" , zap .String ("migration" , m .Name ()), zap .Error (err ))
8588 return nil , err
8689 }
8790 if enabled {
88- _cli , err := m .Hook (ctx )
91+ _cli , err := m .Hook (span . Context () )
8992 if err != nil {
9093 mi .log .Warn ("failed to hook for migration" , zap .String ("migration" , m .Name ()), zap .Error (err ))
9194 return nil , err
@@ -94,7 +97,7 @@ func (mi *Migrator) Run(ctx context.Context) (*storage.Client, error) {
9497 cli = _cli
9598 } else {
9699 mi .log .Info ("Running cleanup for migration" , zap .String ("migration" , m .Name ()))
97- err := m .Cleanup (ctx )
100+ err := m .Cleanup (span . Context () )
98101 if err != nil {
99102 mi .log .Warn ("failed to cleanup migration" , zap .String ("migration" , m .Name ()), zap .Error (err ))
100103 continue
0 commit comments