envoyproxy / envoyproxy/envoy

event emission: implement generic event reporting gRPC client

Open
#10,966 1 comment 0 reactions 0 assignees View on GitHub
area/observability area/service discovery design proposal help wanted
Dominant language
C++
Stars
28.9k
Forks
5.6k
Avg merge
1d 22h
Merged PRs (30d)
430

Description

#10407 added proto definitions for a generic event reporting service. This issue tracks implementation details.

1. Using a bidi stream where Envoy updates the emission stream based on responses from the sink gRPC service allows for in-band flexibility. Both for:
- The types of events that Envoy emits, e.g, filter to only health check events.
- The _shape_ of the events emitted, e.g, configure the metrics events to report counters as deltas.
2. The base implementation should account for generic logic, such as:
- Stream establishment, and callbacks for custom logic over messages in the stream
- Handling versioning of in-band config updates so that the server-side gRPC service is aware of the configuration of the data stream -- useful when the shape of the data can change via in-band config updates.

Relates to https://github.com/envoyproxy/envoy/issues/8970 and https://github.com/envoyproxy/envoy/issues/10968

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.