Skip to content

Commit c69614b

Browse files
authored
Merge branch '8.19' into mergify/bp/8.19/pr-47804
2 parents d841479 + 1a4d28c commit c69614b

File tree

2 files changed

+61
-18
lines changed

2 files changed

+61
-18
lines changed

libbeat/otelbeat/beatconverter/beatconverter.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,12 @@ func (c Converter) Convert(_ context.Context, conf *confmap.Conf) error {
7777
switch key {
7878
case "elasticsearch":
7979
esConfig := config.MustNewConfigFrom(output)
80+
81+
// ignore elasticsearch output if it is not enabled
82+
if !esConfig.Enabled() {
83+
continue
84+
}
85+
8086
// we use development logger here as this method is part of dev-only otel command
8187
logger, _ := logp.NewDevelopmentLogger("")
8288
esOTelConfig, err := elasticsearchtranslate.ToOTelConfig(esConfig, logger)

libbeat/otelbeat/beatconverter/beatconverter_test.go

Lines changed: 55 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -64,9 +64,9 @@ exporters:
6464
mode: bodymap
6565
compression: gzip
6666
compression_params:
67-
level: 1
67+
level: 1
6868
auth:
69-
authenticator: beatsauth
69+
authenticator: beatsauth
7070
`
7171

7272
func TestConverter(t *testing.T) {
@@ -211,7 +211,7 @@ exporters:
211211
max_retries: 3
212212
user: elastic-cloud
213213
logs_dynamic_pipeline:
214-
enabled: true
214+
enabled: true
215215
max_conns_per_host: 1
216216
sending_queue:
217217
batch:
@@ -230,7 +230,7 @@ exporters:
230230
compression_params:
231231
level: 1
232232
auth:
233-
authenticator: beatsauth
233+
authenticator: beatsauth
234234
receivers:
235235
filebeatreceiver:
236236
filebeat:
@@ -326,6 +326,43 @@ service:
326326
compareAndAssert(t, expOutput, input)
327327

328328
})
329+
330+
t.Run("test elasticsearch exporter with enabled false", func(t *testing.T) {
331+
var supportedInput = `
332+
receivers:
333+
filebeatreceiver:
334+
output:
335+
elasticsearch:
336+
enabled: false
337+
hosts: ["https://localhost:9200"]
338+
service:
339+
pipelines:
340+
logs:
341+
receivers:
342+
- "filebeatreceiver"
343+
`
344+
345+
var expectedOutput = `
346+
receivers:
347+
filebeatreceiver:
348+
output:
349+
otelconsumer: null
350+
service:
351+
telemetry:
352+
metrics:
353+
level: none
354+
pipelines:
355+
logs:
356+
receivers:
357+
- filebeatreceiver
358+
`
359+
input := newFromYamlString(t, supportedInput)
360+
err := c.Convert(context.Background(), input)
361+
require.NoError(t, err, "error converting beats elasticsearch-output config")
362+
363+
expOutput := newFromYamlString(t, expectedOutput)
364+
compareAndAssert(t, expOutput, input)
365+
})
329366
}
330367

331368
func TestLogLevel(t *testing.T) {
@@ -418,25 +455,25 @@ service:
418455
pipelines:
419456
logs:
420457
receivers:
421-
- filebeatreceiver
458+
- filebeatreceiver
422459
`
423460

424461
commonOTelCfg := `
425462
extensions:
426463
beatsauth:
427464
idle_connection_timeout: 3s
428465
proxy_disable: false
429-
timeout: 1m30s
466+
timeout: 1m30s
430467
receivers:
431468
filebeatreceiver:
432469
output:
433-
otelconsumer: null
470+
otelconsumer: null
434471
exporters:
435472
elasticsearch:
436473
endpoints:
437474
- http://localhost:9200
438475
logs_dynamic_pipeline:
439-
enabled: true
476+
enabled: true
440477
retry:
441478
enabled: true
442479
initial_interval: 1s
@@ -446,7 +483,7 @@ exporters:
446483
password: changeme
447484
user: elastic
448485
mapping:
449-
mode: bodymap
486+
mode: bodymap
450487
compression: gzip
451488
compression_params:
452489
level: 1
@@ -473,7 +510,7 @@ service:
473510
exporters:
474511
- elasticsearch
475512
receivers:
476-
- filebeatreceiver
513+
- filebeatreceiver
477514
`
478515

479516
tests := []struct {
@@ -490,7 +527,7 @@ receivers:
490527
events: 3200
491528
flush:
492529
min_events: 1600
493-
timeout: 10s
530+
timeout: 10s
494531
extensions:
495532
beatsauth:
496533
idle_connection_timeout: 3s
@@ -502,7 +539,7 @@ exporters:
502539
max_size: 1600
503540
num_consumers: 1
504541
queue_size: 3200
505-
max_conns_per_host: 1
542+
max_conns_per_host: 1
506543
`,
507544
},
508545
{
@@ -515,7 +552,7 @@ receivers:
515552
events: 12800
516553
flush:
517554
min_events: 1600
518-
timeout: 5s
555+
timeout: 5s
519556
extensions:
520557
beatsauth:
521558
idle_connection_timeout: 15s
@@ -527,7 +564,7 @@ exporters:
527564
max_size: 1600
528565
num_consumers: 4
529566
queue_size: 12800
530-
max_conns_per_host: 4
567+
max_conns_per_host: 4
531568
`,
532569
},
533570
{
@@ -540,7 +577,7 @@ receivers:
540577
events: 3200
541578
flush:
542579
min_events: 1600
543-
timeout: 20s
580+
timeout: 20s
544581
extensions:
545582
beatsauth:
546583
idle_connection_timeout: 1s
@@ -555,7 +592,7 @@ exporters:
555592
max_conns_per_host: 1
556593
retry:
557594
initial_interval: 5s
558-
max_interval: 5m0s
595+
max_interval: 5m0s
559596
`,
560597
},
561598
{
@@ -568,7 +605,7 @@ receivers:
568605
events: 4100
569606
flush:
570607
min_events: 2050
571-
timeout: 1s
608+
timeout: 1s
572609
extensions:
573610
beatsauth:
574611
idle_connection_timeout: 1m0s
@@ -583,7 +620,7 @@ exporters:
583620
max_conns_per_host: 1
584621
retry:
585622
initial_interval: 1s
586-
max_interval: 1m0s
623+
max_interval: 1m0s
587624
`}}
588625

589626
commonOTeMap := newFromYamlString(t, commonOTelCfg)

0 commit comments

Comments
 (0)