file-type

Grape-middleware-logger:Grape应用日志记录中间件详解

ZIP文件

下载需积分: 50 | 20KB | 更新于2024-12-01 | 7 浏览量 | 0 下载量 举报 收藏
download 立即下载
它能够记录诸如请求路径、参数、端点类名称和处理程序、回应状态以及请求的持续时间等详细信息,还包括对异常情况的捕获。该中间件旨在帮助开发者监控和调试他们的 API 应用程序,确保能够轻松地追踪潜在问题和性能瓶颈。" Grape框架是Ruby编程语言的模块,用于方便地创建REST-ful API服务,是Ruby on Rails框架的一部分。它设计简洁,易于使用,且可以轻松地集成到任何Ruby项目中。通过使用Grape,开发者可以定义API的版本,并在其基础上定义资源和API的端点(endpoints),使得API开发既结构化又灵活。 grape-middleware-logger中间件是为Grape框架提供日志记录功能的一个工具。它的工作方式是作为处理HTTP请求的中间件,对每个通过Grape API的请求进行记录,以便跟踪和分析。这种中间件是基于Grape的中间件架构设计的,允许开发者在请求处理链中插入自定义的行为。在这个案例中,grape-middleware-logger插入了日志记录的行为。 在安装和使用grape-middleware-logger时,首先需要将其添加到应用程序的Gemfile中并执行bundle install来安装gem包。按照给出的描述,需要在Gemfile中添加以下两行代码: ```ruby gem 'grape', '>= 0.17' gem 'grape-middleware-logger' ``` 安装完成后,需要在Grape API类中包含并使用这个中间件。通过在Grape的中间件链中插入grape-middleware-logger,可以确保对请求进行记录。代码示例如下: ```ruby require 'grape' require 'grape/middleware/logger' class API < Grape::API # 确保在第一个挂载点之前插入logger中间件 insert_after Grape::Middleware::Formatter, Grape::Middleware::Logger end ``` 在这里,`insert_after`方法用于在Grape的中间件栈中插入logger中间件,确保它在请求格式化之后执行。 grape-middleware-logger中间件在没有配置其他选项的情况下,默认会将日志信息输出到标准输出(STDOUT)。这意味着所有的日志信息都将直接打印在控制台中。输出的信息会包括请求的详细信息,如: - 请求路径 - 参数 - 端点类名称和处理程序 - 响应状态 - 请求的持续时间 - 异常情况 如果发生错误,错误响应的记录将包含异常的细节,例如错误消息和堆栈跟踪,这对于调试和错误分析是非常有帮助的。 总结来说,grape-middleware-logger是Grape API开发者的有力工具,它通过提供详细的请求和错误日志记录,增强了API的可观测性。开发者可以使用这些日志信息来分析性能,诊断问题,并优化他们的API服务。通过合理利用这个中间件,可以大大减少API的维护成本和提升系统的可靠性。

相关推荐

filetype

