Open slimus opened 4 years ago
Latency
Do you mean latency for a certain request in case output-http-track-response
is enabled?
@urbanishimwe it is good question. I think we should show different statistics when we are using different input\output. What do you think?
In terms of architecture, I believe that each of the inputs and outputs should provide own analytics. So analytics API/UI in future will depend on inputs/outputs you have.
HTTP output contributes to a number of replayed requests, latencies (ideally with their distribution), requests per smth and etc. input raw can contribute data about how much requests it intercepts, what is the packet loss, the average size of the request and etc.
And so on.
Comments after sync:
We need to look some statistics and analytics while we replay traffic
How should it work? We should count how many requests\responses per sec goreplay get, how many request per path and per method goreplay get. If it is possible we should show avg (or median) of latency.
Which params we should show?
[ ] Requests count
[ ] Request per second count
[ ] Response per second count
[ ] Request per path count
[ ] Request per method count
[ ] Latency
[ ] Packet loss (later)
[ ] Etc... (@buger please add params which you want to look)
How should it look like?
[ ] Console UI (need to discuss, because we have a lot of information in stdout, may be show statistics after got signal sigusr or other)
[ ] Json response
[ ] Prometheus exporter
Questions?
@buger @arijitAD @urbanishimwe please review this issue and check my vision.
Go stats packages:
https://github.com/segmentio/stats
https://prometheus.io/docs/guides/go-application/