Skip to content

Commit be85f38

Browse files
committed
Add esmapping-generator to jaeger binary
Signed-off-by: Rohanraj123 <[email protected]>
1 parent 980dc31 commit be85f38

File tree

5 files changed

+66
-0
lines changed

5 files changed

+66
-0
lines changed
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
// Copyright (c) 2025 The Jaeger Authors.
2+
// SPDX-License-Identifier: Apache-2.0
3+
4+
package generator
5+
6+
import (
7+
"fmt"
8+
9+
"github.com/jaegertracing/jaeger/cmd/esmapping-generator/app"
10+
"github.com/jaegertracing/jaeger/cmd/esmapping-generator/app/renderer"
11+
"github.com/jaegertracing/jaeger/pkg/es"
12+
"github.com/jaegertracing/jaeger/plugin/storage/es/mappings"
13+
)
14+
15+
func GenerateMappings(options app.Options) string {
16+
17+
fmt.Printf("Generating mappings with options: %+v\n", options)
18+
if _, err := mappings.MappingTypeFromString(options.Mapping); err != nil {
19+
return fmt.Sprintf("please pass either 'jaeger-service' or 'jaeger-span' as argument: %v", err)
20+
}
21+
22+
parsedMapping, err := renderer.GetMappingAsString(es.TextTemplateBuilder{}, &options)
23+
if err != nil {
24+
return fmt.Sprintf("failed to get mapping as string: %v", err)
25+
}
26+
27+
return parsedMapping
28+
}

cmd/jaeger/main.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,18 +7,22 @@ import (
77
"log"
88

99
"github.com/spf13/viper"
10+
"go.uber.org/zap"
1011

1112
"github.com/jaegertracing/jaeger/cmd/internal/docs"
1213
"github.com/jaegertracing/jaeger/cmd/jaeger/internal"
14+
"github.com/jaegertracing/jaeger/internal/esmapping"
1315
"github.com/jaegertracing/jaeger/pkg/config"
1416
"github.com/jaegertracing/jaeger/pkg/version"
1517
)
1618

1719
func main() {
20+
logger, _ := zap.NewDevelopment()
1821
v := viper.New()
1922
command := internal.Command()
2023
command.AddCommand(version.Command())
2124
command.AddCommand(docs.Command(v))
25+
command.AddCommand(esmapping.Command(logger))
2226
config.AddFlags(
2327
v,
2428
command,

es

19.1 MB
Binary file not shown.

internal/esmapping/command.go

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
// Copyright (c) 2025 The Jaeger Authors.
2+
// SPDX-License-Identifier: Apache-2.0
3+
4+
package esmapping
5+
6+
import (
7+
"fmt"
8+
9+
"github.com/spf13/cobra"
10+
"go.uber.org/zap"
11+
12+
"github.com/jaegertracing/jaeger/cmd/esmapping-generator/app"
13+
"github.com/jaegertracing/jaeger/cmd/esmapping-generator/generator"
14+
)
15+
16+
func Command(logger *zap.Logger) *cobra.Command {
17+
options := app.Options{}
18+
19+
command := &cobra.Command{
20+
Use: "es-mappings",
21+
Short: "Generate Elasticsearch mappings",
22+
Long: "Generate Elasticsearch mappings using jaeger-esmapping-generator functionality",
23+
Run: func(_ *cobra.Command, _ []string) {
24+
if options.UseILM == "" {
25+
options.UseILM = "false"
26+
}
27+
result := generator.GenerateMappings(options)
28+
fmt.Println(result)
29+
},
30+
}
31+
32+
command.Flags().StringVar(&options.Mapping, "mapping", "jaeger-span", "Mapping type to use, e.g. 'jaeger-service' or 'jaeger-span'")
33+
return command
34+
}

jaeger

91 MB
Binary file not shown.

0 commit comments

Comments
 (0)