salem84
2/23/2020 - 6:32 PM

K6 Metrics

K6 Metrics

//Counter (cumulative metric)

import { Counter } from "k6/metrics";

var myCounter = new Counter("my_counter");

export default function() {
  myCounter.add(1);
  myCounter.add(2);
};

//Gauge (keep the latest value only)

import { Gauge } from "k6/metrics";

var myGauge = new Gauge("my_gauge");

export default function() {
	myGauge.add(3);
	myGauge.add(1);
	myGauge.add(2);
};
//Rate (keeps track of percentage of values in a series that are non-zero)

import { Rate } from "k6/metrics";

var myRate = new Rate("my_rate");

export default function() {
	myRate.add(true);
	myRate.add(false);
	myRate.add(1);
	myRate.add(0);
};
//Trend (collect trend statistics (min/max/avg/percentiles) for a series of values)

import { Trend } from "k6/metrics";

var myTrend = new Trend("my_trend");

export default function() {
	myTrend.add(1);
	myTrend.add(2);
};
import http from "k6/http";

export default function() {
  var res = http.get("http://httpbin.org");
  console.log("Response time was " + String(res.timings.duration) + " ms");
};
import http from "k6/http";
import { Counter } from "k6/metrics";

let CounterErrors = new Counter("Errors");

export default function() {
   let res = http.get("https://test.loadimpact.com");
   let contentOK = res.html("h2").text().includes("Welcome to the LoadImpact.com demo site!");
   if (!contentOK) {
      CounterErrors.add(1);
   }
};