突然之间发现磁盘快要爆了
日志大约90多GB,需要控制日志输出。
Jmeter的log输出控制
Jmeter的log输出控制(jmeter.log)
log_level.jmeter=ERROR
log_level.jmeter.junit=DEBUG
在jmeter.properties中,修改Jmeter的日志级别为:ERROR, 否则产生巨大的日志文件jmeter.log,如果是需要查看详细的调试信息,可以将log_level.jmeter设置为DEBUG
对于断言,如果想打印更加详细的自定义日志到jmeter.log,可以这样做:
添加一个BeanShell Assertion,script这样填写:
import org.apache.log4j.Logger;
if (increment==5 && vars.getObject("filterID").equals("NOT FOUND"))
{
Failure=true;
FailureMessage="Create filter for task 5 times in a row,all failed!";
log.error("user-defined error, FailureMessage: " + FailureMessage);
}
else
{
System.out.println("filterID="+vars.getObject("filterID"));
log.info("user-defined success, filterID=" + vars.getObject("filterID"));
}
如果是运行到else里面,jmeter.log中就会打印这样的信息:
2013/10/07 02:20:24 INFO - jmeter.util.BeanShellTestElement: user-defined success, filterID=4104
如果是运行到if里面,jmeter.log中就会打印这样的信息:
2013/10/07 02:59:44 ERROR - jmeter.util.BeanShellTestElement: user-defined error, FailureMessage: Create filter for task 5 times in a row,all failed!
日志面板设置:
背景:利用jmeter测试接口时,比较复杂的接口,需要加密等等,可能会需要打印执行过程中的中间数据。jmeter并没有提供显示这些数据的专门的地方和接口,只能采用beanshell脚本,利用log输出。然而jmeter内部的日志也是在此日志面板显示,有太多的不需要的信息。为了过滤不必要的信息,设置日志级别为ERROR,并使用log.error输出。jmeter不会保存,也没地方设置日志级别,和默认显示日志面板。所以只能通过手动修改配置文件来达到需要。
- 修改日志级别。
JMeter_HOME/bin下,修改log4j2.xml。
修改为
- 默认显示日志面板。
JMeter_HOME/bin下,修改jmeter.properties
修改jmeter.loggerpanel.display=true,并取消注释。