From 14824237f1cf8377a0480b81b161726ffce532c8 Mon Sep 17 00:00:00 2001 From: haanhvu Date: Mon, 1 Jan 2024 19:39:01 +0700 Subject: [PATCH] Fix failed CI checks Signed-off-by: haanhvu --- .../exporters/storageexporter/exporter.go | 25 +++++++++++-------- .../exporters/storageexporter/factory.go | 18 +++---------- .../extension/jaegerstorage/config.go | 10 -------- 3 files changed, 17 insertions(+), 36 deletions(-) diff --git a/cmd/jaeger/internal/exporters/storageexporter/exporter.go b/cmd/jaeger/internal/exporters/storageexporter/exporter.go index b9277ab1d36..68959abb0bb 100644 --- a/cmd/jaeger/internal/exporters/storageexporter/exporter.go +++ b/cmd/jaeger/internal/exporters/storageexporter/exporter.go @@ -19,17 +19,18 @@ import ( ) type storageExporter struct { - config *Config - logger *zap.Logger - spanWriter spanstore.Writer - exportTraces func(ctx context.Context, td ptrace.Traces) error - requireBatchInsert bool + config *Config + logger *zap.Logger + spanWriter spanstore.Writer + clickhouse bool + chExportTraces func(ctx context.Context, td ptrace.Traces) error } func newExporter(config *Config, otel component.TelemetrySettings) *storageExporter { return &storageExporter{ - config: config, - logger: otel.Logger, + config: config, + logger: otel.Logger, + clickhouse: false, } } @@ -41,15 +42,13 @@ func (exp *storageExporter) start(ctx context.Context, host component.Host) erro switch t := f.(type) { case *ch.Factory: + exp.clickhouse = true t.CreateSpansTable(ctx) - exp.requireBatchInsert = true - exp.exportTraces = t.ExportSpans + exp.chExportTraces = t.ExportSpans default: if exp.spanWriter, err = f.CreateSpanWriter(); err != nil { return fmt.Errorf("cannot create span writer: %w", err) } - exp.requireBatchInsert = false - exp.exportTraces = exp.pushTraces } return nil @@ -61,6 +60,10 @@ func (exp *storageExporter) close(_ context.Context) error { } func (exp *storageExporter) pushTraces(ctx context.Context, td ptrace.Traces) error { + if exp.clickhouse { + return exp.chExportTraces(ctx, td) + } + batches, err := otlp2jaeger.ProtoFromTraces(td) if err != nil { return fmt.Errorf("cannot transform OTLP traces to Jaeger format: %w", err) diff --git a/cmd/jaeger/internal/exporters/storageexporter/factory.go b/cmd/jaeger/internal/exporters/storageexporter/factory.go index 2921c2d939a..95a66ce0c06 100644 --- a/cmd/jaeger/internal/exporters/storageexporter/factory.go +++ b/cmd/jaeger/internal/exporters/storageexporter/factory.go @@ -34,26 +34,14 @@ func createDefaultConfig() component.Config { func createTracesExporter(ctx context.Context, set exporter.CreateSettings, config component.Config) (exporter.Traces, error) { cfg := config.(*Config) ex := newExporter(cfg, set.TelemetrySettings) - - if ex.requireBatchInsert { - return exporterhelper.NewTracesExporter(ctx, set, cfg, - ex.exportTraces, - exporterhelper.WithCapabilities(consumer.Capabilities{MutatesData: false}), - exporterhelper.WithTimeout(exporterhelper.TimeoutSettings{Timeout: 0}), - exporterhelper.WithRetry(exporterhelper.RetrySettings{Enabled: false}), - // Enable queue settings for batch inserts - exporterhelper.WithQueue(exporterhelper.QueueSettings{Enabled: true}), - exporterhelper.WithStart(ex.start), - exporterhelper.WithShutdown(ex.close), - ) - } return exporterhelper.NewTracesExporter(ctx, set, cfg, - ex.exportTraces, + ex.pushTraces, exporterhelper.WithCapabilities(consumer.Capabilities{MutatesData: false}), // Disable Timeout/RetryOnFailure and SendingQueue exporterhelper.WithTimeout(exporterhelper.TimeoutSettings{Timeout: 0}), exporterhelper.WithRetry(exporterhelper.RetrySettings{Enabled: false}), - exporterhelper.WithQueue(exporterhelper.QueueSettings{Enabled: false}), + // Enable queue settings for Clickhouse only + exporterhelper.WithQueue(exporterhelper.QueueSettings{Enabled: ex.clickhouse}), exporterhelper.WithStart(ex.start), exporterhelper.WithShutdown(ex.close), ) diff --git a/cmd/jaeger/internal/extension/jaegerstorage/config.go b/cmd/jaeger/internal/extension/jaegerstorage/config.go index 951f958e3e5..269dae56b2a 100644 --- a/cmd/jaeger/internal/extension/jaegerstorage/config.go +++ b/cmd/jaeger/internal/extension/jaegerstorage/config.go @@ -17,13 +17,3 @@ type Config struct { ClickHouse map[string]ch.Config `mapstructure:"clickhouse"` } - -type MemoryStorage struct { - Name string `mapstructure:"name"` - memoryCfg.Configuration -} - -type ClickHouseStorage struct { - Name string `mapstructure:"name"` - ch.Config -}