The Results monitor only analyses the first connector that appears in the Tomcat manager/status XML. If, as is the case for me, more than one connector is defined and the first one listed isn´t the connector for the web application that is being tested - the Results monitor thread count is incorrect. Note it appeas that the Tomcat manager/status page sorts connectors alphabetically. Regards, Andy Dawson As I see no place for attachements, below is an example manager/status XML file, where the thread count is 8, and should display a thread busy count of 8/150 but instead returns 0% (the xsl declaration has been removed to allow easier viewing): <?xml version="1.0" encoding="utf-8"?><status><jvm><memory free='7357544' total='37093376' max='66650112'/></jvm><connector name='http-8084'><threadInfo maxThreads="150" minSpareThreads="25" maxSpareThreads="75" currentThreadCount="25" currentThreadsBusy="1" /><requestInfo maxTime="0" processingTime="0" requestCount="0" errorCount="0" bytesReceived="0" bytesSent="0" /><workers><worker stage="R" requestProcessingTime="0" requestBytesSent="0" requestBytesRecieved="0" remoteAddr="?" virtualHost="?" method="?" currentUri="?" currentQueryString="?" protocol="?" /></workers></connector><connector name='http-8100'><threadInfo maxThreads="150" minSpareThreads="25" maxSpareThreads="75" currentThreadCount="25" currentThreadsBusy="8" /><requestInfo maxTime="4813" processingTime="255614" requestCount="2569" errorCount="1" bytesReceived="559008" bytesSent="40935221" /><workers><worker stage="K" requestProcessingTime="3406" requestBytesSent="0" requestBytesReceived="0" remoteAddr="192.168.1.124" virtualHost="?" method="?" currentUri="?" currentQueryString="?" protocol="?" /><worker stage="K" requestProcessingTime="2843" requestBytesSent="0" requestBytesReceived="0" remoteAddr="192.168.1.124" virtualHost="?" method="?" currentUri="?" currentQueryString="?" protocol="?" /><worker stage="R" requestProcessingTime="0" requestBytesSent="0" requestBytesRecieved="0" remoteAddr="?" virtualHost="?" method="?" currentUri="?" currentQueryString="?" protocol="?" /><worker stage="S" requestProcessingTime="0" requestBytesSent="0" requestBytesReceived="0" remoteAddr="192.168.1.124" virtualHost="mistral" method="GET" currentUri="/manager/status" currentQueryString="XML=true" protocol="HTTP/1.1" /><worker stage="K" requestProcessingTime="2796" requestBytesSent="0" requestBytesReceived="0" remoteAddr="192.168.1.124" virtualHost="?" method="?" currentUri="?" currentQueryString="?" protocol="?" /><worker stage="R" requestProcessingTime="0" requestBytesSent="0" requestBytesRecieved="0" remoteAddr="?" virtualHost="?" method="?" currentUri="?" currentQueryString="?" protocol="?" /><worker stage="K" requestProcessingTime="968" requestBytesSent="0" requestBytesReceived="0" remoteAddr="192.168.1.124" virtualHost="?" method="?" currentUri="?" currentQueryString="?" protocol="?" /><worker stage="R" requestProcessingTime="0" requestBytesSent="0" requestBytesRecieved="0" remoteAddr="?" virtualHost="?" method="?" currentUri="?" currentQueryString="?" protocol="?" /><worker stage="R" requestProcessingTime="0" requestBytesSent="0" requestBytesRecieved="0" remoteAddr="?" virtualHost="?" method="?" currentUri="?" currentQueryString="?" protocol="?" /><worker stage="R" requestProcessingTime="0" requestBytesSent="0" requestBytesRecieved="0" remoteAddr="?" virtualHost="?" method="?" currentUri="?" currentQueryString="?" protocol="?" /><worker stage="R" requestProcessingTime="0" requestBytesSent="0" requestBytesRecieved="0" remoteAddr="?" virtualHost="?" method="?" currentUri="?" currentQueryString="?" protocol="?" /><worker stage="K" requestProcessingTime="3031" requestBytesSent="0" requestBytesReceived="0" remoteAddr="192.168.1.124" virtualHost="?" method="?" currentUri="?" currentQueryString="?" protocol="?" /><worker stage="K" requestProcessingTime="609" requestBytesSent="0" requestBytesReceived="0" remoteAddr="192.168.1.124" virtualHost="?" method="?" currentUri="?" currentQueryString="?" protocol="?" /></workers></connector><connector name='http-4443'><threadInfo maxThreads="150" minSpareThreads="25" maxSpareThreads="75" currentThreadCount="25" currentThreadsBusy="1" /><requestInfo maxTime="0" processingTime="0" requestCount="0" errorCount="0" bytesReceived="0" bytesSent="0" /><workers><worker stage="R" requestProcessingTime="0" requestBytesSent="0" requestBytesRecieved="0" remoteAddr="?" virtualHost="?" method="?" currentUri="?" currentQueryString="?" protocol="?" /></workers></connector><connector name='jk-8009'><threadInfo maxThreads="200" minSpareThreads="4" maxSpareThreads="50" currentThreadCount="4" currentThreadsBusy="1" /><requestInfo maxTime="0" processingTime="0" requestCount="0" errorCount="0" bytesReceived="0" bytesSent="0" /><workers></workers></connector></status>
Created attachment 18604 [details] Example Tomcat status file The attached XML file is not read correctly by the Results monitor.
a quick note. the change isn't trivial, so I don't know how much work is required to implement the enhancement. it's probably going be a few weeks or more. if you're adventurous and want to try enhancing it youself, I can assist. peter
hopefully this weekend I can take a look and see how hard it would be to enhance the monitor to allow users to select the desired port.
Hello, I propose this patch for select connector you want monitor. Test case 1: If you have several connectors on one tomcat (i.e. http/8080, http/8443 and ajp/8009), you can monitor only http/8080 with this line in properties file: monitor.connector.startwith=http-servername%2F192.168.1.2-8080 Test case 2: If you have several connectors and several tomcat (tomcat or jboss cluster or multiple standalone instances), you can monitor only ajp connector on all instances with this line: monitor.connector.startwith=ajp Test case 3: If you have several connectors on several tomcat, you can't monitor different connector with different port. To resolve this test case, another patch are necessary...
Created attachment 23171 [details] Proposal patch
This proposal patch add possibility to select a specific connector or group of same connector (like ajp*). This patch is not a GUI extension to select a specific connector from a connector list from tomcat/jboss because there is much work to do this. In others words, this patch doesn't answer to this enhanced, but partially.
Created attachment 23260 [details] New patch version to correct a javadoc mistake and fetching the first connector if the connector name is not found.
Fixed in SVN: URL: http://svn.apache.org/viewvc?rev=747112&view=rev Log: Bug 40045 - Allow Results monitor to select a specific connector
*** Bug 46889 has been marked as a duplicate of this bug. ***
This issue has been migrated to GitHub: https://github.com/apache/jmeter/issues/1761