JMeter:在每个线程执行后检查 JDBC 连接打开或关闭

问题描述 投票:0回答:0

我试图在每个线程执行后检查 JDBC 连接状态,无论它是关闭还是打开?。

在我的线程组中有三件事

  1. JDBC连接配置

  2. JDBC 请求(从员工中选择 *)

  3. JSR223 后处理器

    剧本:

    def connection = org.apache.jmeter.protocol.jdbc.config.DataSourceElement.getConnection('ConnectionString') log.info('*************Connection closed: '+ connection.isClosed())

上面的脚本在循环计数为 1 时记录每个线程执行后的连接状态。一旦我将循环计数更改为 >= 2,就会出现问题。它开始在错误下方抛出错误

JSR223 脚本、JSR223 后处理器中的问题 javax.script.ScriptException: java.sql.SQLException: 无法获取连接,池错误超时等待空闲对象

当我移除后处理器并增加循环计数时,它工作正常。

日志:


2023-02-19 16:15:33,599 信息 o.a.j.t.JMeterThread:线程启动:DB 线程组 2-1

2023-02-19 16:15:38,054 调试 o.a.j.p.j.AbstractJDBCTestElement:执行 jdbc:SELECT * FROM EMPLOYEE

2023-02-19 16:15:38,623 信息 o.a.j.e.J.JSR223 后处理器:***************连接关闭:false

2023-02-19 16:15:58,637 错误 o.a.j.e.JSR223PostProcessor:JSR223 脚本、JSR223 PostProcessor 中的问题 javax.script.ScriptException: java.sql.SQLException: 无法获取连接,池错误超时等待空闲对象,borrowMaxWaitDuration=PT10S 在 org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.eval(GroovyScriptEngineImpl.java:320) ~[groovy-jsr223-3.0.11.jar:3.0.11] 在 org.codehaus.groovy.jsr223.GroovyCompiledScript.eval(GroovyCompiledScript.java:71) ~

jdbc groovy jmeter jsr223
© www.soinside.com 2019 - 2024. All rights reserved.