envoyproxy / envoyproxy/envoy

proposal: interval reporting for network access loggers

Open
#10,936 3 comments 0 reactions 0 assignees View on GitHub
area/access_log help wanted
Dominant language
C++
Stars
28.9k
Forks
5.6k
Avg merge
1d 20h
Merged PRs (30d)
428

Description

Network access loggers can be attached to listeners and tcp_proxies. They report once the connection is closed. This is a problem for long-running, stalled, and slow connections, since there is no telemetry until it's over, which complicates debugging of connection handling issues.

This proposal is to add an option, e.g. `interval_duration: 10s`, to invoke the access loggers `log()` function repeatedly (and immediately on the connection establishment). This means some data might not be populated in StreamInfo, so the access log needs to distinguish between missing and not-yet-populated states.

The alternative is to push down the functionality into the access log extension itself. For that to be possible:
1. We would need ability to set up timers from FactoryContext.
2. The latter point stands: we should be able to distinguish between missing and not yet defined.

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.