elastic / elastic/fleet-server

Fleet Server Native OTLP Output Support for Enhanced Gateway Integration

Open
#7,527 0 comments 0 reactions 0 assignees View on GitHub
Team:Elastic-Agent-Control-Plane
Dominant language
Go
Stars
113
Forks
117
Avg merge
1d 16h
Merged PRs (30d)
112

Description

This feature request proposes adding native OTLP (OpenTelemetry Protocol) output configuration support in Fleet Server to enable direct integration with EDOT Gateway deployments and external OpenTelemetry endpoints through both gRPC and HTTP protocols.

## Background

Currently, Fleet Server supports various output types for data forwarding, but lacks native OTLP output capabilities. While EDOT Collectors can be configured with OTLP outputs in standalone mode, this configuration cannot be managed centrally through Fleet Server's output settings.

The current Elastic documentation recommends [EDOT Gateway deployments](https://www.elastic.co/docs/reference/edot-collector/modes#gateway-requirements-for-self-managed-environments) for enterprise environments, and individual collectors can be configured with [OTLP outputs for gateway mode](https://www.elastic.co/docs/reference/edot-collector/config/default-config-standalone#gateway-mode). However, centralized management of these OTLP configurations through [Fleet Server output settings](https://www.elastic.co/docs/reference/fleet/fleet-settings#output-settings) is not currently available.

## Problem Statement

### Current Limitations
- **Configuration Fragmentation**: OTLP outputs must be configured individually per collector in standalone mode
- **Management Complexity**: No centralized control over OTLP endpoint configurations across managed agents
- **Deployment Inconsistency**: Different configuration approaches for gateway vs. direct output scenarios
- **Operational Overhead**: Manual configuration updates across multiple collectors when gateway endpoints change

### User Pain Points
- DevOps teams cannot centrally manage OTLP output configurations
- Difficult to implement consistent routing policies across all managed collectors
- Complex rollout procedures for gateway endpoint changes
- Limited flexibility in hybrid deployment scenarios (some agents to gateway, others to external endpoints)

## Proposed Solution

Add native OTLP output support to Fleet Server's output configuration, enabling centralized management of OpenTelemetry Protocol endpoints for all managed agents.

### Architecture Overview

```
┌─────────────────┐ OTLP ┌───────────────────┐
│ EDOT Collectors │ ────────► │ EDOT Gateway │
│ (Fleet Managed) │ │ (Fleet Managed) │
└─────────────────┘ └───────────────────┘


┌───────────────────────┐
│ Backend Observability │
│ Cluster │
└───────────────────────┘
```

### Example

Image

Contributor guide

Open the contributing guide

Research direction

Start with Fleet Server's output settings and the linked Fleet output documentation, then trace how existing output types are configured and delivered. Define the gRPC and HTTP OTLP configuration requirements and confirm that managed agents can receive centralized gateway or external endpoint settings; done means both protocols are supported consistently through Fleet Server.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, grpc
Domain
backend, observability-sre
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.