Commit 1a4d28c
* beatconverter: Ignore disabled elasticsearch output (#47154)
## Proposed commit message
Similar to the logstash output:
https://github.com/elastic/beats/blob/52c5045638c8116550dba017bb455802577a5513/libbeat/otelbeat/beatconverter/beatconverter.go#L82-L85
Fixes #46113
## How to test this PR locally
filebeat.yaml:
```yaml
filebeat.inputs:
- type: filestream
id: my-filestream-id
enabled: true
paths:
- /path/to/file.json
output.elasticsearch:
enabled: false
hosts: ["localhost:9200"]
```
compile: `cd x-pack/filebeat/ && mage buildOtel`
test with:
1. `x-pack/filebeat/filebeat -c filebeat.yaml -e`
2. `x-pack/filebeat/filebeat otel --config filebeat-task.yaml`
## Related issues
- Closes #46113
## Logs
### Before
```
2025-10-16T11:39:52.274+0200 DEBUG elasticsearch/config_otel.go:222 Failed to get queue size: missing field accessing 'queue'
2025-10-16T11:39:52.298+0200 info instance/beat.go:178 Home path: [.] Config path: [.] Data path: [./data] Logs path: [./logs] {"resource": {"service.instance.id": "1f0db8b8-b116-48be-8dfc-bb2aff2578e6", "service.name": "otel", "service.version": "9.3.0"}, "otelcol.component.id": "filebeatreceiver", "otelcol.component.kind": "receiver", "otelcol.signal": "logs", "service.name": "filebeat", "ecs.version": "1.6.0"}
2025-10-16T11:39:52.298+0200 info instance/beat.go:186 Beat ID: 440437c7-3a3f-409a-ba2e-5aa89d0ab790 {"resource": {"service.instance.id": "1f0db8b8-b116-48be-8dfc-bb2aff2578e6", "service.name": "otel", "service.version": "9.3.0"}, "otelcol.component.id": "filebeatreceiver", "otelcol.component.kind": "receiver", "otelcol.signal": "logs", "service.name": "filebeat", "ecs.version": "1.6.0"}
2025-10-16T11:39:52.324+0200 info publisher pipeline/module.go:105 Beat name: laptop {"resource": {"service.instance.id": "1f0db8b8-b116-48be-8dfc-bb2aff2578e6", "service.name": "otel", "service.version": "9.3.0"}, "otelcol.component.id": "filebeatreceiver", "otelcol.component.kind": "receiver", "otelcol.signal": "logs", "service.name": "filebeat", "ecs.version": "1.6.0"}
2025-10-16T11:39:52.325+0200 error modules fileset/modules.go:157 Not loading modules. Module directory not found: module {"resource": {"service.instance.id": "1f0db8b8-b116-48be-8dfc-bb2aff2578e6", "service.name": "otel", "service.version": "9.3.0"}, "otelcol.component.id": "filebeatreceiver", "otelcol.component.kind": "receiver", "otelcol.signal": "logs", "service.name": "filebeat", "ecs.version": "1.6.0"}
2025-10-16T11:39:52.325+0200 warn beater/filebeat.go:174 Filebeat is unable to load the ingest pipelines for the configured modules because the Elasticsearch output is not configured/enabled. If you have already loaded the ingest pipelines or are using Logstash pipelines, you can ignore this warning. {"resource": {"service.instance.id": "1f0db8b8-b116-48be-8dfc-bb2aff2578e6", "service.name": "otel", "service.version": "9.3.0"}, "otelcol.component.id": "filebeatreceiver", "otelcol.component.kind": "receiver", "otelcol.signal": "logs", "service.name": "filebeat", "ecs.version": "1.6.0"}
2025-10-16T11:39:52.325+0200 info builders/extension.go:50 Development component. May change in the future. {"resource": {"service.instance.id": "1f0db8b8-b116-48be-8dfc-bb2aff2578e6", "service.name": "otel", "service.version": "9.3.0"}, "otelcol.component.id": "beatsauth", "otelcol.component.kind": "extension"}
2025-10-16T11:39:52.330+0200 info [email protected]/service.go:222 Starting otel... {"resource": {"service.instance.id": "1f0db8b8-b116-48be-8dfc-bb2aff2578e6", "service.name": "otel", "service.version": "9.3.0"}, "Version": "9.3.0", "NumCPU": 12}
2025-10-16T11:39:52.330+0200 info extensions/extensions.go:41 Starting extensions... {"resource": {"service.instance.id": "1f0db8b8-b116-48be-8dfc-bb2aff2578e6", "service.name": "otel", "service.version": "9.3.0"}}
2025-10-16T11:39:52.330+0200 info extensions/extensions.go:45 Extension is starting... {"resource": {"service.instance.id": "1f0db8b8-b116-48be-8dfc-bb2aff2578e6", "service.name": "otel", "service.version": "9.3.0"}, "otelcol.component.id": "beatsauth", "otelcol.component.kind": "extension"}
2025-10-16T11:39:52.331+0200 info extensions/extensions.go:62 Extension started. {"resource": {"service.instance.id": "1f0db8b8-b116-48be-8dfc-bb2aff2578e6", "service.name": "otel", "service.version": "9.3.0"}, "otelcol.component.id": "beatsauth", "otelcol.component.kind": "extension"}
2025-10-16T11:39:52.331+0200 info [email protected]/service.go:245 Everything is ready. Begin running and processing data. {"resource": {"service.instance.id": "1f0db8b8-b116-48be-8dfc-bb2aff2578e6", "service.name": "otel", "service.version": "9.3.0"}}
2025-10-16T11:39:52.331+0200 info fbreceiver/receiver.go:27 starting filebeat receiver {"resource": {"service.instance.id": "1f0db8b8-b116-48be-8dfc-bb2aff2578e6", "service.name": "otel", "service.version": "9.3.0"}, "otelcol.component.id": "filebeatreceiver", "otelcol.component.kind": "receiver", "otelcol.signal": "logs", "service.name": "filebeat", "ecs.version": "1.6.0"}
2025-10-16T11:39:52.332+0200 info filebeat memlog/store.go:134 Finished loading transaction log file for '/home/orestis/src/beats/data/registry/filebeat'. Active transaction id=0 {"resource": {"service.instance.id": "1f0db8b8-b116-48be-8dfc-bb2aff2578e6", "service.name": "otel", "service.version": "9.3.0"}, "otelcol.component.id": "filebeatreceiver", "otelcol.component.kind": "receiver", "otelcol.signal": "logs", "service.name": "filebeat", "store": "filebeat", "ecs.version": "1.6.0"}
2025-10-16T11:39:52.333+0200 warn beater/filebeat.go:406 Filebeat is unable to load the ingest pipelines for the configured modules because the Elasticsearch output is not configured/enabled. If you have already loaded the ingest pipelines or are using Logstash pipelines, you can ignore this warning. {"resource": {"service.instance.id": "1f0db8b8-b116-48be-8dfc-bb2aff2578e6", "service.name": "otel", "service.version": "9.3.0"}, "otelcol.component.id": "filebeatreceiver", "otelcol.component.kind": "receiver", "otelcol.signal": "logs", "service.name": "filebeat", "ecs.version": "1.6.0"}
2025-10-16T11:39:52.333+0200 info registrar registrar/registrar.go:103 States Loaded from registrar: 0 {"resource": {"service.instance.id": "1f0db8b8-b116-48be-8dfc-bb2aff2578e6", "service.name": "otel", "service.version": "9.3.0"}, "otelcol.component.id": "filebeatreceiver", "otelcol.component.kind": "receiver", "otelcol.signal": "logs", "service.name": "filebeat", "ecs.version": "1.6.0"}
2025-10-16T11:39:52.333+0200 info crawler beater/crawler.go:76 Loading Inputs: 1 {"resource": {"service.instance.id": "1f0db8b8-b116-48be-8dfc-bb2aff2578e6", "service.name": "otel", "service.version": "9.3.0"}, "otelcol.component.id": "filebeatreceiver", "otelcol.component.kind": "receiver", "otelcol.signal": "logs", "service.name": "filebeat", "ecs.version": "1.6.0"}
2025-10-16T11:39:52.334+0200 info crawler beater/crawler.go:148 Starting input (ID: 1771212043283374986) {"resource": {"service.instance.id": "1f0db8b8-b116-48be-8dfc-bb2aff2578e6", "service.name": "otel", "service.version": "9.3.0"}, "otelcol.component.id": "filebeatreceiver", "otelcol.component.kind": "receiver", "otelcol.signal": "logs", "service.name": "filebeat", "ecs.version": "1.6.0"}
2025-10-16T11:39:52.334+0200 info crawler beater/crawler.go:111 Loading and starting Inputs completed. Enabled inputs: 1 {"resource": {"service.instance.id": "1f0db8b8-b116-48be-8dfc-bb2aff2578e6", "service.name": "otel", "service.version": "9.3.0"}, "otelcol.component.id": "filebeatreceiver", "otelcol.component.kind": "receiver", "otelcol.signal": "logs", "service.name": "filebeat", "ecs.version": "1.6.0"}
2025-10-16T11:39:52.334+0200 info input.filestream compat/compat.go:141 Input 'filestream' starting {"resource": {"service.instance.id": "1f0db8b8-b116-48be-8dfc-bb2aff2578e6", "service.name": "otel", "service.version": "9.3.0"}, "otelcol.component.id": "filebeatreceiver", "otelcol.component.kind": "receiver", "otelcol.signal": "logs", "service.name": "filebeat", "id": "my-filestream-id", "ecs.version": "1.6.0"}
2025-10-16T11:39:52.335+0200 info input.filestream.metric_registry inputmon/input.go:182 registering {"resource": {"service.instance.id": "1f0db8b8-b116-48be-8dfc-bb2aff2578e6", "service.name": "otel", "service.version": "9.3.0"}, "otelcol.component.id": "filebeatreceiver", "otelcol.component.kind": "receiver", "otelcol.signal": "logs", "service.name": "filebeat", "id": "my-filestream-id", "registry_id": "my-filestream-id", "input_id": "my-filestream-id", "input_type": "filestream", "ecs.version": "1.6.0"}
```
### After
```
x-pack/filebeat/filebeat otel --config filebeat-task.yaml
Error: invalid configuration: no exporter configuration specified in config
service::pipelines::logs: must have at least one exporter
Usage:
filebeat otel [flags]
filebeat otel [command]
Available Commands:
inspect Run this command to inspect the OTel configuration translated from the Beats config
Flags:
--config string path to filebeat config file (default "filebeat-otel.yml")
-h, --help help for otel
Global Flags:
-E, --E setting=value Configuration overwrite
-M, --M setting=value Module configuration overwrite
-c, --c string Configuration file, relative to path.config (default "filebeat.yml")
-d, --d string Enable certain debug selectors
-e, --e Log to stderr and disable syslog/file output
--environment environmentVar set environment being ran in (default default)
--path.config string Configuration path
--path.data string Data path
--path.home string Home path
--path.logs string Logs path
--plugin pluginList Load additional plugins
--strict.perms Strict permission checking on config files (default true)
-v, --v Log at INFO level
Use "filebeat otel [command] --help" for more information about a command.
```
(cherry picked from commit f1267b8)
# Conflicts:
# libbeat/otelbeat/beatconverter/beatconverter_test.go
* fix conflicts
---------
Co-authored-by: Orestis Floros <[email protected]>
1 parent 2039314 commit 1a4d28c
File tree
2 files changed
+61
-18
lines changed- libbeat/otelbeat/beatconverter
2 files changed
+61
-18
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
77 | 77 | | |
78 | 78 | | |
79 | 79 | | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
80 | 86 | | |
81 | 87 | | |
82 | 88 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
64 | 64 | | |
65 | 65 | | |
66 | 66 | | |
67 | | - | |
| 67 | + | |
68 | 68 | | |
69 | | - | |
| 69 | + | |
70 | 70 | | |
71 | 71 | | |
72 | 72 | | |
| |||
211 | 211 | | |
212 | 212 | | |
213 | 213 | | |
214 | | - | |
| 214 | + | |
215 | 215 | | |
216 | 216 | | |
217 | 217 | | |
| |||
230 | 230 | | |
231 | 231 | | |
232 | 232 | | |
233 | | - | |
| 233 | + | |
234 | 234 | | |
235 | 235 | | |
236 | 236 | | |
| |||
326 | 326 | | |
327 | 327 | | |
328 | 328 | | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
| 337 | + | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
| 353 | + | |
| 354 | + | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
| 360 | + | |
| 361 | + | |
| 362 | + | |
| 363 | + | |
| 364 | + | |
| 365 | + | |
329 | 366 | | |
330 | 367 | | |
331 | 368 | | |
| |||
418 | 455 | | |
419 | 456 | | |
420 | 457 | | |
421 | | - | |
| 458 | + | |
422 | 459 | | |
423 | 460 | | |
424 | 461 | | |
425 | 462 | | |
426 | 463 | | |
427 | 464 | | |
428 | 465 | | |
429 | | - | |
| 466 | + | |
430 | 467 | | |
431 | 468 | | |
432 | 469 | | |
433 | | - | |
| 470 | + | |
434 | 471 | | |
435 | 472 | | |
436 | 473 | | |
437 | 474 | | |
438 | 475 | | |
439 | | - | |
| 476 | + | |
440 | 477 | | |
441 | 478 | | |
442 | 479 | | |
| |||
446 | 483 | | |
447 | 484 | | |
448 | 485 | | |
449 | | - | |
| 486 | + | |
450 | 487 | | |
451 | 488 | | |
452 | 489 | | |
| |||
473 | 510 | | |
474 | 511 | | |
475 | 512 | | |
476 | | - | |
| 513 | + | |
477 | 514 | | |
478 | 515 | | |
479 | 516 | | |
| |||
490 | 527 | | |
491 | 528 | | |
492 | 529 | | |
493 | | - | |
| 530 | + | |
494 | 531 | | |
495 | 532 | | |
496 | 533 | | |
| |||
502 | 539 | | |
503 | 540 | | |
504 | 541 | | |
505 | | - | |
| 542 | + | |
506 | 543 | | |
507 | 544 | | |
508 | 545 | | |
| |||
515 | 552 | | |
516 | 553 | | |
517 | 554 | | |
518 | | - | |
| 555 | + | |
519 | 556 | | |
520 | 557 | | |
521 | 558 | | |
| |||
527 | 564 | | |
528 | 565 | | |
529 | 566 | | |
530 | | - | |
| 567 | + | |
531 | 568 | | |
532 | 569 | | |
533 | 570 | | |
| |||
540 | 577 | | |
541 | 578 | | |
542 | 579 | | |
543 | | - | |
| 580 | + | |
544 | 581 | | |
545 | 582 | | |
546 | 583 | | |
| |||
555 | 592 | | |
556 | 593 | | |
557 | 594 | | |
558 | | - | |
| 595 | + | |
559 | 596 | | |
560 | 597 | | |
561 | 598 | | |
| |||
568 | 605 | | |
569 | 606 | | |
570 | 607 | | |
571 | | - | |
| 608 | + | |
572 | 609 | | |
573 | 610 | | |
574 | 611 | | |
| |||
583 | 620 | | |
584 | 621 | | |
585 | 622 | | |
586 | | - | |
| 623 | + | |
587 | 624 | | |
588 | 625 | | |
589 | 626 | | |
| |||
0 commit comments