elastic / elastic/docs-content

[Website]: Confusion generated by "OpenTelemetry collector capability is built into Elastic Agent"

Open
#8,234 1 comment 0 reactions 0 assignees View on GitHub
source:web Team:SKI
Dominant language
No language data
Stars
47
Forks
261
Avg merge
3d 21h
Merged PRs (30d)
141

Description

### Before you submit

- [x] This issue is about a documentation page, flow, or piece of content.

### Type of issue

_No response_

### What documentation page or section is affected

https://www.elastic.co/docs/reference/edot-collector

### What happened?

There might be quite some confusion after the "rename" of EDOT Collector to "Elastic Agent as Openetelemetry Collector".

> In previous versions, the EDOT Collector was a standalone product. From this version onwards, this OpenTelemetry collector capability is built into Elastic Agent.

This is true: on 9.5 we start using OTel Collector for the 99% of the components running under the hood.
But EA using OTel Collector under the hood is DIFFERENT from using EA in OTel mode by a final user.

But this leaves users quite confused:
- Am I using EDOT Collector when using Elastic Agent?
- I am using Elastic Agent when using EDOT Collector?
- What if I was using Elastic Agent Standalone?

The very high level view is:
- EA Managed by Fleet -> you configure it via Fleet -> Fleet takes care of configuring how/what gets actually used under the hood -> On 9.5, most of components/units get translated into Elastic OTel Collector config and most units run as "beats-as-receivers".
- EA Standalone -> the user configures it via `elastic-agent.yml`, using the configuration options / format of Elastic Agent -> EA takes care of translating the config and decide how/what will be used for each unit/component
- EA in OTel Mode -> the user configures it via `otelcol.yml`, using configuration options of OTel Collector upstream

On 9.2+ there is the "new" concept of "OTel" runtime, which is different from using EA as OTel collector.

Comments:

1) **One can keep using Elastic Agent Standalone.** Ideally nothing changes for the end user but under the hood it will run using an OTel collector as the "engine" (if the runtime is set to `otel` mode). Still the configuration allowed is still the one of Elastic Agent.

2) A user using Elastic Agent Standalone might switch to Elastic Agent in OTel mode, but **there is 0 migration guide** at the moment, nor we explain what are the features one loses/gains from one to another.
A very simple example are the logging settings (and I'm just scratching the surface):
- EA Standalone: one uses the `agent.*` settings
- EA in OTel mode: one must use the "standard" OpenTelemetry Collector settings

So in this specific example, for EA Standalone they can follow https://www.elastic.co/docs/reference/fleet/elastic-agent-standalone-logging-config#elastic-agent-standalone-logging-settings

For EA as OTel:
```
service:
telemetry:
logs:
level: info
output_paths: ["/var/log/otelcol/collector.log"]
```
And then setup a logrotate at OS level

FYI @nimarezainia

### Additional info

_No response_

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the affected EDOT Collector page at https://www.elastic.co/docs/reference/edot-collector, then compare the linked Elastic Agent Standalone logging section and the distinctions described in this issue. Clarify the differences between Fleet-managed, standalone, and OTel modes, including configuration and migration implications; done means users can identify their mode and know which configuration guidance applies.

Written by the indexing model from the issue text.

Assessment

Domain
documentation
Issue type
Documentation
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.