Menu
Open source
Rate
Rate is an object for representing a custom metric keeping track of the percentage of added values that are non-zero. It is one of the four custom metrics.
Parameter | Type | Description |
---|---|---|
name | string | The name of the custom metric. |
Method | Description |
---|---|
Rate.add(value, [tags]) | Add a value to the rate metric. |
Rate usage in Thresholds
When Rate
is used in a threshold expression, the variable must be called rate
(lower case).
For example:
rate < 0.1
// less than 10%rate >= 0.9
// more or equal to 90%
The value of the rate
variable ranges between 0.00
and 1.00
.
Examples
JavaScript
import { Rate } from 'k6/metrics';
const myRate = new Rate('my_rate');
export default function () {
myRate.add(true);
myRate.add(false);
myRate.add(1);
myRate.add(0, { tag1: 'value', tag2: 'value2' });
}
JavaScript
import { Rate } from 'k6/metrics';
import { sleep } from 'k6';
import http from 'k6/http';
const errorRate = new Rate('errorRate');
export const options = {
vus: 1,
duration: '5m',
thresholds: {
errorRate: [
// more than 10% of errors will abort the test
{ threshold: 'rate < 0.1', abortOnFail: true, delayAbortEval: '1m' },
],
},
};
export default function () {
const resp = http.get('https://test-api.k6.io/public/crocodiles/1/');
errorRate.add(resp.status >= 400);
sleep(1);
}
Was this page helpful?
Related resources from Grafana Labs
Additional helpful documentation, links, and articles:
Video
Performance testing and observability in Grafana Cloud
In this webinar, learn how Grafana Cloud k6 offers you the best developer experience for performance testing.
User-centered observability: load testing, real user monitoring, and synthetics
Learn how to use load testing, synthetic monitoring, and real user monitoring (RUM) to understand end users' experience of your apps. Watch on demand.