elastic / elastic/beats

[Filebeat] Add health status reporting to Redis input

Open
#44,652 2 comments 0 reactions 0 assignees View on GitHub
enhancement Filebeat Stalled Team:Elastic-Agent-Data-Plane
Dominant language
Go
Stars
12.7k
Forks
5k
Avg merge
2d 15m
Merged PRs (30d)
385

Description

Update the Redis input to report its health status, providing better visibility into the operational state for users.

The Redis input should report its health status using the [`context.UpdateStatus()`](https://github.com/elastic/beats/blob/9190f776f5fb612a880cb013a9eec8a49fe17afd/filebeat/input/v2/input.go#L112) method. Status changes should only be reported when the status actually changes (don't repeatedly send HEALTHY if the status is already HEALTHY).

### Status Reporting
The input should report the following states:

- **STARTING**: TBD
- **CONFIGURING**: TBD
- **HEALTHY**: TBD
- **DEGRADED**: TBD
- **FAILED**: TBD

Include relevant context information with non-HEALTHY states:

- TBD

## References
See the CEL input implementation for reference:
https://github.com/elastic/beats/blob/6409d005a31e0147a40f0872794880b3df15a69c/x-pack/filebeat/input/cel/input.go#L111

Contributor guide

Open the contributing guide

Research direction

Start by reading the Redis input and the input/v2 context.UpdateStatus() API, then compare the CEL input implementation at x-pack/filebeat/input/cel/input.go. Clarify the meanings of the five listed states and the required context for non-HEALTHY states. Done means status changes are reported only when they change and all agreed states are covered.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, redis
Domain
observability-sre
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.