如何捕获JMeter中UTC的开始和结束时间之间的持续时间

时间:2016-06-26 15:51:55

标签: jmeter utc

我在JMeter中使用正则表达式变量捕获了大约10K的开始和结束时间戳,但它们是 UTC格式,如下所示'2016-06-24T18:25:03.621Z'。我需要计算这些时间戳之间的持续时间。

如果有人能为我提供线索,我感激不尽?

1 个答案:

答案 0 :(得分:2)

您可以将ISO 8601 dates(就像您提供的那样)转换为使用Unix epoch Beanshell Test Elements开始后的毫秒数和以下代码:

import javax.xml.bind.DatatypeConverter;

vars.put("old_date", "2016-06-24T18:25:03.621Z");

Calendar cal = DatatypeConverter.parseDateTime(vars.get("old_date"));

Date new_date = cal.getTime();
long new_date_ms = new_date.getTime();

log.info("Date in milliseconds: " + new_date_ms);

演示:

Beanshell Demo

long值执行算术运算非常简单,例如:

long date1 = //code to convert ISO 8601 date to long as above
long date2 = //the same for date2

long delta = date2 - date1; //calculate the difference
vars.put("delta", String.valueOf("delta")); // store the result into a JMeter Variable