Skip to content

Commit 425e80c

Browse files
committed
helper method to convert to batcher config
1 parent 068ab6d commit 425e80c

File tree

2 files changed

+16
-16
lines changed

2 files changed

+16
-16
lines changed

exporter/elasticsearchexporter/config.go

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -274,14 +274,8 @@ func (cfg *Config) Validate() error {
274274
if cfg.Retry.MaxRetries < 0 {
275275
return errors.New("retry::max_retries should be non-negative")
276276
}
277-
if cfg.Batcher.Enabled != nil {
278-
batcherConfig := exporterbatcher.Config{
279-
Enabled: *cfg.Batcher.Enabled,
280-
FlushTimeout: cfg.Batcher.FlushTimeout,
281-
MinSizeConfig: cfg.Batcher.MinSizeConfig,
282-
MaxSizeConfig: cfg.Batcher.MaxSizeConfig,
283-
}
284-
if err := batcherConfig.Validate(); err != nil {
277+
if batcherCfg, ok := cfg.exporterbatcherConfig(); ok {
278+
if err := batcherCfg.Validate(); err != nil {
285279
return fmt.Errorf("invalid batcher config: %w", err)
286280
}
287281
}

exporter/elasticsearchexporter/factory.go

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -201,14 +201,8 @@ func exporterhelperOptions(
201201
exporterhelper.WithShutdown(shutdown),
202202
exporterhelper.WithQueue(cfg.QueueSettings),
203203
}
204-
if cfg.Batcher.Enabled != nil {
205-
batcherConfig := exporterbatcher.Config{
206-
Enabled: *cfg.Batcher.Enabled,
207-
FlushTimeout: cfg.Batcher.FlushTimeout,
208-
MinSizeConfig: cfg.Batcher.MinSizeConfig,
209-
MaxSizeConfig: cfg.Batcher.MaxSizeConfig,
210-
}
211-
opts = append(opts, exporterhelper.WithBatcher(batcherConfig))
204+
if batcherCfg, ok := cfg.exporterbatcherConfig(); ok {
205+
opts = append(opts, exporterhelper.WithBatcher(batcherCfg))
212206

213207
// Effectively disable timeout_sender because timeout is enforced in bulk indexer.
214208
//
@@ -218,3 +212,15 @@ func exporterhelperOptions(
218212
}
219213
return opts
220214
}
215+
216+
func (cfg *Config) exporterbatcherConfig() (exporterbatcher.Config, bool) {
217+
if cfg.Batcher.Enabled == nil {
218+
return exporterbatcher.Config{}, false
219+
}
220+
return exporterbatcher.Config{
221+
Enabled: *cfg.Batcher.Enabled,
222+
FlushTimeout: cfg.Batcher.FlushTimeout,
223+
MinSizeConfig: cfg.Batcher.MinSizeConfig,
224+
MaxSizeConfig: cfg.Batcher.MaxSizeConfig,
225+
}, true
226+
}

0 commit comments

Comments
 (0)