近想对tomcat的性能指标做监控,于是 想到loadrunner关联函数的用法,于是做了本次尝试,没想到效果还不错,所以拿出来供大家分享,通过本次测试发现,关联的作用太强大了~

 

Action()
{
double atof(const char *string);
web_reg_save_param("JVM_FreeMemory",
"LB=Free memory: ",
"RB= MB",
"Ord=1",
LAST);
web_reg_save_param("JVM_TotalMemory",
"LB=Total memory: ",
"RB= MB",
"Ord=1",
LAST);
web_reg_save_param("JVM_MaxMemory",
"LB=Max memory: ",
"RB= MB",
"Ord=1",
LAST);
web_reg_save_param("http_MaxThreads",
"LB=Max threads: ",
"RB= ",
"Ord=1",
LAST);
web_reg_save_param("http_CurrentThreadCount",
"LB=Current thread count: ",
"RB= ",
"Ord=1",
LAST);
web_reg_save_param("http_CurrentThreadBusy",
"LB=Current thread busy: ",
"RB= ",
"Ord=1",
LAST);
web_reg_save_param("http_MaxProcessingTime",
"LB=Max processing time: ",
"RB= ms",
"Ord=1",
LAST);
web_reg_save_param("http_ProcessingTime",
"LB=Processing time: ",
"RB= s",
"Ord=1",
LAST);
web_reg_save_param("http_RequestCount",
"LB=Request count: ",
"RB= ",
"Ord=1",
LAST);
web_reg_save_param("http_ErrorCount",
"LB=Error count: ",
"RB= ",
"Ord=1",
LAST);
web_reg_save_param("http_BytesReceived",
"LB=Bytes received: ",
"RB= MB",
"Ord=1",
LAST);
web_reg_save_param("http_BytesSent",
"LB=Bytes sent: ",
"RB= MB",
"Ord=1",
LAST);
web_set_user("tomcat", "123","10.40.15.8:8080");
lr_think_time(20);
web_url("status",
"URL=http://10.40.15.8:8080/manager/status",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t1.inf",
"Mode=HTML",
LAST);
lr_user_data_point("Tomcat JVM FreeMemory", atof(lr_eval_string("{JVM_FreeMemory}")));
lr_user_data_point("Tomcat JVM TotalMemory", atof(lr_eval_string("{JVM_TotalMemory}")));
lr_user_data_point("Tomcat JVM MaxMemory", atof(lr_eval_string("{JVM_MaxMemory}")));
lr_user_data_point("Tomcat http MaxThreads", atof(lr_eval_string("{http_MaxThreads}")));
lr_user_data_point("Tomcat http CurrentThreadCount", atof(lr_eval_string("{http_CurrentThreadCount}")));
lr_user_data_point("Tomcat http CurrentThreadBusy", atof(lr_eval_string("{http_CurrentThreadBusy}")));
lr_user_data_point("Tomcat http MaxProcessingTime", atof(lr_eval_string("{http_MaxProcessingTime}")));
lr_user_data_point("Tomcat http ProcessingTime", atof(lr_eval_string("{http_ProcessingTime}")));
lr_user_data_point("Tomcat http RequestCount", atof(lr_eval_string("{http_RequestCount}")));
lr_user_data_point("Tomcat http ErrorCount", atof(lr_eval_string("{http_ErrorCount}")));
lr_user_data_point("Tomcat http BytesReceived", atof(lr_eval_string("{http_BytesReceived}")));
lr_user_data_point("Tomcat http BytesSent", atof(lr_eval_string("{http_BytesSent}")));
return 0;
}