2025-05-11 02:40:36,596 INFO o.a.j.e.StandardJMeterEngine: Running the test! 2025-05-11 02:40:36,596 INFO o.a.j.s.SampleEvent: List of sample_variables: [] 2025-05-11 02:40:36,597 INFO o.a.j.g.u.JMeterMenuBar: setRunning(true, *local*) 2025-05-11 02:40:36,722 INFO o.a.j.e.StandardJMeterEngine: Starting ThreadGroup: 1 : 线程组 2025-05-11 02:40:36,722 INFO o.a.j.e.StandardJMeterEngine: Starting 1 threads for group 线程组. 2025-05-11 02:40:36,722 INFO o.a.j.e.StandardJMeterEngine: Thread will continue on error 2025-05-11 02:40:36,723 INFO o.a.j.t.ThreadGroup: Starting thread group... number=1 threads=1 ramp-up=1 delayedStart=false 2025-05-11 02:40:36,724 INFO o.a.j.t.ThreadGroup: Started thread group number 1 2025-05-11 02:40:36,724 INFO o.a.j.e.StandardJMeterEngine: All thread groups have been started 2025-05-11 02:40:36,725 INFO o.a.j.t.JMeterThread: Thread started: 线程组 1-1 2025-05-11 02:40:36,967 INFO o.a.j.s.FileServer: Stored: D:/项目/1、联赢激光/SW切换/外购件模型/外购件下载 - 副本.csv 2025-05-11 02:40:40,772 INFO o.a.j.t.JMeterThread: Thread finished: 线程组 1-1 2025-05-11 02:40:40,772 ERROR o.a.j.JMeter: Uncaught exception in thread Thread[线程组 1-1,6,main] java.lang.NoClassDefFoundError: org/apache/ivy/util/MessageLogger at java.lang.Class.forName0(Native Method) ~[?:1.8.0_172] at java.lang.Class.forName(Class.java:264) ~[?:1.8.0_172] at groovy.grape.Grape.getInstance(Grape.java:126) ~[groovy-3.0.11.jar:3.0.11] at groovy.grape.Grape$1.run(Grape.java:163) ~[groovy-3.0.11.jar:3.0.11] at groovy.grape.Grape$1.run(Grape.java:160) ~[groovy-3.0.11.jar:3.0.11] at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_172] at groovy.grape.Grape.grab(Grape.java:160) ~[groovy-3.0.11.jar:3.0.11] at groovy.grape.GrabAnnotationTransformation.visit(GrabAnnotationTransformation.java:377) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.transform.ASTTransformationVisitor.lambda$addPhaseOperationsForGlobalTransforms$4(ASTTransformationVisitor.java:338) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.control.CompilationUnit$ISourceUnitOperation.doPhaseOperation(CompilationUnit.java:901) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:671) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:635) ~[groovy-3.0.11.jar:3.0.11] at groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:389) ~[groovy-3.0.11.jar:3.0.11] at groovy.lang.GroovyClassLoader.lambda$parseClass$3(GroovyClassLoader.java:332) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.runtime.memoize.StampedCommonCache.compute(StampedCommonCache.java:163) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.runtime.memoize.StampedCommonCache.getAndPut(StampedCommonCache.java:154) ~[groovy-3.0.11.jar:3.0.11] at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:330) ~[groovy-3.0.11.jar:3.0.11] at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:314) ~[groovy-3.0.11.jar:3.0.11] at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:257) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.getScriptClass(GroovyScriptEngineImpl.java:336) ~[groovy-jsr223-3.0.11.jar:3.0.11] at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.compile(GroovyScriptEngineImpl.java:181) ~[groovy-jsr223-3.0.11.jar:3.0.11] at org.apache.jmeter.util.JSR223TestElement.processFileOrScript(JSR223TestElement.java:211) ~[ApacheJMeter_core.jar:5.5] at org.apache.jmeter.extractor.JSR223PostProcessor.process(JSR223PostProcessor.java:45) ~[ApacheJMeter_components.jar:5.5] at org.apache.jmeter.threads.JMeterThread.runPostProcessors(JMeterThread.java:968) ~[ApacheJMeter_core.jar:5.5] at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:585) ~[ApacheJMeter_core.jar:5.5] at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:501) ~[ApacheJMeter_core.jar:5.5] at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:268) ~[ApacheJMeter_core.jar:5.5] at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_172] Caused by: java.lang.ClassNotFoundException: org.apache.ivy.util.MessageLogger at java.net.URLClassLoader.findClass(URLClassLoader.java:381) ~[?:1.8.0_172] at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[?:1.8.0_172] at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:1.8.0_172] ... 28 more 2025-05-11 02:40:40,774 INFO o.a.j.e.StandardJMeterEngine: Notifying test listeners of end of test 2025-05-11 02:40:40,774 INFO o.a.j.s.FileServer: Close: D:/项目/1、联赢激光/SW切换/外购件模型/外购件下载 - 副本.csv 2025-05-11 02:40:40,774 INFO o.a.j.g.u.JMeterMenuBar: setRunning(false, *local*) 使用上述脚本一样报错,请解决此问题并给出修改后的JSR223脚本

filetype

