Jmeter - 用于读取文本文件的 Beanshell 脚本,将其解析为关键字 .e.g (start) 并从文本文件中获取相应的时间戳
Jmeter - Beanshell script to read a text file parse it for keyword .e.g (start) and get correspomsing timestamp from text file
我在 jmeter 中获取日志运行时并将其保存到文本文件以供进一步处理。
我需要针对特定关键字(如 start 和 stop)解析文本文件,并从文本文件中获取等效的时间戳,然后获取它们之间的差异以获得处理操作的时间。
谁能告诉我如何在 Jmeter 中使用 Beanshell 脚本来完成此操作。或者有没有其他更好的方法来满足上述要求?
建议尽可能避免编写脚本,因此首先尝试使用内置的 JMeter 组件,例如:
- __FileToString() function - 将文件读入 JMeter 变量
- Regular Expression Extractor - 提取 "start" 和 "end" 时间戳
- __longSum() function - 获取开始时间和结束时间之间的差值
如果您必须编写脚本,请考虑使用性能最佳的选项 Groovy language。
在 JMeter 3.3 中,您有新功能 __timeShift,其中 return 当前时间,
您可以使用保存在起始变量中:${__timeShift(,,,,start)}
然后保存停止变量${__timeShift(,,,,stop)}
然后使用脚本来计算差异,例如${__groovy(${stop} - ${start})}
我在 jmeter 中获取日志运行时并将其保存到文本文件以供进一步处理。 我需要针对特定关键字(如 start 和 stop)解析文本文件,并从文本文件中获取等效的时间戳,然后获取它们之间的差异以获得处理操作的时间。
谁能告诉我如何在 Jmeter 中使用 Beanshell 脚本来完成此操作。或者有没有其他更好的方法来满足上述要求?
建议尽可能避免编写脚本,因此首先尝试使用内置的 JMeter 组件,例如:
- __FileToString() function - 将文件读入 JMeter 变量
- Regular Expression Extractor - 提取 "start" 和 "end" 时间戳
- __longSum() function - 获取开始时间和结束时间之间的差值
如果您必须编写脚本,请考虑使用性能最佳的选项 Groovy language。
在 JMeter 3.3 中,您有新功能 __timeShift,其中 return 当前时间,
您可以使用保存在起始变量中:${__timeShift(,,,,start)}
然后保存停止变量${__timeShift(,,,,stop)}
然后使用脚本来计算差异,例如${__groovy(${stop} - ${start})}