[Feature Request] Built-in load generator and metrics collection #684
Labels
area/analytics
Metrics, statistical estimation, and bandit algorithms for traffic shifting
area/tasks
Iter8 tasks
kind/enhancement
New feature or request
Is your feature request related to a problem? Please describe.
Iter8 currently has a dependency on telemetry (example Prometheus) to collect basic data such as error rate and latency values for a service. If a built-in task could query the application and populate certain built in metrics for the given version(s), conformance and canary tests in Iter8 tutorials can be performed without dependence on any telemetry provider.
Why is the feature useful for Iter8 users?
This feature will enable users to get started with Iter8 without setting up metrics databases for telemetry.
Describe the solution you'd like
A task that can generate load and collect some standard built-in metrics like latency and error rates.
Describe alternatives you've considered
Use built in load generation without metrics collection. This nullifies significant advantages of the above proposal.
Does this issue require a design doc/discussion? If there is a link to the design document/discussions, please provide it below.
This task will make it possible to collect the following metrics for any version of any application.
For example, embedding the following task will enable collection of the above 9 metrics for default and canary versions hosted at their respective URLs. Since there is a payload URL, Iter8 will download the payload from the URL and send post requests with this payload to the two versions.
The task will also support a
loadOnly
option, which when set to true, will not collect any metrics but will simply generate load. Here is a variation of the above task withloadOnly
set to true. Since there is no payload now, the request will be GET requests as opposed to POST above.How will this feature be tested?
How will this feature be documented?
The text was updated successfully, but these errors were encountered: