envoyproxy/envoy

event emission: implement generic event reporting gRPC client

Open

#10.966 aberto em 27 de abr. de 2020

Ver no GitHub
 (1 comment) (0 reactions) (0 assignees)C++ (5.373 forks)batch import
area/observabilityarea/service discoverydesign proposalhelp wanted

Métricas do repositório

Stars
 (27.997 stars)
Métricas de merge de PR
 (Mesclagem média 8d) (378 fundiu PRs em 30d)

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.
  1. 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

Guia do colaborador