Skip to content

Commit bde07e5

Browse files
Manik2708amol-verma-allen
authored andcommitted
[ES] Add feature to stop Legacy Trace IDs handling in SpanReader (jaegertracing#6848)
## Which problem is this PR solving? Fixes a part of jaegertracing#6458 ## Description of the changes - As discussed in the comment jaegertracing#6845 (comment), legacy trace id is moved to feature gate ## How was this change tested? - Unit and Integration tests ## Checklist - [x] I have read https://github.com/jaegertracing/jaeger/blob/master/CONTRIBUTING_GUIDELINES.md - [x] I have signed all commits - [x] I have added unit tests for the new functionality - [x] I have run lint and test steps successfully - for `jaeger`: `make lint test` - for `jaeger-ui`: `npm run lint` and `npm run test` --------- Signed-off-by: Manik2708 <[email protected]> Signed-off-by: amol-verma-allen <[email protected]>
1 parent fd5e57b commit bde07e5

File tree

12 files changed

+105
-14
lines changed

12 files changed

+105
-14
lines changed

cmd/collector/main.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import (
1919
"github.com/jaegertracing/jaeger/cmd/collector/app/flags"
2020
"github.com/jaegertracing/jaeger/cmd/internal/docs"
2121
"github.com/jaegertracing/jaeger/cmd/internal/env"
22+
"github.com/jaegertracing/jaeger/cmd/internal/featuregate"
2223
cmdFlags "github.com/jaegertracing/jaeger/cmd/internal/flags"
2324
"github.com/jaegertracing/jaeger/cmd/internal/printconfig"
2425
"github.com/jaegertracing/jaeger/cmd/internal/status"
@@ -139,6 +140,7 @@ func main() {
139140
command.AddCommand(docs.Command(v))
140141
command.AddCommand(status.Command(v, ports.CollectorAdminHTTP))
141142
command.AddCommand(printconfig.Command(v))
143+
command.AddCommand(featuregate.Command())
142144

143145
config.AddFlags(
144146
v,

cmd/es-index-cleaner/app/flags.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import (
88

99
"github.com/spf13/viper"
1010
"go.opentelemetry.io/collector/config/configtls"
11+
"go.opentelemetry.io/collector/featuregate"
1112

1213
"github.com/jaegertracing/jaeger/pkg/config/tlscfg"
1314
)
@@ -47,6 +48,7 @@ func (*Config) AddFlags(flags *flag.FlagSet) {
4748
flags.String(username, "", "The username required by storage")
4849
flags.String(password, "", "The password required by storage")
4950
tlsFlagsCfg.AddFlags(flags)
51+
featuregate.GlobalRegistry().RegisterFlags(flags)
5052
}
5153

5254
// InitFromViper initializes config from viper.Viper.

cmd/es-index-cleaner/main.go

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ import (
77
"context"
88
"encoding/base64"
99
"errors"
10-
"flag"
1110
"fmt"
1211
"log"
1312
"net/http"
@@ -35,9 +34,6 @@ func init() {
3534
featuregate.WithRegisterDescription("Controls whether the indices will be deleted relative to the current time or tomorrow midnight."),
3635
featuregate.WithRegisterReferenceURL("https://github.com/jaegertracing/jaeger/issues/6236"),
3736
)
38-
featureGateFlagSet := flag.NewFlagSet("feature-gates", flag.ExitOnError)
39-
featuregate.GlobalRegistry().RegisterFlags(featureGateFlagSet)
40-
pflag.CommandLine.AddGoFlagSet(featureGateFlagSet)
4137
}
4238

4339
func main() {

cmd/ingester/main.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import (
1818
"github.com/jaegertracing/jaeger/cmd/ingester/app/builder"
1919
"github.com/jaegertracing/jaeger/cmd/internal/docs"
2020
"github.com/jaegertracing/jaeger/cmd/internal/env"
21+
"github.com/jaegertracing/jaeger/cmd/internal/featuregate"
2122
"github.com/jaegertracing/jaeger/cmd/internal/flags"
2223
"github.com/jaegertracing/jaeger/cmd/internal/printconfig"
2324
"github.com/jaegertracing/jaeger/cmd/internal/status"
@@ -96,6 +97,7 @@ func main() {
9697
command.AddCommand(docs.Command(v))
9798
command.AddCommand(status.Command(v, ports.IngesterAdminHTTP))
9899
command.AddCommand(printconfig.Command(v))
100+
command.AddCommand(featuregate.Command())
99101

100102
config.AddFlags(
101103
v,

cmd/internal/featuregate/command.go

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
// Copyright (c) 2025 The Jaeger Authors.
2+
// SPDX-License-Identifier: Apache-2.0
3+
4+
package featuregate
5+
6+
import (
7+
"github.com/spf13/cobra"
8+
"go.opentelemetry.io/collector/otelcol"
9+
)
10+
11+
func Command() *cobra.Command {
12+
return command(func() *cobra.Command {
13+
settings := otelcol.CollectorSettings{}
14+
return otelcol.NewCommand(settings)
15+
})
16+
}
17+
18+
func command(otelCmdFn func() *cobra.Command) *cobra.Command {
19+
otelCmd := otelCmdFn()
20+
for _, cmd := range otelCmd.Commands() {
21+
if cmd.Name() == "featuregate" {
22+
otelCmd.RemoveCommand(cmd)
23+
return cmd
24+
}
25+
}
26+
panic("could not find 'featuregate' command")
27+
}
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
// Copyright (c) 2025 The Jaeger Authors.
2+
// SPDX-License-Identifier: Apache-2.0
3+
4+
package featuregate
5+
6+
import (
7+
"testing"
8+
9+
"github.com/spf13/cobra"
10+
"github.com/stretchr/testify/assert"
11+
)
12+
13+
func TestCommand(t *testing.T) {
14+
cmd := Command()
15+
assert.Equal(t, "featuregate [feature-id]", cmd.Use)
16+
}
17+
18+
func TestCommand_Panic(t *testing.T) {
19+
assert.PanicsWithValue(t, "could not find 'featuregate' command", func() {
20+
command(func() *cobra.Command {
21+
return &cobra.Command{}
22+
})
23+
})
24+
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
// Copyright (c) 2025 The Jaeger Authors.
2+
// SPDX-License-Identifier: Apache-2.0
3+
4+
package featuregate
5+
6+
import (
7+
"testing"
8+
9+
"github.com/jaegertracing/jaeger/internal/testutils"
10+
)
11+
12+
func TestMain(m *testing.M) {
13+
testutils.VerifyGoLeaks(m)
14+
}

cmd/internal/flags/service.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import (
1212
"syscall"
1313

1414
"github.com/spf13/viper"
15+
"go.opentelemetry.io/collector/featuregate"
1516
"go.uber.org/zap"
1617
"go.uber.org/zap/zapgrpc"
1718
"google.golang.org/grpc/grpclog"
@@ -87,6 +88,7 @@ func (s *Service) AddFlags(flagSet *flag.FlagSet) {
8788
}
8889
metricsbuilder.AddFlags(flagSet)
8990
s.Admin.AddFlags(flagSet)
91+
featuregate.GlobalRegistry().RegisterFlags(flagSet)
9092
}
9193

9294
// Start bootstraps the service and starts the admin server.

cmd/query/main.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ import (
1717

1818
"github.com/jaegertracing/jaeger/cmd/internal/docs"
1919
"github.com/jaegertracing/jaeger/cmd/internal/env"
20+
"github.com/jaegertracing/jaeger/cmd/internal/featuregate"
2021
"github.com/jaegertracing/jaeger/cmd/internal/flags"
2122
"github.com/jaegertracing/jaeger/cmd/internal/printconfig"
2223
"github.com/jaegertracing/jaeger/cmd/internal/status"
@@ -161,6 +162,7 @@ func main() {
161162
command.AddCommand(docs.Command(v))
162163
command.AddCommand(status.Command(v, ports.QueryAdminHTTP))
163164
command.AddCommand(printconfig.Command(v))
165+
command.AddCommand(featuregate.Command())
164166

165167
config.AddFlags(
166168
v,

cmd/remote-storage/main.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ import (
1616

1717
"github.com/jaegertracing/jaeger/cmd/internal/docs"
1818
"github.com/jaegertracing/jaeger/cmd/internal/env"
19+
"github.com/jaegertracing/jaeger/cmd/internal/featuregate"
1920
"github.com/jaegertracing/jaeger/cmd/internal/flags"
2021
"github.com/jaegertracing/jaeger/cmd/internal/printconfig"
2122
"github.com/jaegertracing/jaeger/cmd/internal/status"
@@ -101,6 +102,7 @@ func main() {
101102
command.AddCommand(docs.Command(v))
102103
command.AddCommand(status.Command(v, ports.QueryAdminHTTP))
103104
command.AddCommand(printconfig.Command(v))
105+
command.AddCommand(featuregate.Command())
104106

105107
config.AddFlags(
106108
v,

0 commit comments

Comments
 (0)