proposal: Add tracking latencies and flamegraphs in CI
- Dominant language
- C++
- Stars
- 28.9k
- Forks
- 5.6k
- Avg merge
- 1d 22h
- Merged PRs (30d)
- 430
Description
Filing this issue to get a feel for interest in this
### Goal:
Add a means to track and persist latency numbers and perf visualizations like flamegraphs over time in CI. This would allow us to track how we're doing over time as well as have perf information
at hand when a latency regression is observed.
### Description:
Nighthawk uses a lightweight python-based framework for integration testing.
This framework serves as a [basis for writing NH's own benchmarks](https://github.com/envoyproxy/nighthawk/tree/master/benchmarks).
With a small bit of modification this could be modified to:
- make consumption very low friction in foreign code bases (like Envoy)
- allow it to inject proxies in the between the client and test server. For example, Envoy at a certain sha
- scavenge tests from external locations
More details, and some concrete scripts for getting an idea of what this would look like can be found [here](https://github.com/oschaaf/nighthawk/blob/ci-integration/benchmarks/README.md).
/cc @danzh2010 @htuch
Contributor guide
Assessment
This issue has not been assessed yet.