2025-05-11 02:49:03,576 INFO o.a.j.e.StandardJMeterEngine: Running the test! 2025-05-11 02:49:03,577 INFO o.a.j.s.SampleEvent: List of sample_variables: [] 2025-05-11 02:49:03,577 INFO o.a.j.s.SampleEvent: List of sample_variables: [] 2025-05-11 02:49:03,578 INFO o.a.j.e.u.CompoundVariable: Note: Function class names must contain the string: '.functions.' 2025-05-11 02:49:03,578 INFO o.a.j.e.u.CompoundVariable: Note: Function class names must not contain the string: '.gui.' 2025-05-11 02:49:03,781 INFO o.a.j.g.u.JMeterMenuBar: setRunning(true, *local*) 2025-05-11 02:49:03,887 INFO o.a.j.e.StandardJMeterEngine: Starting ThreadGroup: 1 : 线程组 2025-05-11 02:49:03,887 INFO o.a.j.e.StandardJMeterEngine: Starting 1 threads for group 线程组. 2025-05-11 02:49:03,887 INFO o.a.j.e.StandardJMeterEngine: Thread will continue on error 2025-05-11 02:49:03,887 INFO o.a.j.t.ThreadGroup: Starting thread group... number=1 threads=1 ramp-up=1 delayedStart=false 2025-05-11 02:49:03,899 INFO o.a.j.t.ThreadGroup: Started thread group number 1 2025-05-11 02:49:03,899 INFO o.a.j.e.StandardJMeterEngine: All thread groups have been started 2025-05-11 02:49:03,901 INFO o.a.j.t.JMeterThread: Thread started: 线程组 1-1 2025-05-11 02:49:03,912 INFO o.a.j.p.h.s.HTTPHCAbstractImpl: Local host = DESKTOP-1UPGIAU 2025-05-11 02:49:03,916 INFO o.a.j.p.h.s.HTTPHC4Impl: HTTP request retry count = 0 2025-05-11 02:49:04,239 INFO o.a.j.s.FileServer: Stored: D:/项目/1、联赢激光/SW切换/外购件模型/外购件下载 - 副本.csv 2025-05-11 02:49:09,346 ERROR o.a.j.e.JSR223PostProcessor: Problem in JSR223 script, JSR223 后置处理程序 javax.script.ScriptException: org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed: General error during conversion: No suitable ClassLoader found for grab java.lang.RuntimeException: No suitable ClassLoader found for grab at groovy.grape.GrapeIvy.chooseClassLoader(GrapeIvy.groovy:179) at groovy.grape.GrapeIvy.grab(GrapeIvy.groovy:249) at groovy.grape.Grape$1.run(Grape.java:174) at groovy.grape.Grape$1.run(Grape.java:160) at java.security.AccessController.doPrivileged(Native Method) at groovy.grape.Grape.grab(Grape.java:160) at groovy.grape.GrabAnnotationTransformation.visit(GrabAnnotationTransformation.java:377) at org.codehaus.groovy.transform.ASTTransformationVisitor.lambda$addPhaseOperationsForGlobalTransforms$4(ASTTransformationVisitor.java:338) at org.codehaus.groovy.control.CompilationUnit$ISourceUnitOperation.doPhaseOperation(CompilationUnit.java:901) at org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:671) at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:635) at groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:389) at groovy.lang.GroovyClassLoader.lambda$parseClass$3(GroovyClassLoader.java:332) at org.codehaus.groovy.runtime.memoize.StampedCommonCache.compute(StampedCommonCache.java:163) at org.codehaus.groovy.runtime.memoize.StampedCommonCache.getAndPut(StampedCommonCache.java:154) at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:330) at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:314) at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:257) at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.getScriptClass(GroovyScriptEngineImpl.java:336) at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.compile(GroovyScriptEngineImpl.java:181) at org.apache.jmeter.util.JSR223TestElement.processFileOrScript(JSR223TestElement.java:211) at org.apache.jmeter.extractor.JSR223PostProcessor.process(JSR223PostProcessor.java:45) at org.apache.jmeter.threads.JMeterThread.runPostProcessors(JMeterThread.java:968) at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:585) at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:501) at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:268) at java.lang.Thread.run(Thread.java:748) 1 error at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.compile(GroovyScriptEngineImpl.java:183) ~[groovy-jsr223-3.0.11.jar:3.0.11] at org.apache.jmeter.util.JSR223TestElement.processFileOrScript(JSR223TestElement.java:211) ~[ApacheJMeter_core.jar:5.5] at org.apache.jmeter.extractor.JSR223PostProcessor.process(JSR223PostProcessor.java:45) ~[ApacheJMeter_components.jar:5.5] at org.apache.jmeter.threads.JMeterThread.runPostProcessors(JMeterThread.java:968) ~[ApacheJMeter_core.jar:5.5] at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:585) ~[ApacheJMeter_core.jar:5.5] at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:501) ~[ApacheJMeter_core.jar:5.5] at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:268) ~[ApacheJMeter_core.jar:5.5] at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_172] Caused by: org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed: General error during conversion: No suitable ClassLoader found for grab java.lang.RuntimeException: No suitable ClassLoader found for grab at groovy.grape.GrapeIvy.chooseClassLoader(GrapeIvy.groovy:179) at groovy.grape.GrapeIvy.grab(GrapeIvy.groovy:249) at groovy.grape.Grape$1.run(Grape.java:174) at groovy.grape.Grape$1.run(Grape.java:160) at java.security.AccessController.doPrivileged(Native Method) at groovy.grape.Grape.grab(Grape.java:160) at groovy.grape.GrabAnnotationTransformation.visit(GrabAnnotationTransformation.java:377) at org.codehaus.groovy.transform.ASTTransformationVisitor.lambda$addPhaseOperationsForGlobalTransforms$4(ASTTransformationVisitor.java:338) at org.codehaus.groovy.control.CompilationUnit$ISourceUnitOperation.doPhaseOperation(CompilationUnit.java:901) at org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:671) at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:635) at groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:389) at groovy.lang.GroovyClassLoader.lambda$parseClass$3(GroovyClassLoader.java:332) at org.codehaus.groovy.runtime.memoize.StampedCommonCache.compute(StampedCommonCache.java:163) at org.codehaus.groovy.runtime.memoize.StampedCommonCache.getAndPut(StampedCommonCache.java:154) at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:330) at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:314) at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:257) at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.getScriptClass(GroovyScriptEngineImpl.java:336) at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.compile(GroovyScriptEngineImpl.java:181) at org.apache.jmeter.util.JSR223TestElement.processFileOrScript(JSR223TestElement.java:211) at org.apache.jmeter.extractor.JSR223PostProcessor.process(JSR223PostProcessor.java:45) at org.apache.jmeter.threads.JMeterThread.runPostProcessors(JMeterThread.java:968) at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:585) at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:501) at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:268) at java.lang.Thread.run(Thread.java:748) 1 error at org.codehaus.groovy.control.ErrorCollector.failIfErrors(ErrorCollector.java:292) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.control.ErrorCollector.addException(ErrorCollector.java:140) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.control.SourceUnit.addException(SourceUnit.java:309) ~[groovy-3.0.11.jar:3.0.11] at groovy.grape.GrabAnnotationTransformation.visit(GrabAnnotationTransformation.java:386) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.transform.ASTTransformationVisitor.lambda$addPhaseOperationsForGlobalTransforms$4(ASTTransformationVisitor.java:338) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.control.CompilationUnit$ISourceUnitOperation.doPhaseOperation(CompilationUnit.java:901) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:671) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:635) ~[groovy-3.0.11.jar:3.0.11] at groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:389) ~[groovy-3.0.11.jar:3.0.11] at groovy.lang.GroovyClassLoader.lambda$parseClass$3(GroovyClassLoader.java:332) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.runtime.memoize.StampedCommonCache.compute(StampedCommonCache.java:163) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.runtime.memoize.StampedCommonCache.getAndPut(StampedCommonCache.java:154) ~[groovy-3.0.11.jar:3.0.11] at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:330) ~[groovy-3.0.11.jar:3.0.11] at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:314) ~[groovy-3.0.11.jar:3.0.11] at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:257) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.getScriptClass(GroovyScriptEngineImpl.java:336) ~[groovy-jsr223-3.0.11.jar:3.0.11] at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.compile(GroovyScriptEngineImpl.java:181) ~[groovy-jsr223-3.0.11.jar:3.0.11] ... 7 more 2025-05-11 02:49:12,595 ERROR o.a.j.e.JSR223PostProcessor: Problem in JSR223 script, JSR223 后置处理程序 javax.script.ScriptException: org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed: General error during conversion: No suitable ClassLoader found for grab java.lang.RuntimeException: No suitable ClassLoader found for grab at groovy.grape.GrapeIvy.chooseClassLoader(GrapeIvy.groovy:179) at groovy.grape.GrapeIvy.grab(GrapeIvy.groovy:249) at groovy.grape.Grape$1.run(Grape.java:174) at groovy.grape.Grape$1.run(Grape.java:160) at java.security.AccessController.doPrivileged(Native Method) at groovy.grape.Grape.grab(Grape.java:160) at groovy.grape.GrabAnnotationTransformation.visit(GrabAnnotationTransformation.java:377) at org.codehaus.groovy.transform.ASTTransformationVisitor.lambda$addPhaseOperationsForGlobalTransforms$4(ASTTransformationVisitor.java:338) at org.codehaus.groovy.control.CompilationUnit$ISourceUnitOperation.doPhaseOperation(CompilationUnit.java:901) at org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:671) at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:635) at groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:389) at groovy.lang.GroovyClassLoader.lambda$parseClass$3(GroovyClassLoader.java:332) at org.codehaus.groovy.runtime.memoize.StampedCommonCache.compute(StampedCommonCache.java:163) at org.codehaus.groovy.runtime.memoize.StampedCommonCache.getAndPut(StampedCommonCache.java:154) at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:330) at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:314) at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:257) at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.getScriptClass(GroovyScriptEngineImpl.java:336) at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.compile(GroovyScriptEngineImpl.java:181) at org.apache.jmeter.util.JSR223TestElement.processFileOrScript(JSR223TestElement.java:211) at org.apache.jmeter.extractor.JSR223PostProcessor.process(JSR223PostProcessor.java:45) at org.apache.jmeter.threads.JMeterThread.runPostProcessors(JMeterThread.java:968) at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:585) at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:501) at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:268) at java.lang.Thread.run(Thread.java:748) 1 error at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.compile(GroovyScriptEngineImpl.java:183) ~[groovy-jsr223-3.0.11.jar:3.0.11] at org.apache.jmeter.util.JSR223TestElement.processFileOrScript(JSR223TestElement.java:211) ~[ApacheJMeter_core.jar:5.5] at org.apache.jmeter.extractor.JSR223PostProcessor.process(JSR223PostProcessor.java:45) ~[ApacheJMeter_components.jar:5.5] at org.apache.jmeter.threads.JMeterThread.runPostProcessors(JMeterThread.java:968) ~[ApacheJMeter_core.jar:5.5] at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:585) ~[ApacheJMeter_core.jar:5.5] at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:501) ~[ApacheJMeter_core.jar:5.5] at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:268) ~[ApacheJMeter_core.jar:5.5] at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_172] Caused by: org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed: General error during conversion: No suitable ClassLoader found for grab java.lang.RuntimeException: No suitable ClassLoader found for grab at groovy.grape.GrapeIvy.chooseClassLoader(GrapeIvy.groovy:179) at groovy.grape.GrapeIvy.grab(GrapeIvy.groovy:249) at groovy.grape.Grape$1.run(Grape.java:174) at groovy.grape.Grape$1.run(Grape.java:160) at java.security.AccessController.doPrivileged(Native Method) at groovy.grape.Grape.grab(Grape.java:160) at groovy.grape.GrabAnnotationTransformation.visit(GrabAnnotationTransformation.java:377) at org.codehaus.groovy.transform.ASTTransformationVisitor.lambda$addPhaseOperationsForGlobalTransforms$4(ASTTransformationVisitor.java:338) at org.codehaus.groovy.control.CompilationUnit$ISourceUnitOperation.doPhaseOperation(CompilationUnit.java:901) at org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:671) at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:635) at groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:389) at groovy.lang.GroovyClassLoader.lambda$parseClass$3(GroovyClassLoader.java:332) at org.codehaus.groovy.runtime.memoize.StampedCommonCache.compute(StampedCommonCache.java:163) at org.codehaus.groovy.runtime.memoize.StampedCommonCache.getAndPut(StampedCommonCache.java:154) at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:330) at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:314) at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:257) at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.getScriptClass(GroovyScriptEngineImpl.java:336) at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.compile(GroovyScriptEngineImpl.java:181) at org.apache.jmeter.util.JSR223TestElement.processFileOrScript(JSR223TestElement.java:211) at org.apache.jmeter.extractor.JSR223PostProcessor.process(JSR223PostProcessor.java:45) at org.apache.jmeter.threads.JMeterThread.runPostProcessors(JMeterThread.java:968) at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:585) at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:501) at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:268) at java.lang.Thread.run(Thread.java:748) 1 error at org.codehaus.groovy.control.ErrorCollector.failIfErrors(ErrorCollector.java:292) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.control.ErrorCollector.addException(ErrorCollector.java:140) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.control.SourceUnit.addException(SourceUnit.java:309) ~[groovy-3.0.11.jar:3.0.11] at groovy.grape.GrabAnnotationTransformation.visit(GrabAnnotationTransformation.java:386) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.transform.ASTTransformationVisitor.lambda$addPhaseOperationsForGlobalTransforms$4(ASTTransformationVisitor.java:338) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.control.CompilationUnit$ISourceUnitOperation.doPhaseOperation(CompilationUnit.java:901) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:671) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:635) ~[groovy-3.0.11.jar:3.0.11] at groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:389) ~[groovy-3.0.11.jar:3.0.11] at groovy.lang.GroovyClassLoader.lambda$parseClass$3(GroovyClassLoader.java:332) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.runtime.memoize.StampedCommonCache.compute(StampedCommonCache.java:163) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.runtime.memoize.StampedCommonCache.getAndPut(StampedCommonCache.java:154) ~[groovy-3.0.11.jar:3.0.11] at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:330) ~[groovy-3.0.11.jar:3.0.11] at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:314) ~[groovy-3.0.11.jar:3.0.11] at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:257) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.getScriptClass(GroovyScriptEngineImpl.java:336) ~[groovy-jsr223-3.0.11.jar:3.0.11] at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.compile(GroovyScriptEngineImpl.java:181) ~[groovy-jsr223-3.0.11.jar:3.0.11] ... 7 more 2025-05-11 02:49:15,800 ERROR o.a.j.e.JSR223PostProcessor: Problem in JSR223 script, JSR223 后置处理程序 javax.script.ScriptException: org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed: General error during conversion: No suitable ClassLoader found for grab java.lang.RuntimeException: No suitable ClassLoader found for grab at groovy.grape.GrapeIvy.chooseClassLoader(GrapeIvy.groovy:179) at groovy.grape.GrapeIvy.grab(GrapeIvy.groovy:249) at groovy.grape.Grape$1.run(Grape.java:174) at groovy.grape.Grape$1.run(Grape.java:160) at java.security.AccessController.doPrivileged(Native Method) at groovy.grape.Grape.grab(Grape.java:160) at groovy.grape.GrabAnnotationTransformation.visit(GrabAnnotationTransformation.java:377) at org.codehaus.groovy.transform.ASTTransformationVisitor.lambda$addPhaseOperationsForGlobalTransforms$4(ASTTransformationVisitor.java:338) at org.codehaus.groovy.control.CompilationUnit$ISourceUnitOperation.doPhaseOperation(CompilationUnit.java:901) at org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:671) at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:635) at groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:389) at groovy.lang.GroovyClassLoader.lambda$parseClass$3(GroovyClassLoader.java:332) at org.codehaus.groovy.runtime.memoize.StampedCommonCache.compute(StampedCommonCache.java:163) at org.codehaus.groovy.runtime.memoize.StampedCommonCache.getAndPut(StampedCommonCache.java:154) at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:330) at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:314) at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:257) at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.getScriptClass(GroovyScriptEngineImpl.java:336) at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.compile(GroovyScriptEngineImpl.java:181) at org.apache.jmeter.util.JSR223TestElement.processFileOrScript(JSR223TestElement.java:211) at org.apache.jmeter.extractor.JSR223PostProcessor.process(JSR223PostProcessor.java:45) at org.apache.jmeter.threads.JMeterThread.runPostProcessors(JMeterThread.java:968) at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:585) at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:501) at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:268) at java.lang.Thread.run(Thread.java:748) 1 error at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.compile(GroovyScriptEngineImpl.java:183) ~[groovy-jsr223-3.0.11.jar:3.0.11] at org.apache.jmeter.util.JSR223TestElement.processFileOrScript(JSR223TestElement.java:211) ~[ApacheJMeter_core.jar:5.5] at org.apache.jmeter.extractor.JSR223PostProcessor.process(JSR223PostProcessor.java:45) ~[ApacheJMeter_components.jar:5.5] at org.apache.jmeter.threads.JMeterThread.runPostProcessors(JMeterThread.java:968) ~[ApacheJMeter_core.jar:5.5] at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:585) ~[ApacheJMeter_core.jar:5.5] at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:501) ~[ApacheJMeter_core.jar:5.5] at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:268) ~[ApacheJMeter_core.jar:5.5] at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_172] Caused by: org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed: General error during conversion: No suitable ClassLoader found for grab java.lang.RuntimeException: No suitable ClassLoader found for grab at groovy.grape.GrapeIvy.chooseClassLoader(GrapeIvy.groovy:179) at groovy.grape.GrapeIvy.grab(GrapeIvy.groovy:249) at groovy.grape.Grape$1.run(Grape.java:174) at groovy.grape.Grape$1.run(Grape.java:160) at java.security.AccessController.doPrivileged(Native Method) at groovy.grape.Grape.grab(Grape.java:160) at groovy.grape.GrabAnnotationTransformation.visit(GrabAnnotationTransformation.java:377) at org.codehaus.groovy.transform.ASTTransformationVisitor.lambda$addPhaseOperationsForGlobalTransforms$4(ASTTransformationVisitor.java:338) at org.codehaus.groovy.control.CompilationUnit$ISourceUnitOperation.doPhaseOperation(CompilationUnit.java:901) at org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:671) at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:635) at groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:389) at groovy.lang.GroovyClassLoader.lambda$parseClass$3(GroovyClassLoader.java:332) at org.codehaus.groovy.runtime.memoize.StampedCommonCache.compute(StampedCommonCache.java:163) at org.codehaus.groovy.runtime.memoize.StampedCommonCache.getAndPut(StampedCommonCache.java:154) at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:330) at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:314) at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:257) at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.getScriptClass(GroovyScriptEngineImpl.java:336) at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.compile(GroovyScriptEngineImpl.java:181) at org.apache.jmeter.util.JSR223TestElement.processFileOrScript(JSR223TestElement.java:211) at org.apache.jmeter.extractor.JSR223PostProcessor.process(JSR223PostProcessor.java:45) at org.apache.jmeter.threads.JMeterThread.runPostProcessors(JMeterThread.java:968) at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:585) at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:501) at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:268) at java.lang.Thread.run(Thread.java:748) 1 error at org.codehaus.groovy.control.ErrorCollector.failIfErrors(ErrorCollector.java:292) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.control.ErrorCollector.addException(ErrorCollector.java:140) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.control.SourceUnit.addException(SourceUnit.java:309) ~[groovy-3.0.11.jar:3.0.11] at groovy.grape.GrabAnnotationTransformation.visit(GrabAnnotationTransformation.java:386) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.transform.ASTTransformationVisitor.lambda$addPhaseOperationsForGlobalTransforms$4(ASTTransformationVisitor.java:338) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.control.CompilationUnit$ISourceUnitOperation.doPhaseOperation(CompilationUnit.java:901) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:671) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:635) ~[groovy-3.0.11.jar:3.0.11] at groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:389) ~[groovy-3.0.11.jar:3.0.11] at groovy.lang.GroovyClassLoader.lambda$parseClass$3(GroovyClassLoader.java:332) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.runtime.memoize.StampedCommonCache.compute(StampedCommonCache.java:163) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.runtime.memoize.StampedCommonCache.getAndPut(StampedCommonCache.java:154) ~[groovy-3.0.11.jar:3.0.11] at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:330) ~[groovy-3.0.11.jar:3.0.11] at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:314) ~[groovy-3.0.11.jar:3.0.11] at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:257) ~[groovy-3.0.11.jar:3.0.11] at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.getScriptClass(GroovyScriptEngineImpl.java:336) ~[groovy-jsr223-3.0.11.jar:3.0.11] at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.compile(GroovyScriptEngineImpl.java:181) ~[groovy-jsr223-3.0.11.jar:3.0.11] ... 7 more 2025-05-11 02:49:15,802 INFO o.a.j.t.JMeterThread: Stop Thread seen for thread 线程组 1-1, reason: org.apache.jorphan.util.JMeterStopThreadException: End of file:D:/项目/1、联赢激光/SW切换/外购件模型/外购件下载 - 副本.csv detected for CSV DataSet:CSV 数据文件设置 configured with stopThread:true, recycle:false 2025-05-11 02:49:15,802 INFO o.a.j.t.JMeterThread: Thread finished: 线程组 1-1 2025-05-11 02:49:15,803 INFO o.a.j.e.StandardJMeterEngine: Notifying test listeners of end of test 2025-05-11 02:49:15,804 INFO o.a.j.s.FileServer: Close: D:/项目/1、联赢激光/SW切换/外购件模型/外购件下载 - 副本.csv 2025-05-11 02:49:15,807 INFO o.a.j.g.u.JMeterMenuBar: setRunning(false, *local*)

咔丫咔契
  • 粉丝: 29
上传资源 快速赚钱