├── LICENSE ├── README.md ├── README.ru.md ├── jmeter ├── bin │ ├── 1.jmx │ ├── ApacheJMeter-3.0.jar │ ├── hc.parameters │ ├── httpclient.parameters │ ├── jmeter.properties │ ├── reportgenerator.properties │ ├── saveservice.properties │ ├── system.properties │ ├── upgrade.properties │ └── user.properties └── lib │ ├── ApacheJMeter-3.0.jar │ ├── ApacheJMeter_components-3.0.jar │ ├── ApacheJMeter_core-3.0.jar │ ├── ApacheJMeter_http-3.0.jar │ ├── accessors-smart-1.1.jar │ ├── activation-1.1.jar │ ├── annotations-2.0.3.jar │ ├── apache-mime4j-core-0.7.2.jar │ ├── apache-mime4j-dom-0.7.2.jar │ ├── asm-5.1.jar │ ├── aspectjrt-1.8.0.jar │ ├── avalon-framework-4.1.4.jar │ ├── bcmail-jdk15on-1.49.jar │ ├── bcpkix-jdk15on-1.49.jar │ ├── bcprov-jdk15on-1.49.jar │ ├── boilerpipe-1.1.0.jar │ ├── bsf-2.4.0.jar │ ├── bsh-2.0b5.jar │ ├── bzip2-0.9.1.jar │ ├── c3p0-0.9.1.1.jar │ ├── cdm-4.5.5.jar │ ├── commons-codec-1.10.jar │ ├── commons-collections-3.2.2.jar │ ├── commons-compress-1.10.jar │ ├── commons-csv-1.0.jar │ ├── commons-dbcp2-2.1.1.jar │ ├── commons-exec-1.3.jar │ ├── commons-httpclient-3.1.jar │ ├── commons-io-2.4.jar │ ├── commons-jexl-1.1.jar │ ├── commons-jexl-2.1.1.jar │ ├── commons-jexl3-3.0.jar │ ├── commons-lang-2.6.jar │ ├── commons-lang3-3.4.jar │ ├── commons-logging-1.2.jar │ ├── commons-logging-api-1.1.jar │ ├── commons-math3-3.6.1.jar │ ├── commons-net-3.4.jar │ ├── commons-pool2-2.4.2.jar │ ├── commons-vfs2-2.0.jar │ ├── cxf-core-3.0.3.jar │ ├── cxf-rt-frontend-jaxrs-3.0.3.jar │ ├── cxf-rt-rs-client-3.0.3.jar │ ├── cxf-rt-transports-http-3.0.3.jar │ ├── dnsjava-2.1.7.jar │ ├── ehcache-core-2.6.2.jar │ ├── excalibur-logger-1.1.jar │ ├── ext │ ├── ApacheJMeter_components-3.0.jar │ ├── ApacheJMeter_core-3.0.jar │ └── ApacheJMeter_http-3.0.jar │ ├── fontbox-1.8.10.jar │ ├── freemarker-2.3.23.jar │ ├── geoapi-3.0.0.jar │ ├── geronimo-jms_1.1_spec-1.1.1.jar │ ├── grib-4.5.5.jar │ ├── groovy-all-2.4.6.jar │ ├── gson-2.2.4.jar │ ├── guava-17.0.jar │ ├── hamcrest-core-1.3.jar │ ├── httpclient-4.5.2.jar │ ├── httpcore-4.4.4.jar │ ├── httpmime-4.5.2.jar │ ├── httpservices-4.5.5.jar │ ├── isoparser-1.0.2.jar │ ├── jackcess-2.1.2.jar │ ├── jackcess-encrypt-2.1.1.jar │ ├── java-libpst-0.8.1.jar │ ├── javax.annotation-api-1.2.jar │ ├── javax.ws.rs-api-2.0.1.jar │ ├── jcharts-0.7.5.jar │ ├── jcip-annotations-1.0.jar │ ├── jcommander-1.35.jar │ ├── jdom-2.0.2.jar │ ├── jdom2-2.0.4.jar │ ├── jempbox-1.8.10.jar │ ├── jhighlight-1.0.2.jar │ ├── jj2000-5.2.jar │ ├── jmatio-1.0.jar │ ├── jna-4.1.0.jar │ ├── joda-time-2.2.jar │ ├── jodd-core-3.6.7.jar │ ├── jodd-lagarto-3.6.7.jar │ ├── jodd-log-3.6.7.jar │ ├── jodd-props-3.6.7.jar │ ├── jorphan-3.0.jar │ ├── json-20140107.jar │ ├── json-path-2.2.0.jar │ ├── json-simple-1.1.1.jar │ ├── json-smart-2.2.1.jar │ ├── jsoup-1.8.3.jar │ ├── jsr-275-0.9.3.jar │ ├── jtidy-r938.jar │ ├── junit-4.12.jar │ ├── junit │ └── test.txt │ ├── juniversalchardet-1.0.3.jar │ ├── junrar-0.7.jar │ ├── jwnl-1.3.3.jar │ ├── logkit-2.0.jar │ ├── mail-1.5.0-b01.jar │ ├── maven-scm-api-1.4.jar │ ├── maven-scm-provider-svn-commons-1.4.jar │ ├── maven-scm-provider-svnexe-1.4.jar │ ├── metadata-extractor-2.8.0.jar │ ├── mongo-java-driver-2.11.3.jar │ ├── netcdf4-4.5.5.jar │ ├── opennlp-maxent-3.0.3.jar │ ├── opennlp-tools-1.5.3.jar │ ├── oro-2.0.8.jar │ ├── pdfbox-1.8.10.jar │ ├── ph-commons-6.2.4.jar │ ├── ph-css-4.1.1.jar │ ├── plexus-utils-1.5.6.jar │ ├── poi-3.13.jar │ ├── poi-ooxml-3.13.jar │ ├── poi-ooxml-schemas-3.13.jar │ ├── poi-scratchpad-3.13.jar │ ├── protobuf-java-2.5.0.jar │ ├── quartz-2.2.0.jar │ ├── regexp-1.3.jar │ ├── rhino-1.7.7.1.jar │ ├── rome-1.5.1.jar │ ├── rome-utils-1.5.1.jar │ ├── rsyntaxtextarea-2.5.8.jar │ ├── serializer-2.7.2.jar │ ├── sis-metadata-0.5.jar │ ├── sis-netcdf-0.5.jar │ ├── sis-referencing-0.5.jar │ ├── sis-storage-0.5.jar │ ├── sis-utility-0.5.jar │ ├── slf4j-api-1.7.13.jar │ ├── stax2-api-3.1.4.jar │ ├── tagsoup-1.2.1.jar │ ├── tika-core-1.12.jar │ ├── tika-parsers-1.12.jar │ ├── udunits-4.5.5.jar │ ├── vorbis-java-core-0.6.jar │ ├── vorbis-java-tika-0.6.jar │ ├── woodstox-core-asl-4.4.1.jar │ ├── xalan-2.7.2.jar │ ├── xercesImpl-2.11.0.jar │ ├── xml-apis-1.4.01.jar │ ├── xmlbeans-2.6.0.jar │ ├── xmlgraphics-commons-2.0.1.jar │ ├── xmlpull-1.1.3.1.jar │ ├── xmlschema-core-2.1.0.jar │ ├── xmpcore-5.1.2.jar │ ├── xpp3_min-1.1.4c.jar │ ├── xstream-1.4.8.jar │ └── xz-1.5.jar ├── jmt.iml ├── jmt.ipr ├── jmt.iws ├── out └── production │ └── ru.pflb.jmeter.samplers.TailSampler │ └── META-INF │ └── MANIFEST.MF └── ru.pflb.jmeter.samplers.TailSampler ├── .idea ├── compiler.xml ├── copyright │ └── profiles_settings.xml ├── encodings.xml ├── misc.xml ├── modules.xml ├── ru.pflb.jmeter.samplers.TailSampler.iml └── workspace.xml ├── ru.pflb.jmeter.samplers.TailSampler.iml └── src ├── META-INF └── MANIFEST.MF └── ru └── pflb └── jmeter ├── protocol └── http │ └── config │ └── gui │ └── TailUrlConfigGui.java └── samplers ├── EscapeUtils.java ├── ITailHTTPImpl.java ├── TailHTTPHC4Impl.java ├── TailHTTPSamplerProxy.java ├── TailHttpSamplerGui.java └── wrapper ├── WrapperHTTPFileImpl.java ├── WrapperHTTPHC3Impl.java ├── WrapperHTTPHC4Impl.java ├── WrapperHTTPJavaImpl.java └── WrapperHTTPSamplerFactory.java /LICENSE: -------------------------------------------------------------------------------- 1 | Apache License 2 | Version 2.0, January 2004 3 | http://www.apache.org/licenses/ 4 | 5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 6 | 7 | 1. Definitions. 8 | 9 | "License" shall mean the terms and conditions for use, reproduction, 10 | and distribution as defined by Sections 1 through 9 of this document. 11 | 12 | "Licensor" shall mean the copyright owner or entity authorized by 13 | the copyright owner that is granting the License. 14 | 15 | "Legal Entity" shall mean the union of the acting entity and all 16 | other entities that control, are controlled by, or are under common 17 | control with that entity. For the purposes of this definition, 18 | "control" means (i) the power, direct or indirect, to cause the 19 | direction or management of such entity, whether by contract or 20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the 21 | outstanding shares, or (iii) beneficial ownership of such entity. 22 | 23 | "You" (or "Your") shall mean an individual or Legal Entity 24 | exercising permissions granted by this License. 25 | 26 | "Source" form shall mean the preferred form for making modifications, 27 | including but not limited to software source code, documentation 28 | source, and configuration files. 29 | 30 | "Object" form shall mean any form resulting from mechanical 31 | transformation or translation of a Source form, including but 32 | not limited to compiled object code, generated documentation, 33 | and conversions to other media types. 34 | 35 | "Work" shall mean the work of authorship, whether in Source or 36 | Object form, made available under the License, as indicated by a 37 | copyright notice that is included in or attached to the work 38 | (an example is provided in the Appendix below). 39 | 40 | "Derivative Works" shall mean any work, whether in Source or Object 41 | form, that is based on (or derived from) the Work and for which the 42 | editorial revisions, annotations, elaborations, or other modifications 43 | represent, as a whole, an original work of authorship. For the purposes 44 | of this License, Derivative Works shall not include works that remain 45 | separable from, or merely link (or bind by name) to the interfaces of, 46 | the Work and Derivative Works thereof. 47 | 48 | "Contribution" shall mean any work of authorship, including 49 | the original version of the Work and any modifications or additions 50 | to that Work or Derivative Works thereof, that is intentionally 51 | submitted to Licensor for inclusion in the Work by the copyright owner 52 | or by an individual or Legal Entity authorized to submit on behalf of 53 | the copyright owner. For the purposes of this definition, "submitted" 54 | means any form of electronic, verbal, or written communication sent 55 | to the Licensor or its representatives, including but not limited to 56 | communication on electronic mailing lists, source code control systems, 57 | and issue tracking systems that are managed by, or on behalf of, the 58 | Licensor for the purpose of discussing and improving the Work, but 59 | excluding communication that is conspicuously marked or otherwise 60 | designated in writing by the copyright owner as "Not a Contribution." 61 | 62 | "Contributor" shall mean Licensor and any individual or Legal Entity 63 | on behalf of whom a Contribution has been received by Licensor and 64 | subsequently incorporated within the Work. 65 | 66 | 2. Grant of Copyright License. Subject to the terms and conditions of 67 | this License, each Contributor hereby grants to You a perpetual, 68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 69 | copyright license to reproduce, prepare Derivative Works of, 70 | publicly display, publicly perform, sublicense, and distribute the 71 | Work and such Derivative Works in Source or Object form. 72 | 73 | 3. Grant of Patent License. Subject to the terms and conditions of 74 | this License, each Contributor hereby grants to You a perpetual, 75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 76 | (except as stated in this section) patent license to make, have made, 77 | use, offer to sell, sell, import, and otherwise transfer the Work, 78 | where such license applies only to those patent claims licensable 79 | by such Contributor that are necessarily infringed by their 80 | Contribution(s) alone or by combination of their Contribution(s) 81 | with the Work to which such Contribution(s) was submitted. If You 82 | institute patent litigation against any entity (including a 83 | cross-claim or counterclaim in a lawsuit) alleging that the Work 84 | or a Contribution incorporated within the Work constitutes direct 85 | or contributory patent infringement, then any patent licenses 86 | granted to You under this License for that Work shall terminate 87 | as of the date such litigation is filed. 88 | 89 | 4. Redistribution. You may reproduce and distribute copies of the 90 | Work or Derivative Works thereof in any medium, with or without 91 | modifications, and in Source or Object form, provided that You 92 | meet the following conditions: 93 | 94 | (a) You must give any other recipients of the Work or 95 | Derivative Works a copy of this License; and 96 | 97 | (b) You must cause any modified files to carry prominent notices 98 | stating that You changed the files; and 99 | 100 | (c) You must retain, in the Source form of any Derivative Works 101 | that You distribute, all copyright, patent, trademark, and 102 | attribution notices from the Source form of the Work, 103 | excluding those notices that do not pertain to any part of 104 | the Derivative Works; and 105 | 106 | (d) If the Work includes a "NOTICE" text file as part of its 107 | distribution, then any Derivative Works that You distribute must 108 | include a readable copy of the attribution notices contained 109 | within such NOTICE file, excluding those notices that do not 110 | pertain to any part of the Derivative Works, in at least one 111 | of the following places: within a NOTICE text file distributed 112 | as part of the Derivative Works; within the Source form or 113 | documentation, if provided along with the Derivative Works; or, 114 | within a display generated by the Derivative Works, if and 115 | wherever such third-party notices normally appear. The contents 116 | of the NOTICE file are for informational purposes only and 117 | do not modify the License. You may add Your own attribution 118 | notices within Derivative Works that You distribute, alongside 119 | or as an addendum to the NOTICE text from the Work, provided 120 | that such additional attribution notices cannot be construed 121 | as modifying the License. 122 | 123 | You may add Your own copyright statement to Your modifications and 124 | may provide additional or different license terms and conditions 125 | for use, reproduction, or distribution of Your modifications, or 126 | for any such Derivative Works as a whole, provided Your use, 127 | reproduction, and distribution of the Work otherwise complies with 128 | the conditions stated in this License. 129 | 130 | 5. Submission of Contributions. Unless You explicitly state otherwise, 131 | any Contribution intentionally submitted for inclusion in the Work 132 | by You to the Licensor shall be under the terms and conditions of 133 | this License, without any additional terms or conditions. 134 | Notwithstanding the above, nothing herein shall supersede or modify 135 | the terms of any separate license agreement you may have executed 136 | with Licensor regarding such Contributions. 137 | 138 | 6. Trademarks. This License does not grant permission to use the trade 139 | names, trademarks, service marks, or product names of the Licensor, 140 | except as required for reasonable and customary use in describing the 141 | origin of the Work and reproducing the content of the NOTICE file. 142 | 143 | 7. Disclaimer of Warranty. Unless required by applicable law or 144 | agreed to in writing, Licensor provides the Work (and each 145 | Contributor provides its Contributions) on an "AS IS" BASIS, 146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 147 | implied, including, without limitation, any warranties or conditions 148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A 149 | PARTICULAR PURPOSE. You are solely responsible for determining the 150 | appropriateness of using or redistributing the Work and assume any 151 | risks associated with Your exercise of permissions under this License. 152 | 153 | 8. Limitation of Liability. In no event and under no legal theory, 154 | whether in tort (including negligence), contract, or otherwise, 155 | unless required by applicable law (such as deliberate and grossly 156 | negligent acts) or agreed to in writing, shall any Contributor be 157 | liable to You for damages, including any direct, indirect, special, 158 | incidental, or consequential damages of any character arising as a 159 | result of this License or out of the use or inability to use the 160 | Work (including but not limited to damages for loss of goodwill, 161 | work stoppage, computer failure or malfunction, or any and all 162 | other commercial damages or losses), even if such Contributor 163 | has been advised of the possibility of such damages. 164 | 165 | 9. Accepting Warranty or Additional Liability. While redistributing 166 | the Work or Derivative Works thereof, You may choose to offer, 167 | and charge a fee for, acceptance of support, warranty, indemnity, 168 | or other liability obligations and/or rights consistent with this 169 | License. However, in accepting such obligations, You may act only 170 | on Your own behalf and on Your sole responsibility, not on behalf 171 | of any other Contributor, and only if You agree to indemnify, 172 | defend, and hold each Contributor harmless for any liability 173 | incurred by, or claims asserted against, such Contributor by reason 174 | of your accepting any such warranty or additional liability. 175 | 176 | END OF TERMS AND CONDITIONS 177 | 178 | ============================ End of Apache License V 2.0 =================== 179 | 180 | Source and binary distributions of Apache JMeter contain: 181 | 182 | - icons from the Open Icon Library http://openiconlibrary.sourceforge.net/ 183 | For license details, please see the file: licenses/src/openiconlibrary.txt 184 | 185 | Additional source files (also included in binary distributions): 186 | For details, please see the files under: licenses/src 187 | 188 | * bootstrap-3.3.4.txt (MIT) | ./bin/report-template/sbadmin2-1.0.7/bower_components/bootstrap 189 | * bootstrap-social.txt (MIT) | ./bin/report-template/sbadmin2-1.0.7/bower_components/bootstrap-social 190 | * datatables-1.10.9.txt (MIT) | ./bin/report-template/sbadmin2-1.0.7/bower_components/datatables 191 | * datatables-plugins.txt (MIT) | ./bin/report-template/sbadmin2-1.0.7/bower_components/datatables-plugins 192 | * datatables-responsive-1.0.5.txt (MIT) | ./bin/report-template/sbadmin2-1.0.7/bower_components/datatables-responsive 193 | * flot-0.8.3.txt (MIT) | ./bin/report-template/sbadmin2-1.0.7/bower_components/flot 194 | * flot-axislabels.txt (MIT) | ./bin/report-template/sbadmin2-1.0.7/bower_components/flot-axislabels 195 | * flot-tooltip-0.7.1.txt (MIT) | ./bin/report-template/sbadmin2-1.0.7/bower_components/flot.tooltip 196 | * font-awesome-4.2.0.txt (OFL-1.1 | MIT) | ./bin/report-template/sbadmin2-1.0.7/bower_components/font-awesome 197 | * holderjs.txt (MIT) | ./bin/report-template/sbadmin2-1.0.7/bower_components/holderjs 198 | * jquery-2.1.3.txt (MIT | ./bin/report-template/sbadmin2-1.0.7/bower_components/jquery 199 | * metisMenu-1.1.3.txt (MIT) | ./bin/report-template/sbadmin2-1.0.7/bower_components/metisMenu 200 | * mocha-1.17.1.txt (MIT) | ./bin/report-template/sbadmin2-1.0.7/bower_components/mocha 201 | * morrisjs-0.5.0.txt (Simplified BSD) | ./bin/report-template/sbadmin2-1.0.7/bower_components/morrisjs 202 | * raphael-2.1.4.txt (MIT) | ./bin/report-template/sbadmin2-1.0.7/bower_components/raphael 203 | * start-bootstrap-admin2-1.0.7.txt (Apache License V2.0) | ./bin/report-template/sbadmin2-1.0.7 and not in the above folders 204 | 205 | Binary distributions additionally contain software included under various licenses, 206 | see below. 207 | 208 | The following software is provided under the Apache License V 2.0 (as above): 209 | 210 | - Software produced at the ASF: 211 | 212 | * apache-bsf-2.4.0.jar 213 | * avalon-framework-4.1.4.jar 214 | * commons-codec-1.10.jar 215 | * commons-collections-3.2.2.jar 216 | * commons-dbcp2-2.1.1.jar 217 | * commons-httpclient-3.1.jar 218 | * commons-io-2.4.jar 219 | * commons-jexl-1.1.jar 220 | * commons-jexl2-2.1.1.jar 221 | * commons-jexl3-3.0.jar 222 | * commons-lang3-3.4.jar 223 | * commons-logging-1.2.jar 224 | * commons-math3-3.6.1.jar 225 | * commons-net-3.4.jar 226 | * commons-pool2-2.4.2.jar 227 | * excalibur-logger-1.1.jar 228 | * groovy-all-2.4.6.jar 229 | * httpclient-4.5.2.jar 230 | * httpcore-4.4.4.jar 231 | * jakarta-oro-2.0.8.jar 232 | * jms-1.1.1.jar 233 | * logkit-2.0.jar 234 | * serializer-2.7.2.jar 235 | * startbootstrap-sb-admin-2-1.0.7 236 | * tika-core-1.12.jar 237 | * tika-parsers-1.12.jar 238 | * xalan-2.7.2.jar 239 | * xerces-2.11.0.jar 240 | * xml-apis-1.4.01.jar 241 | * xmlgraphics-commons-2.0.1.jar 242 | 243 | - Software produced outside the ASF which is available under AL 2.0: 244 | 245 | * accessors-smart-1.1.jar 246 | * freemarker-2.3.23.jar (AL2.0, see licenses/bin for additional info) 247 | * json-path-2.2.0.jar 248 | * json-smart-2.2.1.jar 249 | * mongo-java-driver-2.11.3.jar 250 | * ph-commons-6.2.4.jar 251 | * ph-css-4.1.1.jar 252 | 253 | - Software produced outside the ASF which is available under other licenses (not AL 2.0): 254 | For details, please see the files under: licenses/bin 255 | 256 | * asm-5.1.jar (?) 257 | * beanshell-2.0b5.jar (SPL) 258 | * dnsjava-2.1.7.jar (BSD) 259 | * hamcrest-core-1.3.jar (BSD) 260 | * javamail-1.5.0-b01.jar (CDDL Version 1.0) 261 | * jcharts-0.7.5.jar (?) 262 | * jsoup-1.8.3.jar (MIT) 263 | * jodd-core-3.6.7.jar (Simplified BSD) 264 | * jodd-lagarto-3.6.7.jar (Simplified BSD) 265 | * jodd-log-3.6.7.jar (Simplified BSD) 266 | * jodd-props-3.6.7.jar (Simplified BSD) 267 | * jtidy-r938.jar (?) 268 | * junit-4.12.jar (BSD) 269 | * rhino-1.7.7.1.jar (MPL 2.0) 270 | * rsyntaxtextarea-2.5.8.jar (?) 271 | * slf4j-api-1.7.13.jar (MIT) 272 | * xmlpull-1.1.3.1.jar (Public Domain) 273 | * xpp3-1.1.4c.jar (Indiana University Extreme! Lab Software License 1.1.1) 274 | * xstream-1.4.8.jar (BSD) 275 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Jmeter.Plugin.TailSampler 2 | 3 | _Sampler_, performing parallel loading of specified resources. 4 | 5 | Plugin makes it easy to load embedded resources, 6 | making the test as close as possible to the browser operation. 7 | **HTTP Request Tail** converts the list of links into an HTML document, 8 | GET request for each of these links, downloads embedded resources 9 | 10 | [Link][1] to download. 11 | 12 | [1]: (https://github.com/pflb/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler.jar?raw=true) 13 | 14 | This version of the plugin designed to work with JMeter 3.0, JMeter 2.13. 15 | Not tested on earlier versions. 16 | 17 | ### Installation 18 | 19 | 1. Download the plugin (see links above) ru.pflb.jmeter.samplers.TailSampler.jar. 20 | 2. Copy the plugin to `lib/ext` directory JMeter 3.0. 21 | 3. Restart JMeter 3.0. 22 | 23 | Example directory: 24 | ``` 25 | D:\TOOLS\apache-jmeter-3.0\lib\ext\ 26 | D:\TOOLS\apache-jmeter-3.0\lib\ext\ru.pflb.jmeter.samplers.TailSampler.jar 27 | ``` 28 | ### Description 29 | Default settings: 30 | 31 | - [v] **Retrieve All Embedded Resources** - *the checkbox is set by default, it can be removed, 32 | but then subrequests will not be executed, and the HTTP Request Tail will become useless*. 33 | - [v] **Use concurrent pool** - *the checkbox is set by default, 34 | on a large number of embedded resources, multi-threaded download increases the download speed*. 35 | - **Use concurrent pool Size**: `4` - *the default value is 4, the value is used as the JMeter base value*. 36 | - HttpClient4 *when configuring* **Use concurrent pool Size**: 4 will send up to 4 requests parallel, 37 | each thread will use 1 persistent connection per domain: 38 | - Run a thread group, the size of the group determined by the **Use concurrent pool Size** settings; 39 | `- When configuring [v] **Use keepalive** each thread for each unique domain will create one persistent connection;` 40 | - By default, Firefox 44.0 browser sends up to *6* requests at the same time for each domain (see ``about:config``): 41 | - `256` - *network.http.max-connections* - The maximum number of connections; 42 | - `6` - *network.http.max-persistent-connections-per-server* - The maximum number of persistent connections 43 | to the server; 44 | - `32` - *network.http.max-persistent-connections-per-proxy* - The maximum number of persistent connections 45 | to the proxy server; 46 | - If you focus on Firefox settings and the fact that LT resources usually belong to the same domain, then in {v} you 47 | can set value to ``6`` instead of the standard value ``4``. 48 | 49 | 50 | Unused settings - settings for the POST-request, the values are not used in any way by either main request or subrequests: 51 | - [ ] **Use multipart/form-data for POST**; 52 | - [ ] **Browser-compatible headers**. 53 | 54 | The main request is generated, not sent, the configuration for the POST request does not apply to it. 55 | Subrequests use the method GET, the POST request setting is also not valid for them. 56 | 57 | The rest of the settings are valid for subrequests. 58 | 59 | Addresses for embedded resources are specified in the text box **Embedded resources**. You con specify relative and 60 | absolute addresses. Relative addresses are supplemented by field values: 61 | 62 | - **Web Server** - *Host and port*: 63 | - **Server Name or IP**; 64 | - **Port Number**; 65 | - **Path** - *Catalogue for those links that are relative to the page, not to the host*. 66 | 67 | The response to the main request is generated. There is no request, there is only the body of the response. 68 | The response body is an HTML document, text with UTF-8 encoding, where the tag **iframe** is generated for each reference 69 | to the embedded resource. 70 | 71 | Example of a document: 72 | ``` 73 | 74 | 75 | 76 | 77 | Embedded resources 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | ``` 88 | 89 | #### Temporary configurations 90 | If you uncheck the **Retrieve All Embedded Resources** checkbox or do not specify a single link in **Embedded resources**, 91 | the log will say that the request sent instantly, and the response to it came instantly 92 | 93 | Description of temporary configuration: 94 | 95 | - *Load Time* reflects the duration of loading embedded resources; 96 | - *Connect time* always `0`; 97 | - *Latency* always `0`. 98 | 99 | ### Project structure 100 | 101 | Source code in the catalogue: 102 | 103 | [/src/ru/pflb/jmeter][2]: 104 | 105 | - [protocol/http/config/gui][3]: 106 | - **[TailUrlConfigGui.java][4]** - Control with a large input field for links to embedded resources; 107 | - samplers: 108 | - [wrapper][5] - Wrappers: 109 | - **[WrapperHTTPFileImpl.java][6]** - To use protocol handler `file://` for subrequests; 110 | - **[WrapperHTTPHC3Impl.java][7]** - To use `HttpClient3.1` from settings **Implementation** for subrequests; 111 | - **[WrapperHTTPHC4Impl.java][8]** - To use `HttpClient4` from settings **Implementation** for subrequests; 112 | - **[WrapperHTTPJavaImpl.java][9]** - To use `Java` from settings **Implementation** for subrequests; 113 | - **[WrapperHTTPSamplerFactory.java][10]** - Factory, to create wrappers, returns the handler by protocol 114 | values and settings **Implementation**; 115 | - **[EscapeUtils.java][11]** - HTML shielding implementation, allows you to work with Russian domains, unicode and 116 | special characters in links; 117 | - **[ITailHTTPImpl.java][12]** - Basic interface for all handlers; 118 | - **[TailHTTPHC4Impl.java][13]** - Modified **HttpClient4**, which may not send a request and immediately use the 119 | specified response body; 120 | - **[TailHTTPSamplerProxy.java][14]** - The proxy class, which implements all the logic of **TailSampler**, takes 121 | a list of links from the settings and sends them to **TailHTTPHC4Impl** for the first request and to standard 122 | handlers for requests for embedded resources; 123 | - **[TailHttpSamplerGui.java][15]** - Visual representation **TailSampler**. 124 | 125 | [2]: (https://github.com/pflb/Jmeter.Plugin.TailSampler/tree/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter) 126 | [3]: (https://github.com/pflb/Jmeter.Plugin.TailSampler/tree/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/protocol/http/config/gui) 127 | [4]: (https://git.performance-lab.ru/v.smirnov/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/protocol/http/config/gui/TailUrlConfigGui.java) 128 | [5]: (https://github.com/pflb/Jmeter.Plugin.TailSampler/tree/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/wrapper) 129 | [6]: (https://github.com/pflb/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/wrapper/WrapperHTTPFileImpl.java) 130 | [7]: (https://github.com/pflb/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/wrapper/WrapperHTTPHC3Impl.java) 131 | [8]: (https://github.com/pflb/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/wrapper/WrapperHTTPHC4Impl.java) 132 | [9]: (https://github.com/pflb/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/wrapper/WrapperHTTPJavaImpl.java) 133 | [10]: (https://github.com/pflb/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/wrapper/WrapperHTTPSamplerFactory.java) 134 | [11]: (https://github.com/pflb/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/EscapeUtils.java) 135 | [12]: (https://github.com/pflb/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/ITailHTTPImpl.java) 136 | [13]: (https://github.com/pflb/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/TailHTTPHC4Impl.java) 137 | [14]: (https://github.com/pflb/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/TailHTTPSamplerProxy.java) 138 | [15]: (https://github.com/pflb/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/TailHttpSamplerGui.java) 139 | 140 | Other auxiliary catalogues serve to debug the project. 141 | 142 | 143 | 144 | -------------------------------------------------------------------------------- /README.ru.md: -------------------------------------------------------------------------------- 1 | # Jmeter.Plugin.TailSampler 2 | Sampler, выполняющий параллельную загрузку указанных ресурсов (embedded resources). 3 | 4 | Плагин упрощает загрузку встроенных ресурсов, делая тест максимально близким к работе браузера. 5 | HTTP Request Tail преобразует список ссылок в HTML-документ, загрузка встроенных ресурсов которого создаст GET-запрос по каждой из указанных ссылок. 6 | 7 | [Ссылка](https://github.com/pflb/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler.jar?raw=true) на скачивание. 8 | 9 | Данная версия плагина обеспечивает работу с JMeter 3.0, JMeter 2.13. На более ранних версиях работа плагина не проверялась. 10 | 11 | ### Инструкция по установке 12 | 13 | 1. Скачать плагин (см. ссылки выше) ru.pflb.jmeter.samplers.TailSampler.jar. 14 | 2. Скопировать плагин в каталог lib/ext для JMeter 3.0. 15 | 3. Перезапустить JMeter 3.0. 16 | 17 | Пример каталога: 18 | 19 | D:\TOOLS\apache-jmeter-3.0\lib\ext\ 20 | D:\TOOLS\apache-jmeter-3.0\lib\ext\ru.pflb.jmeter.samplers.TailSampler.jar 21 | 22 | ### Описание 23 | 24 | По умолчанию используются настройки: 25 | 26 | - [v] **Retrieve All Embedded Resources** - *по умолчанию галочка поставлена, её можно снять, но тогда не будут выполнять подзапросы и HTTP Request Tail станет бесполезным*; 27 | - [v] **Use concurent pool** - *по умолчанию галочка поставлена, на большом количестве встроенных ресурсов многопоточная загрузка увеличивает скорость закачки*; 28 | - **Use concerent pool Size**: `4` - *по умолчанию используется значение 4, это значение используется JMeter в качестве базового*: 29 | - HttpClient4 при настройке **Use concerent pool Size**: `4` будет посылать до *4* запросов одновременно, каждый поток будет использовать по *1* постоянному соединению на каждый домен: 30 | - запустится группа потоков, размер группы определяется настройкой **Use concerent pool Size**; 31 | - при настройке [v] **Use keepalive** каждый поток для каждого уникального домена будет создавать одно постоянное соединение (persistent-connection); 32 | - Браузер Mozilla Firefox 44.0 по умолчанию посылает до *6* одновременных запросов на каждый домен (см. ``about:config``): 33 | - `256` - *network.http.max-connections* - максимальное число соединений; 34 | - `6` - *network.http.max-persistent-connections-per-server* - максимальное число постоянных соединений с сервером (keepalive); 35 | - `32` - *network.http.max-persistent-connections-per-proxy* - максимальное число постоянных соединений с прокси-сервером (keepalive); 36 | - Если ориентироваться на настройки Firefox, и то, что ссылки на встроенные ресурсы в проектах нагрузочного тестирования обычно принадлежат одному домену, то в **Use concerent pool Size** можно ставить значение ``6``, вместо стандартного значения ``4``. 37 | 38 | Неиспользуемые настройки - настройки для POST-запросов, значения никак не используются ни главным запросом ни подзапросами: 39 | 40 | - [ ] **Use multipart/form-data for POST**; 41 | - [ ] **Browser-compatible headers**. 42 | 43 | Главный запрос генерируется, а не отправляется, на него настройки для POST-запросов не действуют. Подзапросы используют метод GET, для них также не действуют настройки для POST-запросов. 44 | 45 | Остальные настройки действуют на подзапросы. 46 | 47 | Адреса для встроенных ресурсов указываются в текством поле **Embedded resources**. Можно указывать относительные и абсолютные адреса. Относительные адреса дополняются значениями полей: 48 | 49 | - **Web Server** - *хост и порт*: 50 | - **Server Name or IP**; 51 | - **Port Number**; 52 | - **Path** - *каталог для тех ссылок, что являются относительными относительно страницы, а не относительно хоста*. 53 | 54 | Ответ на основной запрос генерируется. Запроса нет, есть только тело ответа. 55 | Тело ответа представляет собой html-документ, текст с кодировкой UTF-8, где для каждой ссылки на встроенный ресурс сгенерирован тег **iframe**. 56 | 57 | Пример документа: 58 | 59 | 60 | 61 | 62 | 63 | Embedded resources 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | #### Временные характеристики 75 | Если снять галочку [ ] **Retrieve All Embedded Resources** или не указать ни одной ссылки в **Embedded resources**, то в логах будет написано, что запрос оптправился мгновенно, и ответ на него пришел мгновенно. 76 | 77 | Описание временных характеристик: 78 | 79 | - *Load Time* отражает длительность загрузки встроенных ресурсов; 80 | - *Connect time* всегда `0`; 81 | - *Latency* всегда `0`. 82 | 83 | ### Структура проекта 84 | 85 | Исходный код в каталоге: 86 | 87 | [/src/ru/pflb/jmeter](https://github.com/pflb/Jmeter.Plugin.TailSampler/tree/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter): 88 | 89 | - [protocol/http/config/gui](https://github.com/pflb/Jmeter.Plugin.TailSampler/tree/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/protocol/http/config/gui): 90 | - **[TailUrlConfigGui.java](https://git.performance-lab.ru/v.smirnov/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/protocol/http/config/gui/TailUrlConfigGui.java)** - элемент управления с большим полем ввода для ссылок на встроенные ресурсы; 91 | - samplers: 92 | - [wrapper](https://github.com/pflb/Jmeter.Plugin.TailSampler/tree/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/wrapper) - обёртки, чтобы использовать указанный на форме Implementation: 93 | - **[WrapperHTTPFileImpl.java](https://github.com/pflb/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/wrapper/WrapperHTTPFileImpl.java)** - обёртка, чтобы использовать обработчик протокола `file://` для подзапросов; 94 | - **[WrapperHTTPHC3Impl.java](https://github.com/pflb/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/wrapper/WrapperHTTPHC3Impl.java)** - обёртка, чтобы использовать `HttpClient3.1` из настройки **Implementation** для подзапросов; 95 | - **[WrapperHTTPHC4Impl.java](https://github.com/pflb/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/wrapper/WrapperHTTPHC4Impl.java)** - обёртка, чтобы использовать `HttpClient4` из настройки **Implementation** для подзапросов; 96 | - **[WrapperHTTPJavaImpl.java](https://github.com/pflb/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/wrapper/WrapperHTTPJavaImpl.java)** - обёртка, чтобы использовать `Java` из настройки **Implementation** для подзапросов; 97 | - **[WrapperHTTPSamplerFactory.java](https://github.com/pflb/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/wrapper/WrapperHTTPSamplerFactory.java)** - фабрика, для создания обёрток, возвращает обработчик по значениям протокола и настройке **Implementation**; 98 | - **[EscapeUtils.java](https://github.com/pflb/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/EscapeUtils.java)** - реализация html-экранирования, позволяет работать с русскими доменами, юникодом и специальными символами в ссылках; 99 | - **[ITailHTTPImpl.java](https://github.com/pflb/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/ITailHTTPImpl.java)** - базовый интерфейс для всех обработчиков; 100 | - **[TailHTTPHC4Impl.java](https://github.com/pflb/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/TailHTTPHC4Impl.java)** - модифицированный **HttpClient4**, который может не отправлять запрос, и сразу использовать указанное тело ответа; 101 | - **[TailHTTPSamplerProxy.java]https://github.com/pflb/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/TailHTTPSamplerProxy.java)** - прокси-класс в котором реализована вся логика работы **TailSampler**, берёт список ссылок из настроек и передаёт в **TailHTTPHC4Impl** для первого запроса, и в стандартные обработчики для запросов на встроенные ресурсы; 102 | - **[TailHttpSamplerGui.java](https://github.com/pflb/Jmeter.Plugin.TailSampler/blob/master/ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/TailHttpSamplerGui.java)** - визуальное представление **TailSampler**. 103 | 104 | Другие каталоги вспомогательные, служат для удобства отладки проекта. 105 | -------------------------------------------------------------------------------- /jmeter/bin/ApacheJMeter-3.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/bin/ApacheJMeter-3.0.jar -------------------------------------------------------------------------------- /jmeter/bin/hc.parameters: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one or more 2 | # contributor license agreements. See the NOTICE file distributed with 3 | # this work for additional information regarding copyright ownership. 4 | # The ASF licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # http://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | 16 | # Properties file used to define additional default Apache HttpClient parameters 17 | # 18 | # 19 | # This file is enabled by setting the JMeter property: hc.parameters.file 20 | # entries are of the form: 21 | # 22 | # property=value (for strings) 23 | # property$Type=value (for other types) 24 | # 25 | # where Type can be: 26 | # Integer 27 | # Long 28 | # Boolean 29 | # HttpVersion 30 | # 31 | # N.B. Other types are not yet implemented 32 | # 33 | 34 | # Examples: 35 | 36 | #http.protocol.version$HttpVersion=1.0 37 | 38 | #http.protocol.element-charset=ISO-8859-1 39 | 40 | #http.socket.timeout$Integer=10000 41 | 42 | #http.protocol.reject-relative-redirect$Boolean=true 43 | 44 | # Default value since JMeter 2.11, 45 | # also uncomment hc.parameters.file=hc.parameters to enable this check: 46 | #http.connection.stalecheck$Boolean=false -------------------------------------------------------------------------------- /jmeter/bin/httpclient.parameters: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one or more 2 | # contributor license agreements. See the NOTICE file distributed with 3 | # this work for additional information regarding copyright ownership. 4 | # The ASF licenses this file to You under the Apache License, Version 2.0 5 | # (the "License"); you may not use this file except in compliance with 6 | # the License. You may obtain a copy of the License at 7 | # 8 | # http://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | 16 | # Properties file used to define additional default Commons HttpClient parameters 17 | # 18 | # See: http://hc.apache.org/httpclient-3.x/preference-api.html 19 | # 20 | # This file is enabled by setting the JMeter property: httpclient.parameters.file 21 | # entries are of the form: 22 | # 23 | # property=value (for strings) 24 | # property$Type=value (for other types) 25 | # 26 | # where Type can be: 27 | # Integer 28 | # Long 29 | # Boolean 30 | # HttpVersion 31 | # 32 | # N.B. Other types are not yet implemented, so not all parameters are supported 33 | # 34 | 35 | # Examples: 36 | 37 | #http.protocol.version$HttpVersion=1.0 38 | 39 | #http.protocol.element-charset=ISO-8859-1 40 | 41 | #http.socket.timeout$Integer=10000 42 | 43 | #http.protocol.reject-relative-redirect$Boolean=true 44 | 45 | #http.authentication.preemptive$Boolean=true -------------------------------------------------------------------------------- /jmeter/bin/reportgenerator.properties: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Apache JMeter Property file for Report Generator 3 | ################################################################################ 4 | 5 | ## Licensed to the Apache Software Foundation (ASF) under one or more 6 | ## contributor license agreements. See the NOTICE file distributed with 7 | ## this work for additional information regarding copyright ownership. 8 | ## The ASF licenses this file to You under the Apache License, Version 2.0 9 | ## (the "License"); you may not use this file except in compliance with 10 | ## the License. You may obtain a copy of the License at 11 | ## 12 | ## http://www.apache.org/licenses/LICENSE-2.0 13 | ## 14 | ## Unless required by applicable law or agreed to in writing, software 15 | ## distributed under the License is distributed on an "AS IS" BASIS, 16 | ## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | ## See the License for the specific language governing permissions and 18 | ## limitations under the License. 19 | 20 | ################################################################################ 21 | # 22 | # THIS FILE SHOULD NOT BE MODIFIED 23 | # 24 | # This avoids having to re-apply the modifications when upgrading JMeter 25 | # Instead only user.properties should be modified: 26 | # 1/ copy the property you want to modify to user.properties from here 27 | # 2/ Change its value there 28 | # 29 | ################################################################################ 30 | 31 | #--------------------------------------------------------------------------- 32 | # Reporting configuration 33 | #--------------------------------------------------------------------------- 34 | 35 | # Sets the satisfaction threshold for the APDEX calculation (in milliseconds). 36 | #jmeter.reportgenerator.apdex_satisfied_threshold=500 37 | 38 | # Sets the tolerance threshold for the APDEX calculation (in milliseconds). 39 | #jmeter.reportgenerator.apdex_tolerated_threshold=1500 40 | 41 | # Regular Expression which Indicates which samples to keep for graphs and statistics generation. 42 | # Empty value means no filtering 43 | #jmeter.reportgenerator.sample_filter= 44 | 45 | # Sets the temporary directory used by the generation process if it needs file I/O operations. 46 | #jmeter.reportgenerator.temp_dir=temp 47 | 48 | # Sets the size of the sliding window used by percentile evaluation. 49 | # Caution : higher value provides a better accuracy but needs more memory. 50 | #jmeter.reportgenerator.statistic_window = 200000 51 | 52 | # Configure this property to change the report title 53 | #jmeter.reportgenerator.report_title=Apache JMeter Dashboard 54 | 55 | # Defines the overall granularity for over time graphs 56 | jmeter.reportgenerator.overall_granularity=60000 57 | 58 | # Response Time Percentiles graph definition 59 | jmeter.reportgenerator.graph.responseTimePercentiles.classname=org.apache.jmeter.report.processor.graph.impl.ResponseTimePercentilesGraphConsumer 60 | jmeter.reportgenerator.graph.responseTimePercentiles.title=Response Time Percentiles 61 | 62 | # Response Time Distribution graph definition 63 | jmeter.reportgenerator.graph.responseTimeDistribution.classname=org.apache.jmeter.report.processor.graph.impl.ResponseTimeDistributionGraphConsumer 64 | jmeter.reportgenerator.graph.responseTimeDistribution.title=Response Time Distribution 65 | jmeter.reportgenerator.graph.responseTimeDistribution.property.set_granularity=500 66 | 67 | # Active Threads Over Time graph definition 68 | jmeter.reportgenerator.graph.activeThreadsOverTime.classname=org.apache.jmeter.report.processor.graph.impl.ActiveThreadsGraphConsumer 69 | jmeter.reportgenerator.graph.activeThreadsOverTime.title=Active Threads Over Time 70 | jmeter.reportgenerator.graph.activeThreadsOverTime.property.set_granularity=${jmeter.reportgenerator.overall_granularity} 71 | 72 | # Time VS Threads graph definition 73 | jmeter.reportgenerator.graph.timeVsThreads.classname=org.apache.jmeter.report.processor.graph.impl.TimeVSThreadGraphConsumer 74 | jmeter.reportgenerator.graph.timeVsThreads.title=Time VS Threads 75 | 76 | # Bytes Throughput Over Time graph definition 77 | jmeter.reportgenerator.graph.bytesThroughputOverTime.classname=org.apache.jmeter.report.processor.graph.impl.BytesThroughputGraphConsumer 78 | jmeter.reportgenerator.graph.bytesThroughputOverTime.title=Bytes Throughput Over Time 79 | jmeter.reportgenerator.graph.bytesThroughputOverTime.property.set_granularity=${jmeter.reportgenerator.overall_granularity} 80 | 81 | # Response Time Over Time graph definition 82 | jmeter.reportgenerator.graph.responseTimesOverTime.classname=org.apache.jmeter.report.processor.graph.impl.ResponseTimeOverTimeGraphConsumer 83 | jmeter.reportgenerator.graph.responseTimesOverTime.title=Response Time Over Time 84 | jmeter.reportgenerator.graph.responseTimesOverTime.property.set_granularity=${jmeter.reportgenerator.overall_granularity} 85 | 86 | # Latencies Over Time graph definition 87 | jmeter.reportgenerator.graph.latenciesOverTime.classname=org.apache.jmeter.report.processor.graph.impl.LatencyOverTimeGraphConsumer 88 | jmeter.reportgenerator.graph.latenciesOverTime.title=Latencies Over Time 89 | jmeter.reportgenerator.graph.latenciesOverTime.property.set_granularity=${jmeter.reportgenerator.overall_granularity} 90 | 91 | # Response Time Vs Request graph definition 92 | jmeter.reportgenerator.graph.responseTimeVsRequest.classname=org.apache.jmeter.report.processor.graph.impl.ResponseTimeVSRequestGraphConsumer 93 | jmeter.reportgenerator.graph.responseTimeVsRequest.title=Response Time Vs Request 94 | jmeter.reportgenerator.graph.responseTimeVsRequest.exclude_controllers=true 95 | jmeter.reportgenerator.graph.responseTimeVsRequest.property.set_granularity=${jmeter.reportgenerator.overall_granularity} 96 | 97 | # Latencies Vs Request graph definition 98 | jmeter.reportgenerator.graph.latencyVsRequest.classname=org.apache.jmeter.report.processor.graph.impl.LatencyVSRequestGraphConsumer 99 | jmeter.reportgenerator.graph.latencyVsRequest.title=Latencies Vs Request 100 | jmeter.reportgenerator.graph.latencyVsRequest.exclude_controllers=true 101 | jmeter.reportgenerator.graph.latencyVsRequest.property.set_granularity=${jmeter.reportgenerator.overall_granularity} 102 | 103 | # Hits Per Second graph definition 104 | jmeter.reportgenerator.graph.hitsPerSecond.classname=org.apache.jmeter.report.processor.graph.impl.HitsPerSecondGraphConsumer 105 | jmeter.reportgenerator.graph.hitsPerSecond.title=Hits Per Second 106 | jmeter.reportgenerator.graph.hitsPerSecond.exclude_controllers=true 107 | jmeter.reportgenerator.graph.hitsPerSecond.property.set_granularity=${jmeter.reportgenerator.overall_granularity} 108 | 109 | # Codes Per Second graph definition 110 | jmeter.reportgenerator.graph.codesPerSecond.classname=org.apache.jmeter.report.processor.graph.impl.CodesPerSecondGraphConsumer 111 | jmeter.reportgenerator.graph.codesPerSecond.title=Codes Per Second 112 | jmeter.reportgenerator.graph.codesPerSecond.exclude_controllers=true 113 | jmeter.reportgenerator.graph.codesPerSecond.property.set_granularity=${jmeter.reportgenerator.overall_granularity} 114 | 115 | # Transactions Per Second graph definition 116 | jmeter.reportgenerator.graph.transactionsPerSecond.classname=org.apache.jmeter.report.processor.graph.impl.TransactionsPerSecondGraphConsumer 117 | jmeter.reportgenerator.graph.transactionsPerSecond.title=Transactions Per Second 118 | jmeter.reportgenerator.graph.transactionsPerSecond.property.set_granularity=${jmeter.reportgenerator.overall_granularity} 119 | 120 | # HTML Export 121 | jmeter.reportgenerator.exporter.html.classname=org.apache.jmeter.report.dashboard.HtmlTemplateExporter 122 | 123 | # Sets the source directory of templated files from which the html pages are generated. 124 | #jmeter.reportgenerator.exporter.html.property.template_dir=report-template 125 | 126 | # Sets the destination directory for generated html pages. 127 | # This will be overridden by the command line option -o 128 | #jmeter.reportgenerator.exporter.html.property.output_dir=report-output 129 | 130 | # Regular Expression which Indicates which graph series are filtered in display 131 | # Empty value means no filtering 132 | #jmeter.reportgenerator.exporter.html.series_filter= 133 | 134 | # Indicates whether series filter apply only on sample series or to all series 135 | # setting this to false can lead to empty graphs if series_filter does not 136 | # contain required series 137 | #jmeter.reportgenerator.exporter.html.filters_only_sample_series=true 138 | 139 | # Indicates whether only controller samples are displayed on graphs that support it. 140 | #jmeter.reportgenerator.exporter.html.show_controllers_only=false 141 | -------------------------------------------------------------------------------- /jmeter/bin/saveservice.properties: -------------------------------------------------------------------------------- 1 | #--------------------------------------------------------- 2 | # SAVESERVICE PROPERTIES - JMETER INTERNAL USE ONLY 3 | #--------------------------------------------------------- 4 | 5 | ## Licensed to the Apache Software Foundation (ASF) under one or more 6 | ## contributor license agreements. See the NOTICE file distributed with 7 | ## this work for additional information regarding copyright ownership. 8 | ## The ASF licenses this file to You under the Apache License, Version 2.0 9 | ## (the "License"); you may not use this file except in compliance with 10 | ## the License. You may obtain a copy of the License at 11 | ## 12 | ## http://www.apache.org/licenses/LICENSE-2.0 13 | ## 14 | ## Unless required by applicable law or agreed to in writing, software 15 | ## distributed under the License is distributed on an "AS IS" BASIS, 16 | ## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | ## See the License for the specific language governing permissions and 18 | ## limitations under the License. 19 | 20 | # This file is used to define how XStream (de-)serializes classnames 21 | # in JMX test plan files. 22 | 23 | # FOR JMETER INTERNAL USE ONLY 24 | 25 | #--------------------------------------------------------- 26 | 27 | # N.B. To ensure backward compatibility, please do NOT change or delete any entries 28 | 29 | # New entries can be added as necessary. 30 | # 31 | # Note that keys starting with an underscore are special, 32 | # and are not used as aliases. 33 | # 34 | # Please keep the entries in alphabetical order within the sections 35 | # to reduce the likelihood of duplicates 36 | # 37 | # version number of this file is now computed by a sha1 sum, so no need for 38 | # an explicit _file_version property anymore. 39 | # 40 | # For this sha1 sum we ignore every newline character. It can be computed 41 | # by the following command: 42 | # 43 | # cat bin/saveservice.properties | perl -ne 'chomp; print' | sha1sum 44 | # 45 | # Be aware, that every change in this file will change the sha1 sum! 46 | # 47 | # Conversion version (for JMX output files) 48 | # Must be updated if the file has been changed since the previous release 49 | # Format is: 50 | # Save service version=JMeter version at which change occured 51 | # 1.7 = 2.1.1 52 | # 1.8 = 2.1.2 53 | # (Some version updates were missed here...) 54 | # 2.0 = 2.3.1 55 | # 2.1 = 2.3.2 56 | # (Some version updates were missed here...) 57 | # 2.2 = 2.6 58 | # 2.3 = 2.7 59 | # 2.4 = 2.9 60 | # 2.5 = 2.10 61 | # 2.6 = 2.11 62 | # 2.7 = 2.12 63 | # 2.8 = 2.13 64 | # 2.9 = 2.14 65 | _version=2.9 66 | # 67 | # 68 | # Character set encoding used to read and write JMeter XML files and CSV results 69 | # 70 | _file_encoding=UTF-8 71 | # 72 | #--------------------------------------------------------- 73 | # 74 | # The following properties are used to create aliases 75 | # [Must all start with capital letter] 76 | # 77 | AccessLogSampler=org.apache.jmeter.protocol.http.sampler.AccessLogSampler 78 | AjpSampler=org.apache.jmeter.protocol.http.sampler.AjpSampler 79 | AjpSamplerGui=org.apache.jmeter.protocol.http.control.gui.AjpSamplerGui 80 | AnchorModifier=org.apache.jmeter.protocol.http.modifier.AnchorModifier 81 | AnchorModifierGui=org.apache.jmeter.protocol.http.modifier.gui.AnchorModifierGui 82 | Argument=org.apache.jmeter.config.Argument 83 | Arguments=org.apache.jmeter.config.Arguments 84 | ArgumentsPanel=org.apache.jmeter.config.gui.ArgumentsPanel 85 | AssertionGui=org.apache.jmeter.assertions.gui.AssertionGui 86 | AssertionVisualizer=org.apache.jmeter.visualizers.AssertionVisualizer 87 | AuthManager=org.apache.jmeter.protocol.http.control.AuthManager 88 | Authorization=org.apache.jmeter.protocol.http.control.Authorization 89 | AuthPanel=org.apache.jmeter.protocol.http.gui.AuthPanel 90 | BackendListener=org.apache.jmeter.visualizers.backend.BackendListener 91 | BackendListenerGui=org.apache.jmeter.visualizers.backend.BackendListenerGui 92 | BeanShellAssertion=org.apache.jmeter.assertions.BeanShellAssertion 93 | BeanShellAssertionGui=org.apache.jmeter.assertions.gui.BeanShellAssertionGui 94 | BeanShellListener=org.apache.jmeter.visualizers.BeanShellListener 95 | BeanShellPostProcessor=org.apache.jmeter.extractor.BeanShellPostProcessor 96 | BeanShellPreProcessor=org.apache.jmeter.modifiers.BeanShellPreProcessor 97 | BeanShellSampler=org.apache.jmeter.protocol.java.sampler.BeanShellSampler 98 | BeanShellSamplerGui=org.apache.jmeter.protocol.java.control.gui.BeanShellSamplerGui 99 | BeanShellTimer=org.apache.jmeter.timers.BeanShellTimer 100 | BSFAssertion=org.apache.jmeter.assertions.BSFAssertion 101 | BSFListener=org.apache.jmeter.visualizers.BSFListener 102 | BSFPreProcessor=org.apache.jmeter.modifiers.BSFPreProcessor 103 | BSFPostProcessor=org.apache.jmeter.extractor.BSFPostProcessor 104 | BSFSampler=org.apache.jmeter.protocol.java.sampler.BSFSampler 105 | BSFSamplerGui=org.apache.jmeter.protocol.java.control.gui.BSFSamplerGui 106 | BSFTimer=org.apache.jmeter.timers.BSFTimer 107 | CacheManager=org.apache.jmeter.protocol.http.control.CacheManager 108 | CacheManagerGui=org.apache.jmeter.protocol.http.gui.CacheManagerGui 109 | CompareAssertion=org.apache.jmeter.assertions.CompareAssertion 110 | ComparisonVisualizer=org.apache.jmeter.visualizers.ComparisonVisualizer 111 | ConfigTestElement=org.apache.jmeter.config.ConfigTestElement 112 | ConstantThroughputTimer=org.apache.jmeter.timers.ConstantThroughputTimer 113 | ConstantTimer=org.apache.jmeter.timers.ConstantTimer 114 | ConstantTimerGui=org.apache.jmeter.timers.gui.ConstantTimerGui 115 | Cookie=org.apache.jmeter.protocol.http.control.Cookie 116 | CookieManager=org.apache.jmeter.protocol.http.control.CookieManager 117 | CookiePanel=org.apache.jmeter.protocol.http.gui.CookiePanel 118 | CounterConfig=org.apache.jmeter.modifiers.CounterConfig 119 | CriticalSectionController=org.apache.jmeter.control.CriticalSectionController 120 | CriticalSectionControllerGui=org.apache.jmeter.control.gui.CriticalSectionControllerGui 121 | CounterConfigGui=org.apache.jmeter.modifiers.gui.CounterConfigGui 122 | CSVDataSet=org.apache.jmeter.config.CSVDataSet 123 | DebugPostProcessor=org.apache.jmeter.extractor.DebugPostProcessor 124 | DebugSampler=org.apache.jmeter.sampler.DebugSampler 125 | DistributionGraphVisualizer=org.apache.jmeter.visualizers.DistributionGraphVisualizer 126 | DNSCacheManager=org.apache.jmeter.protocol.http.control.DNSCacheManager 127 | DNSCachePanel=org.apache.jmeter.protocol.http.gui.DNSCachePanel 128 | DurationAssertion=org.apache.jmeter.assertions.DurationAssertion 129 | DurationAssertionGui=org.apache.jmeter.assertions.gui.DurationAssertionGui 130 | # Should really have been defined as floatProp to agree with other properties 131 | # No point changing this now 132 | FloatProperty=org.apache.jmeter.testelement.property.FloatProperty 133 | ForeachController=org.apache.jmeter.control.ForeachController 134 | ForeachControlPanel=org.apache.jmeter.control.gui.ForeachControlPanel 135 | FtpConfigGui=org.apache.jmeter.protocol.ftp.config.gui.FtpConfigGui 136 | FTPSampler=org.apache.jmeter.protocol.ftp.sampler.FTPSampler 137 | FtpTestSamplerGui=org.apache.jmeter.protocol.ftp.control.gui.FtpTestSamplerGui 138 | GaussianRandomTimer=org.apache.jmeter.timers.GaussianRandomTimer 139 | GaussianRandomTimerGui=org.apache.jmeter.timers.gui.GaussianRandomTimerGui 140 | GenericController=org.apache.jmeter.control.GenericController 141 | GraphAccumVisualizer=org.apache.jmeter.visualizers.GraphAccumVisualizer 142 | GraphVisualizer=org.apache.jmeter.visualizers.GraphVisualizer 143 | Header=org.apache.jmeter.protocol.http.control.Header 144 | HeaderManager=org.apache.jmeter.protocol.http.control.HeaderManager 145 | HeaderPanel=org.apache.jmeter.protocol.http.gui.HeaderPanel 146 | HTMLAssertion=org.apache.jmeter.assertions.HTMLAssertion 147 | HTMLAssertionGui=org.apache.jmeter.assertions.gui.HTMLAssertionGui 148 | HTTPArgument=org.apache.jmeter.protocol.http.util.HTTPArgument 149 | HTTPArgumentsPanel=org.apache.jmeter.protocol.http.gui.HTTPArgumentsPanel 150 | HTTPFileArg=org.apache.jmeter.protocol.http.util.HTTPFileArg 151 | HTTPFileArgs=org.apache.jmeter.protocol.http.util.HTTPFileArgs 152 | HttpDefaultsGui=org.apache.jmeter.protocol.http.config.gui.HttpDefaultsGui 153 | HtmlExtractor=org.apache.jmeter.extractor.HtmlExtractor 154 | HtmlExtractorGui=org.apache.jmeter.extractor.gui.HtmlExtractorGui 155 | # removed in r1039684, probably not released. Not present in r322831 or since. 156 | #HttpGenericSampler=org.apache.jmeter.protocol.http.sampler.HttpGenericSampler 157 | # removed in r1039684, probably not released. Not present in r322831 or since. 158 | #HttpGenericSamplerGui=org.apache.jmeter.protocol.http.control.gui.HttpGenericSamplerGui 159 | HttpMirrorControl=org.apache.jmeter.protocol.http.control.HttpMirrorControl 160 | HttpMirrorControlGui=org.apache.jmeter.protocol.http.control.gui.HttpMirrorControlGui 161 | # r397955 - removed test class. Keep as commented entry for info only. 162 | #HTTPNullSampler=org.apache.jmeter.protocol.http.sampler.HTTPNullSampler 163 | # Merge previous 2 HTTP samplers into one 164 | HTTPSampler_=org.apache.jmeter.protocol.http.sampler.HTTPSampler 165 | HTTPSampler2_=org.apache.jmeter.protocol.http.sampler.HTTPSampler2 166 | HTTPSamplerProxy,HTTPSampler,HTTPSampler2=org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy 167 | # Merge GUIs 168 | HttpTestSampleGui,HttpTestSampleGui2=org.apache.jmeter.protocol.http.control.gui.HttpTestSampleGui 169 | #HttpTestSampleGui2=org.apache.jmeter.protocol.http.control.gui.HttpTestSampleGui2 170 | IfController=org.apache.jmeter.control.IfController 171 | IfControllerPanel=org.apache.jmeter.control.gui.IfControllerPanel 172 | IncludeController=org.apache.jmeter.control.IncludeController 173 | IncludeControllerGui=org.apache.jmeter.control.gui.IncludeControllerGui 174 | InterleaveControl=org.apache.jmeter.control.InterleaveControl 175 | InterleaveControlGui=org.apache.jmeter.control.gui.InterleaveControlGui 176 | JavaConfig=org.apache.jmeter.protocol.java.config.JavaConfig 177 | JavaConfigGui=org.apache.jmeter.protocol.java.config.gui.JavaConfigGui 178 | JavaSampler=org.apache.jmeter.protocol.java.sampler.JavaSampler 179 | JavaTest=org.apache.jmeter.protocol.java.test.JavaTest 180 | JavaTestSamplerGui=org.apache.jmeter.protocol.java.control.gui.JavaTestSamplerGui 181 | JDBCDataSource=org.apache.jmeter.protocol.jdbc.config.DataSourceElement 182 | JDBCPostProcessor=org.apache.jmeter.protocol.jdbc.processor.JDBCPostProcessor 183 | JDBCPreProcessor=org.apache.jmeter.protocol.jdbc.processor.JDBCPreProcessor 184 | JDBCSampler=org.apache.jmeter.protocol.jdbc.sampler.JDBCSampler 185 | # Renamed to JMSSamplerGui; keep original entry for backwards compatibility 186 | JMSConfigGui=org.apache.jmeter.protocol.jms.control.gui.JMSConfigGui 187 | JMSProperties=org.apache.jmeter.protocol.jms.sampler.JMSProperties 188 | JMSProperty=org.apache.jmeter.protocol.jms.sampler.JMSProperty 189 | JMSPublisherGui=org.apache.jmeter.protocol.jms.control.gui.JMSPublisherGui 190 | JMSSampler=org.apache.jmeter.protocol.jms.sampler.JMSSampler 191 | JMSSamplerGui=org.apache.jmeter.protocol.jms.control.gui.JMSSamplerGui 192 | JMSSubscriberGui=org.apache.jmeter.protocol.jms.control.gui.JMSSubscriberGui 193 | JSONPostProcessor=org.apache.jmeter.extractor.json.jsonpath.JSONPostProcessor 194 | JSONPostProcessorGui=org.apache.jmeter.extractor.json.jsonpath.gui.JSONPostProcessorGui 195 | # Removed in r545311 as Jndi no longer present; keep for compat. 196 | JndiDefaultsGui=org.apache.jmeter.protocol.jms.control.gui.JndiDefaultsGui 197 | JSR223Assertion=org.apache.jmeter.assertions.JSR223Assertion 198 | JSR223Listener=org.apache.jmeter.visualizers.JSR223Listener 199 | JSR223PostProcessor=org.apache.jmeter.extractor.JSR223PostProcessor 200 | JSR223PreProcessor=org.apache.jmeter.modifiers.JSR223PreProcessor 201 | JSR223Sampler=org.apache.jmeter.protocol.java.sampler.JSR223Sampler 202 | JSR223Timer=org.apache.jmeter.timers.JSR223Timer 203 | JUnitSampler=org.apache.jmeter.protocol.java.sampler.JUnitSampler 204 | JUnitTestSamplerGui=org.apache.jmeter.protocol.java.control.gui.JUnitTestSamplerGui 205 | KeystoreConfig=org.apache.jmeter.config.KeystoreConfig 206 | LDAPArgument=org.apache.jmeter.protocol.ldap.config.gui.LDAPArgument 207 | LDAPArguments=org.apache.jmeter.protocol.ldap.config.gui.LDAPArguments 208 | LDAPArgumentsPanel=org.apache.jmeter.protocol.ldap.config.gui.LDAPArgumentsPanel 209 | LdapConfigGui=org.apache.jmeter.protocol.ldap.config.gui.LdapConfigGui 210 | LdapExtConfigGui=org.apache.jmeter.protocol.ldap.config.gui.LdapExtConfigGui 211 | LDAPExtSampler=org.apache.jmeter.protocol.ldap.sampler.LDAPExtSampler 212 | LdapExtTestSamplerGui=org.apache.jmeter.protocol.ldap.control.gui.LdapExtTestSamplerGui 213 | LDAPSampler=org.apache.jmeter.protocol.ldap.sampler.LDAPSampler 214 | LdapTestSamplerGui=org.apache.jmeter.protocol.ldap.control.gui.LdapTestSamplerGui 215 | LogicControllerGui=org.apache.jmeter.control.gui.LogicControllerGui 216 | LoginConfig=org.apache.jmeter.config.LoginConfig 217 | LoginConfigGui=org.apache.jmeter.config.gui.LoginConfigGui 218 | LoopController=org.apache.jmeter.control.LoopController 219 | LoopControlPanel=org.apache.jmeter.control.gui.LoopControlPanel 220 | MailerModel=org.apache.jmeter.reporters.MailerModel 221 | MailerResultCollector=org.apache.jmeter.reporters.MailerResultCollector 222 | MailerVisualizer=org.apache.jmeter.visualizers.MailerVisualizer 223 | MailReaderSampler=org.apache.jmeter.protocol.mail.sampler.MailReaderSampler 224 | MailReaderSamplerGui=org.apache.jmeter.protocol.mail.sampler.gui.MailReaderSamplerGui 225 | MD5HexAssertion=org.apache.jmeter.assertions.MD5HexAssertion 226 | MD5HexAssertionGUI=org.apache.jmeter.assertions.gui.MD5HexAssertionGUI 227 | ModuleController=org.apache.jmeter.control.ModuleController 228 | ModuleControllerGui=org.apache.jmeter.control.gui.ModuleControllerGui 229 | MongoScriptSampler=org.apache.jmeter.protocol.mongodb.sampler.MongoScriptSampler 230 | MongoSourceElement=org.apache.jmeter.protocol.mongodb.config.MongoSourceElement 231 | MonitorHealthVisualizer=org.apache.jmeter.visualizers.MonitorHealthVisualizer 232 | NamePanel=org.apache.jmeter.gui.NamePanel 233 | ObsoleteGui=org.apache.jmeter.config.gui.ObsoleteGui 234 | OnceOnlyController=org.apache.jmeter.control.OnceOnlyController 235 | OnceOnlyControllerGui=org.apache.jmeter.control.gui.OnceOnlyControllerGui 236 | # removed in 3.0, class was deleted in r1722962 237 | ParamMask=org.apache.jmeter.protocol.http.modifier.ParamMask 238 | # removed in 3.0, class was deleted in r1722757 239 | ParamModifier=org.apache.jmeter.protocol.http.modifier.ParamModifier 240 | # removed in 3.0, class was deleted in r1722757 241 | ParamModifierGui=org.apache.jmeter.protocol.http.modifier.gui.ParamModifierGui 242 | PoissonRandomTimer=org.apache.jmeter.timers.PoissonRandomTimer 243 | PoissonRandomTimerGui=org.apache.jmeter.timers.gui.PoissonRandomTimerGui 244 | PropertyControlGui=org.apache.jmeter.visualizers.PropertyControlGui 245 | ProxyControl=org.apache.jmeter.protocol.http.proxy.ProxyControl 246 | ProxyControlGui=org.apache.jmeter.protocol.http.proxy.gui.ProxyControlGui 247 | PublisherSampler=org.apache.jmeter.protocol.jms.sampler.PublisherSampler 248 | RandomControlGui=org.apache.jmeter.control.gui.RandomControlGui 249 | RandomController=org.apache.jmeter.control.RandomController 250 | RandomOrderController=org.apache.jmeter.control.RandomOrderController 251 | RandomOrderControllerGui=org.apache.jmeter.control.gui.RandomOrderControllerGui 252 | RandomVariableConfig=org.apache.jmeter.config.RandomVariableConfig 253 | RecordController=org.apache.jmeter.protocol.http.control.gui.RecordController 254 | RecordingController=org.apache.jmeter.protocol.http.control.RecordingController 255 | # removed in r1039684, class was deleted in r580452 256 | ReflectionThreadGroup=org.apache.jmeter.threads.ReflectionThreadGroup 257 | RegexExtractor=org.apache.jmeter.extractor.RegexExtractor 258 | RegexExtractorGui=org.apache.jmeter.extractor.gui.RegexExtractorGui 259 | RegExUserParameters=org.apache.jmeter.protocol.http.modifier.RegExUserParameters 260 | RegExUserParametersGui=org.apache.jmeter.protocol.http.modifier.gui.RegExUserParametersGui 261 | RemoteListenerWrapper=org.apache.jmeter.samplers.RemoteListenerWrapper 262 | RemoteSampleListenerWrapper=org.apache.jmeter.samplers.RemoteSampleListenerWrapper 263 | RemoteTestListenerWrapper=org.apache.jmeter.samplers.RemoteTestListenerWrapper 264 | RemoteThreadsListenerWrapper=org.apache.jmeter.threads.RemoteThreadsListenerWrapper 265 | ResponseAssertion=org.apache.jmeter.assertions.ResponseAssertion 266 | RespTimeGraphVisualizer=org.apache.jmeter.visualizers.RespTimeGraphVisualizer 267 | ResultAction=org.apache.jmeter.reporters.ResultAction 268 | ResultActionGui=org.apache.jmeter.reporters.gui.ResultActionGui 269 | ResultCollector=org.apache.jmeter.reporters.ResultCollector 270 | ResultSaver=org.apache.jmeter.reporters.ResultSaver 271 | ResultSaverGui=org.apache.jmeter.reporters.gui.ResultSaverGui 272 | RunTime=org.apache.jmeter.control.RunTime 273 | RunTimeGui=org.apache.jmeter.control.gui.RunTimeGui 274 | SampleSaveConfiguration=org.apache.jmeter.samplers.SampleSaveConfiguration 275 | SampleTimeout=org.apache.jmeter.modifiers.SampleTimeout 276 | SampleTimeoutGui=org.apache.jmeter.modifiers.gui.SampleTimeoutGui 277 | SimpleConfigGui=org.apache.jmeter.config.gui.SimpleConfigGui 278 | SimpleDataWriter=org.apache.jmeter.visualizers.SimpleDataWriter 279 | SizeAssertion=org.apache.jmeter.assertions.SizeAssertion 280 | SizeAssertionGui=org.apache.jmeter.assertions.gui.SizeAssertionGui 281 | SMIMEAssertion=org.apache.jmeter.assertions.SMIMEAssertionTestElement 282 | SMIMEAssertionGui=org.apache.jmeter.assertions.gui.SMIMEAssertionGui 283 | SmtpSampler=org.apache.jmeter.protocol.smtp.sampler.SmtpSampler 284 | SmtpSamplerGui=org.apache.jmeter.protocol.smtp.sampler.gui.SmtpSamplerGui 285 | SoapSampler=org.apache.jmeter.protocol.http.sampler.SoapSampler 286 | SoapSamplerGui=org.apache.jmeter.protocol.http.control.gui.SoapSamplerGui 287 | SplineVisualizer=org.apache.jmeter.visualizers.SplineVisualizer 288 | # Originally deleted in r397955 as class is obsolete; needed for compat. 289 | SqlConfigGui=org.apache.jmeter.protocol.jdbc.config.gui.SqlConfigGui 290 | StatGraphVisualizer=org.apache.jmeter.visualizers.StatGraphVisualizer 291 | StatVisualizer=org.apache.jmeter.visualizers.StatVisualizer 292 | SubscriberSampler=org.apache.jmeter.protocol.jms.sampler.SubscriberSampler 293 | SubstitutionElement=org.apache.jmeter.assertions.SubstitutionElement 294 | Summariser=org.apache.jmeter.reporters.Summariser 295 | SummariserGui=org.apache.jmeter.reporters.gui.SummariserGui 296 | SummaryReport=org.apache.jmeter.visualizers.SummaryReport 297 | SwitchController=org.apache.jmeter.control.SwitchController 298 | SwitchControllerGui=org.apache.jmeter.control.gui.SwitchControllerGui 299 | SyncTimer=org.apache.jmeter.timers.SyncTimer 300 | SystemSampler=org.apache.jmeter.protocol.system.SystemSampler 301 | SystemSamplerGui=org.apache.jmeter.protocol.system.gui.SystemSamplerGui 302 | TableVisualizer=org.apache.jmeter.visualizers.TableVisualizer 303 | TCPConfigGui=org.apache.jmeter.protocol.tcp.config.gui.TCPConfigGui 304 | TCPSampler=org.apache.jmeter.protocol.tcp.sampler.TCPSampler 305 | TCPSamplerGui=org.apache.jmeter.protocol.tcp.control.gui.TCPSamplerGui 306 | TestAction=org.apache.jmeter.sampler.TestAction 307 | TestActionGui=org.apache.jmeter.sampler.gui.TestActionGui 308 | TestBeanGUI=org.apache.jmeter.testbeans.gui.TestBeanGUI 309 | TestFragmentController=org.apache.jmeter.control.TestFragmentController 310 | TestFragmentControllerGui=org.apache.jmeter.control.gui.TestFragmentControllerGui 311 | TestPlan=org.apache.jmeter.testelement.TestPlan 312 | TestPlanGui=org.apache.jmeter.control.gui.TestPlanGui 313 | ThreadGroup=org.apache.jmeter.threads.ThreadGroup 314 | ThreadGroupGui=org.apache.jmeter.threads.gui.ThreadGroupGui 315 | PostThreadGroup=org.apache.jmeter.threads.PostThreadGroup 316 | PostThreadGroupGui=org.apache.jmeter.threads.gui.PostThreadGroupGui 317 | SetupThreadGroup=org.apache.jmeter.threads.SetupThreadGroup 318 | SetupThreadGroupGui=org.apache.jmeter.threads.gui.SetupThreadGroupGui 319 | ThroughputController=org.apache.jmeter.control.ThroughputController 320 | ThroughputControllerGui=org.apache.jmeter.control.gui.ThroughputControllerGui 321 | TransactionController=org.apache.jmeter.control.TransactionController 322 | TransactionControllerGui=org.apache.jmeter.control.gui.TransactionControllerGui 323 | TransactionSampler=org.apache.jmeter.control.TransactionSampler 324 | UniformRandomTimer=org.apache.jmeter.timers.UniformRandomTimer 325 | UniformRandomTimerGui=org.apache.jmeter.timers.gui.UniformRandomTimerGui 326 | URLRewritingModifier=org.apache.jmeter.protocol.http.modifier.URLRewritingModifier 327 | URLRewritingModifierGui=org.apache.jmeter.protocol.http.modifier.gui.URLRewritingModifierGui 328 | UserParameterModifier=org.apache.jmeter.protocol.http.modifier.UserParameterModifier 329 | UserParameterModifierGui=org.apache.jmeter.protocol.http.modifier.gui.UserParameterModifierGui 330 | UserParameters=org.apache.jmeter.modifiers.UserParameters 331 | UserParametersGui=org.apache.jmeter.modifiers.gui.UserParametersGui 332 | ViewResultsFullVisualizer=org.apache.jmeter.visualizers.ViewResultsFullVisualizer 333 | # removed in 3.0, class was deleted in r1722757 334 | WebServiceSampler=org.apache.jmeter.protocol.http.sampler.WebServiceSampler 335 | # removed in 3.0, class was deleted in r1722757 336 | WebServiceSamplerGui=org.apache.jmeter.protocol.http.control.gui.WebServiceSamplerGui 337 | WhileController=org.apache.jmeter.control.WhileController 338 | WhileControllerGui=org.apache.jmeter.control.gui.WhileControllerGui 339 | WorkBench=org.apache.jmeter.testelement.WorkBench 340 | WorkBenchGui=org.apache.jmeter.control.gui.WorkBenchGui 341 | XMLAssertion=org.apache.jmeter.assertions.XMLAssertion 342 | XMLAssertionGui=org.apache.jmeter.assertions.gui.XMLAssertionGui 343 | XMLSchemaAssertion=org.apache.jmeter.assertions.XMLSchemaAssertion 344 | XMLSchemaAssertionGUI=org.apache.jmeter.assertions.gui.XMLSchemaAssertionGUI 345 | XPathAssertion=org.apache.jmeter.assertions.XPathAssertion 346 | XPathAssertionGui=org.apache.jmeter.assertions.gui.XPathAssertionGui 347 | XPathExtractor=org.apache.jmeter.extractor.XPathExtractor 348 | XPathExtractorGui=org.apache.jmeter.extractor.gui.XPathExtractorGui 349 | # 350 | # Properties - all start with lower case letter and end with Prop 351 | # 352 | boolProp=org.apache.jmeter.testelement.property.BooleanProperty 353 | collectionProp=org.apache.jmeter.testelement.property.CollectionProperty 354 | doubleProp=org.apache.jmeter.testelement.property.DoubleProperty 355 | elementProp=org.apache.jmeter.testelement.property.TestElementProperty 356 | # see above - already defined as FloatProperty 357 | #floatProp=org.apache.jmeter.testelement.property.FloatProperty 358 | intProp=org.apache.jmeter.testelement.property.IntegerProperty 359 | longProp=org.apache.jmeter.testelement.property.LongProperty 360 | mapProp=org.apache.jmeter.testelement.property.MapProperty 361 | objProp=org.apache.jmeter.testelement.property.ObjectProperty 362 | stringProp=org.apache.jmeter.testelement.property.StringProperty 363 | # 364 | # Other - must start with a lower case letter (and not end with Prop) 365 | # (otherwise they could clash with the initial set of aliases) 366 | # 367 | hashTree=org.apache.jorphan.collections.ListedHashTree 368 | jmeterTestPlan=org.apache.jmeter.save.ScriptWrapper 369 | sample=org.apache.jmeter.samplers.SampleResult 370 | httpSample=org.apache.jmeter.protocol.http.sampler.HTTPSampleResult 371 | statSample=org.apache.jmeter.samplers.StatisticalSampleResult 372 | testResults=org.apache.jmeter.save.TestResultWrapper 373 | assertionResult=org.apache.jmeter.assertions.AssertionResult 374 | monitorStats=org.apache.jmeter.visualizers.MonitorStats 375 | sampleEvent=org.apache.jmeter.samplers.SampleEvent 376 | # 377 | # Converters to register. Must start line with '_' 378 | # If the converter is a collection of subitems, set equal to "collection" 379 | # If the converter needs to know the class mappings but is not a collection of 380 | # subitems, set it equal to "mapping" 381 | _org.apache.jmeter.protocol.http.sampler.HTTPSamplerBaseConverter=collection 382 | _org.apache.jmeter.protocol.http.util.HTTPResultConverter=collection 383 | _org.apache.jmeter.save.converters.BooleanPropertyConverter= 384 | _org.apache.jmeter.save.converters.IntegerPropertyConverter= 385 | _org.apache.jmeter.save.converters.LongPropertyConverter= 386 | _org.apache.jmeter.save.converters.MultiPropertyConverter=collection 387 | _org.apache.jmeter.save.converters.SampleEventConverter= 388 | _org.apache.jmeter.save.converters.SampleResultConverter=collection 389 | _org.apache.jmeter.save.converters.SampleSaveConfigurationConverter=collection 390 | _org.apache.jmeter.save.converters.StringPropertyConverter= 391 | _org.apache.jmeter.save.converters.HashTreeConverter=collection 392 | _org.apache.jmeter.save.converters.TestElementConverter=collection 393 | _org.apache.jmeter.save.converters.TestElementPropertyConverter=collection 394 | _org.apache.jmeter.save.converters.TestResultWrapperConverter=collection 395 | _org.apache.jmeter.save.ScriptWrapperConverter=mapping 396 | # 397 | # Remember to update the _version entry 398 | # 399 | -------------------------------------------------------------------------------- /jmeter/bin/system.properties: -------------------------------------------------------------------------------- 1 | # Sample system.properties file 2 | # 3 | ## Licensed to the Apache Software Foundation (ASF) under one or more 4 | ## contributor license agreements. See the NOTICE file distributed with 5 | ## this work for additional information regarding copyright ownership. 6 | ## The ASF licenses this file to You under the Apache License, Version 2.0 7 | ## (the "License"); you may not use this file except in compliance with 8 | ## the License. You may obtain a copy of the License at 9 | ## 10 | ## http://www.apache.org/licenses/LICENSE-2.0 11 | ## 12 | ## Unless required by applicable law or agreed to in writing, software 13 | ## distributed under the License is distributed on an "AS IS" BASIS, 14 | ## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | ## See the License for the specific language governing permissions and 16 | ## limitations under the License. 17 | 18 | # Commons Logging properties 19 | # Used by HttpComponents 4.x, see: 20 | # http://hc.apache.org/httpcomponents-client-4.3.x/logging.html 21 | # 22 | # By default, Commons Logging is configured by JMeter to use the same logging system 23 | # as the main JMeter code; to configure it please see jmeter.properties. 24 | # 25 | # Uncomment to enable debugging of Commons Logging setup; may be useful if 26 | # implementation cannot be instantiated: 27 | #org.apache.commons.logging.diagnostics.dest=STDERR 28 | # 29 | # Uncomment to enable Commons Logging to use standard output 30 | #org.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog 31 | #org.apache.commons.logging.simplelog.showdatetime=true 32 | # 33 | # Uncomment the following two lines to generate basic debug logging for HC4.x 34 | #org.apache.commons.logging.simplelog.log.org.apache.http=DEBUG 35 | #org.apache.commons.logging.simplelog.log.org.apache.http.wire=ERROR 36 | 37 | # Java networking-related properties 38 | # 39 | # For details of Oracle Java network properties, see for example: 40 | # http://download.oracle.com/javase/1.5.0/docs/guide/net/properties.html 41 | # 42 | #java.net.preferIPv4Stack=false 43 | #java.net.preferIPv6Addresses=false 44 | #networkaddress.cache.ttl=-1 45 | #networkaddress.cache.negative.ttl=10 46 | 47 | # 48 | # 49 | # SSL properties (moved from jmeter.properties) 50 | # 51 | # See http://download.oracle.com/javase/1.5.0/docs/guide/security/jsse/JSSERefGuide.html#Customization 52 | # for information on the javax.ssl system properties 53 | 54 | # Truststore properties (trusted certificates) 55 | #javax.net.ssl.trustStore=/path/to/[jsse]cacerts 56 | #javax.net.ssl.trustStorePassword 57 | #javax.net.ssl.trustStoreProvider 58 | #javax.net.ssl.trustStoreType [default = KeyStore.getDefaultType()] 59 | 60 | # Keystore properties (client certificates) 61 | # Location 62 | #javax.net.ssl.keyStore=.keystore 63 | # 64 | #The password to your keystore 65 | #javax.net.ssl.keyStorePassword=changeit 66 | # 67 | #javax.net.ssl.keyStoreProvider 68 | #javax.net.ssl.keyStoreType [default = KeyStore.getDefaultType()] 69 | 70 | # SSL debugging: 71 | # See http://download.oracle.com/javase/1.5.0/docs/guide/security/jsse/JSSERefGuide.html#Debug 72 | # 73 | # javax.net.debug=help - generates the list below: 74 | #all turn on all debugging 75 | #ssl turn on ssl debugging 76 | # 77 | #The following can be used with ssl: 78 | # record enable per-record tracing 79 | # handshake print each handshake message 80 | # keygen print key generation data 81 | # session print session activity 82 | # defaultctx print default SSL initialization 83 | # sslctx print SSLContext tracing 84 | # sessioncache print session cache tracing 85 | # keymanager print key manager tracing 86 | # trustmanager print trust manager tracing 87 | # 88 | # handshake debugging can be widened with: 89 | # data hex dump of each handshake message 90 | # verbose verbose handshake message printing 91 | # 92 | # record debugging can be widened with: 93 | # plaintext hex dump of record plaintext 94 | # 95 | # Examples: 96 | #javax.net.debug=ssl 97 | #javax.net.debug=sslctx,session,sessioncache 98 | # 99 | # 100 | # We enable the following property to allow headers such as "Host" to be passed through. 101 | # See http://bugs.java.com/bugdatabase/view_bug.do?bug_id=6996110 102 | sun.net.http.allowRestrictedHeaders=true 103 | 104 | #Uncomment for Kerberos authentication and edit the 2 config files to match your domains 105 | #With the following configuration krb5.conf and jaas.conf must be located in bin folder 106 | #You can modify these file paths to use absolute location 107 | #java.security.krb5.conf=krb5.conf 108 | #java.security.auth.login.config=jaas.conf 109 | 110 | # Location of keytool application 111 | # This property can be defined if JMeter cannot find the application automatically 112 | # It should not be necessary in most cases. 113 | #keytool.directory=/bin 114 | -------------------------------------------------------------------------------- /jmeter/bin/upgrade.properties: -------------------------------------------------------------------------------- 1 | # Class, property and value upgrade equivalences. 2 | 3 | ## Licensed to the Apache Software Foundation (ASF) under one or more 4 | ## contributor license agreements. See the NOTICE file distributed with 5 | ## this work for additional information regarding copyright ownership. 6 | ## The ASF licenses this file to You under the Apache License, Version 2.0 7 | ## (the "License"); you may not use this file except in compliance with 8 | ## the License. You may obtain a copy of the License at 9 | ## 10 | ## http://www.apache.org/licenses/LICENSE-2.0 11 | ## 12 | ## Unless required by applicable law or agreed to in writing, software 13 | ## distributed under the License is distributed on an "AS IS" BASIS, 14 | ## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | ## See the License for the specific language governing permissions and 16 | ## limitations under the License. 17 | 18 | # 19 | # Format is as follows -- 20 | # for renamed test element & GUI classes: 21 | # old.class.Name=new.class.Name 22 | # old.class.Name|guiClassName=new.class.Name 23 | # (e.g. for ConfigTestElement) 24 | # 25 | # for renamed / deleted properties: 26 | # class.Name/Old.propertyName=newPropertyName 27 | # if newPropertyName is omitted, then property is deleted 28 | # 29 | # for renamed values: 30 | # old.class.Name.old.propertyName/oldValue=newValue 31 | # 32 | 33 | org.apache.jmeter.protocol.http.config.gui.UrlConfigGui=org.apache.jmeter.protocol.http.config.gui.HttpDefaultsGui 34 | org.apache.jmeter.assertions.Assertion=org.apache.jmeter.assertions.ResponseAssertion 35 | org.apache.jmeter.protocol.http.sampler.HTTPSamplerFull=org.apache.jmeter.protocol.http.sampler.HTTPSampler 36 | org.apache.jmeter.control.gui.RecordController=org.apache.jmeter.protocol.http.control.gui.RecordController 37 | 38 | org.apache.jmeter.timers.gui.ConstantThroughputTimerGui=org.apache.jmeter.testbeans.gui.TestBeanGUI 39 | org.apache.jmeter.timers.ConstantThroughputTimer/ConstantThroughputTimer.throughput=throughput 40 | 41 | org.apache.jmeter.protocol.jdbc.control.gui.JdbcTestSampleGui=org.apache.jmeter.testbeans.gui.TestBeanGUI 42 | org.apache.jmeter.protocol.jdbc.sampler.JDBCSampler/JDBCSampler.query=query 43 | #org.apache.jmeter.protocol.jdbc.sampler.JDBCSampler.JDBCSampler.dataSource/NULL= 44 | 45 | # Convert DBconfig 46 | org.apache.jmeter.protocol.jdbc.config.gui.DbConfigGui=org.apache.jmeter.testbeans.gui.TestBeanGUI 47 | org.apache.jmeter.config.ConfigTestElement|org.apache.jmeter.protocol.jdbc.config.gui.DbConfigGui=org.apache.jmeter.protocol.jdbc.config.DataSourceElement 48 | org.apache.jmeter.protocol.jdbc.config.DataSourceElement/JDBCSampler.url=dbUrl 49 | org.apache.jmeter.protocol.jdbc.config.DataSourceElement/JDBCSampler.driver=driver 50 | org.apache.jmeter.protocol.jdbc.config.DataSourceElement/JDBCSampler.query=query 51 | org.apache.jmeter.protocol.jdbc.config.DataSourceElement/ConfigTestElement.username=username 52 | org.apache.jmeter.protocol.jdbc.config.DataSourceElement/ConfigTestElement.password=password 53 | 54 | # Convert PoolConfig 55 | org.apache.jmeter.protocol.jdbc.config.gui.PoolConfigGui=org.apache.jmeter.testbeans.gui.TestBeanGUI 56 | org.apache.jmeter.config.ConfigTestElement|org.apache.jmeter.protocol.jdbc.config.gui.PoolConfigGui=org.apache.jmeter.protocol.jdbc.config.DataSourceElement 57 | org.apache.jmeter.protocol.jdbc.config.DataSourceElement/JDBCSampler.connections= 58 | org.apache.jmeter.protocol.jdbc.config.DataSourceElement/JDBCSampler.connPoolClass= 59 | org.apache.jmeter.protocol.jdbc.config.DataSourceElement/JDBCSampler.maxuse=poolMax 60 | 61 | # SQL Config 62 | org.apache.jmeter.config.ConfigTestElement/JDBCSampler.query=query 63 | org.apache.jmeter.protocol.http.control.Header/TestElement.name=Header.name 64 | 65 | # Upgrade AccessLogSampler 66 | org.apache.jmeter.protocol.http.control.gui.AccessLogSamplerGui=org.apache.jmeter.testbeans.gui.TestBeanGUI 67 | org.apache.jmeter.protocol.http.sampler.AccessLogSampler/AccessLogSampler.log_file=logFile 68 | org.apache.jmeter.protocol.http.sampler.AccessLogSampler/HTTPSampler.port=portString 69 | #Is the following used now? 70 | #org.apache.jmeter.protocol.http.sampler.AccessLogSampler/AccessLogSampler.generator_class_name= 71 | #Looks to be a new field 72 | #filterClassName 73 | org.apache.jmeter.protocol.http.sampler.AccessLogSampler/HTTPSampler.domain=domain 74 | org.apache.jmeter.protocol.http.sampler.AccessLogSampler/AccessLogSampler.parser_class_name=parserClassName 75 | org.apache.jmeter.protocol.http.sampler.AccessLogSampler/HTTPSampler.image_parser=imageParsing 76 | 77 | # Renamed class 78 | org.apache.jmeter.protocol.jms.control.gui.JMSConfigGui=org.apache.jmeter.protocol.jms.control.gui.JMSSamplerGui 79 | 80 | # These classes have been deleted; there's no defined replacement 81 | org.apache.jmeter.protocol.jdbc.config.gui.SqlConfigGui=org.apache.jmeter.config.gui.ObsoleteGui 82 | org.apache.jmeter.protocol.jms.control.gui.JndiDefaultsGui=org.apache.jmeter.config.gui.ObsoleteGui 83 | # Should probably map to something other than ObsoleteGui... 84 | org.apache.jmeter.threads.ReflectionThreadGroup=org.apache.jmeter.config.gui.ObsoleteGui 85 | 86 | # Convert BSFSamplerGui 87 | org.apache.jmeter.protocol.java.control.gui.BSFSamplerGui=org.apache.jmeter.testbeans.gui.TestBeanGUI 88 | org.apache.jmeter.protocol.java.sampler.BSFSampler/BSFSampler.filename=filename 89 | org.apache.jmeter.protocol.java.sampler.BSFSampler/BSFSampler.language=scriptLanguage 90 | org.apache.jmeter.protocol.java.sampler.BSFSampler/BSFSampler.parameters=parameters 91 | org.apache.jmeter.protocol.java.sampler.BSFSampler/BSFSampler.query=script 92 | 93 | # Obsolete Http user Parameters modifier test element 94 | # Note: ConfigTestElement is the test element associated with ObsoleteGui 95 | org.apache.jmeter.protocol.http.modifier.UserParameterModifier=org.apache.jmeter.config.ConfigTestElement 96 | org.apache.jmeter.protocol.http.modifier.gui.UserParameterModifierGui=org.apache.jmeter.config.gui.ObsoleteGui 97 | 98 | # Obsolete Graph Full Results listener 99 | org.apache.jmeter.visualizers.GraphAccumVisualizer=org.apache.jmeter.config.gui.ObsoleteGui 100 | # removed in 3.0, class was deleted in r1722757 101 | org.apache.jmeter.protocol.http.sampler.WebServiceSampler=org.apache.jmeter.config.ConfigTestElement 102 | # removed in 3.0, class was deleted in r1722757 103 | org.apache.jmeter.protocol.http.control.gui.WebServiceSamplerGui=org.apache.jmeter.config.gui.ObsoleteGui 104 | # removed in 3.0, class was deleted in r1722757 105 | org.apache.jmeter.protocol.http.modifier.ParamModifier=org.apache.jmeter.config.ConfigTestElement 106 | # removed in 3.0, class was deleted in r1722962 107 | org.apache.jmeter.protocol.http.modifier.ParamMask=org.apache.jmeter.config.ConfigTestElement 108 | # removed in 3.0, class was deleted in r1722757 109 | org.apache.jmeter.protocol.http.modifier.gui.ParamModifierGui=org.apache.jmeter.config.gui.ObsoleteGui -------------------------------------------------------------------------------- /jmeter/bin/user.properties: -------------------------------------------------------------------------------- 1 | # Sample user.properties file 2 | # 3 | ## Licensed to the Apache Software Foundation (ASF) under one or more 4 | ## contributor license agreements. See the NOTICE file distributed with 5 | ## this work for additional information regarding copyright ownership. 6 | ## The ASF licenses this file to You under the Apache License, Version 2.0 7 | ## (the "License"); you may not use this file except in compliance with 8 | ## the License. You may obtain a copy of the License at 9 | ## 10 | ## http://www.apache.org/licenses/LICENSE-2.0 11 | ## 12 | ## Unless required by applicable law or agreed to in writing, software 13 | ## distributed under the License is distributed on an "AS IS" BASIS, 14 | ## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | ## See the License for the specific language governing permissions and 16 | ## limitations under the License. 17 | 18 | #--------------------------------------------------------------------------- 19 | # Classpath configuration 20 | #--------------------------------------------------------------------------- 21 | # 22 | # List of paths (separated by ;) to search for additional JMeter plugin classes, 23 | # for example new GUI elements and samplers. 24 | # A path item can either be a jar file or a directory. 25 | # Any jar file in such a directory will be automatically included, 26 | # jar files in sub directories are ignored. 27 | # The given value is in addition to any jars found in the lib/ext directory. 28 | # Do not use this for utility or plugin dependency jars. 29 | #search_paths=/app1/lib;/app2/lib 30 | 31 | # List of paths that JMeter will search for utility and plugin dependency classes. 32 | # Use your platform path separator (java.io.File.separatorChar in Java) to separate multiple paths. 33 | # A path item can either be a jar file or a directory. 34 | # Any jar file in such a directory will be automatically included, 35 | # jar files in sub directories are ignored. 36 | # The given value is in addition to any jars found in the lib directory. 37 | # All entries will be added to the class path of the system class loader 38 | # and also to the path of the JMeter internal loader. 39 | # Paths with spaces may cause problems for the JVM 40 | #Example for windows (; separator) 41 | #user.classpath=../classes;../lib;../app1/jar1.jar;../app2/jar2.jar 42 | #Example for linux (:separator) 43 | #user.classpath=../classes:../lib:../app1/jar1.jar:../app2/jar2.jar 44 | 45 | # List of paths (separated by ;) that JMeter will search for utility 46 | # and plugin dependency classes. 47 | # A path item can either be a jar file or a directory. 48 | # Any jar file in such a directory will be automatically included, 49 | # jar files in sub directories are ignored. 50 | # The given value is in addition to any jars found in the lib directory 51 | # or given by the user.classpath property. 52 | # All entries will be added to the path of the JMeter internal loader only. 53 | # For plugin dependencies using plugin_dependency_paths should be preferred over 54 | # user.classpath. 55 | #plugin_dependency_paths=../dependencies/lib;../app1/jar1.jar;../app2/jar2.jar 56 | 57 | #--------------------------------------------------------------------------- 58 | # Logging configuration 59 | #--------------------------------------------------------------------------- 60 | #log_level.jorphan.reflect=DEBUG 61 | # Warning: enabling the next debug line causes javax.net.ssl.SSLException: Received fatal alert: unexpected_message 62 | # for certain sites when used with the default HTTP Sampler 63 | #log_level.jmeter.util.HttpSSLProtocolSocketFactory=DEBUG 64 | #log_level.jmeter.util.JsseSSLManager=DEBUG 65 | 66 | # Enable Proxy request debug 67 | #log_level.jmeter.protocol.http.proxy.HttpRequestHdr=DEBUG 68 | 69 | #--------------------------------------------------------------------------- 70 | # Reporting configuration 71 | #--------------------------------------------------------------------------- 72 | 73 | # If you want to debug reporting, uncomment this line 74 | #log_level.jmeter.report=DEBUG 75 | 76 | # Configure this property to change the report title 77 | #jmeter.reportgenerator.report_title=Apache JMeter Dashboard 78 | 79 | # Change this parameter if you want to change the granularity of over time graphs. 80 | #jmeter.reportgenerator.overall_granularity=60000 81 | 82 | # Change this parameter if you want to change the granularity of Response time distribution 83 | # Set to 500 ms by default 84 | #jmeter.reportgenerator.graph.responseTimeDistribution.property.set_granularity=500 85 | 86 | # Change this parameter if you want to keep only some samples. 87 | # Regular Expression which Indicates which samples to keep for graphs and statistics generation. 88 | # Empty value means no filtering 89 | #jmeter.reportgenerator.sample_filter= 90 | 91 | # Change this parameter if you want to override the APDEX satisfaction threshold. 92 | #jmeter.reportgenerator.apdex_satisfied_threshold=500 93 | 94 | # Change this parameter if you want to override the APDEX tolerance threshold. 95 | #jmeter.reportgenerator.apdex_tolerated_threshold=1500 96 | 97 | # Indicates which graph series are filtered (regular expression) 98 | # In the below example we filter on Search and Order samples 99 | # Note that the end of the pattern should always include (-success|-failure)? 100 | # TransactionsPerSecondGraphConsumer suffixes transactions with "-success" or "-failure" depending 101 | # on the result 102 | #jmeter.reportgenerator.exporter.html.series_filter=(Search|Order)(-success|-failure)? 103 | 104 | # Indicates whether only controller samples are displayed on graphs that support it. 105 | #jmeter.reportgenerator.exporter.html.show_controllers_only=false 106 | 107 | -------------------------------------------------------------------------------- /jmeter/lib/ApacheJMeter-3.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/ApacheJMeter-3.0.jar -------------------------------------------------------------------------------- /jmeter/lib/ApacheJMeter_components-3.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/ApacheJMeter_components-3.0.jar -------------------------------------------------------------------------------- /jmeter/lib/ApacheJMeter_core-3.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/ApacheJMeter_core-3.0.jar -------------------------------------------------------------------------------- /jmeter/lib/ApacheJMeter_http-3.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/ApacheJMeter_http-3.0.jar -------------------------------------------------------------------------------- /jmeter/lib/accessors-smart-1.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/accessors-smart-1.1.jar -------------------------------------------------------------------------------- /jmeter/lib/activation-1.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/activation-1.1.jar -------------------------------------------------------------------------------- /jmeter/lib/annotations-2.0.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/annotations-2.0.3.jar -------------------------------------------------------------------------------- /jmeter/lib/apache-mime4j-core-0.7.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/apache-mime4j-core-0.7.2.jar -------------------------------------------------------------------------------- /jmeter/lib/apache-mime4j-dom-0.7.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/apache-mime4j-dom-0.7.2.jar -------------------------------------------------------------------------------- /jmeter/lib/asm-5.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/asm-5.1.jar -------------------------------------------------------------------------------- /jmeter/lib/aspectjrt-1.8.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/aspectjrt-1.8.0.jar -------------------------------------------------------------------------------- /jmeter/lib/avalon-framework-4.1.4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/avalon-framework-4.1.4.jar -------------------------------------------------------------------------------- /jmeter/lib/bcmail-jdk15on-1.49.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/bcmail-jdk15on-1.49.jar -------------------------------------------------------------------------------- /jmeter/lib/bcpkix-jdk15on-1.49.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/bcpkix-jdk15on-1.49.jar -------------------------------------------------------------------------------- /jmeter/lib/bcprov-jdk15on-1.49.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/bcprov-jdk15on-1.49.jar -------------------------------------------------------------------------------- /jmeter/lib/boilerpipe-1.1.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/boilerpipe-1.1.0.jar -------------------------------------------------------------------------------- /jmeter/lib/bsf-2.4.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/bsf-2.4.0.jar -------------------------------------------------------------------------------- /jmeter/lib/bsh-2.0b5.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/bsh-2.0b5.jar -------------------------------------------------------------------------------- /jmeter/lib/bzip2-0.9.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/bzip2-0.9.1.jar -------------------------------------------------------------------------------- /jmeter/lib/c3p0-0.9.1.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/c3p0-0.9.1.1.jar -------------------------------------------------------------------------------- /jmeter/lib/cdm-4.5.5.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/cdm-4.5.5.jar -------------------------------------------------------------------------------- /jmeter/lib/commons-codec-1.10.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/commons-codec-1.10.jar -------------------------------------------------------------------------------- /jmeter/lib/commons-collections-3.2.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/commons-collections-3.2.2.jar -------------------------------------------------------------------------------- /jmeter/lib/commons-compress-1.10.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/commons-compress-1.10.jar -------------------------------------------------------------------------------- /jmeter/lib/commons-csv-1.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/commons-csv-1.0.jar -------------------------------------------------------------------------------- /jmeter/lib/commons-dbcp2-2.1.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/commons-dbcp2-2.1.1.jar -------------------------------------------------------------------------------- /jmeter/lib/commons-exec-1.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/commons-exec-1.3.jar -------------------------------------------------------------------------------- /jmeter/lib/commons-httpclient-3.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/commons-httpclient-3.1.jar -------------------------------------------------------------------------------- /jmeter/lib/commons-io-2.4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/commons-io-2.4.jar -------------------------------------------------------------------------------- /jmeter/lib/commons-jexl-1.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/commons-jexl-1.1.jar -------------------------------------------------------------------------------- /jmeter/lib/commons-jexl-2.1.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/commons-jexl-2.1.1.jar -------------------------------------------------------------------------------- /jmeter/lib/commons-jexl3-3.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/commons-jexl3-3.0.jar -------------------------------------------------------------------------------- /jmeter/lib/commons-lang-2.6.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/commons-lang-2.6.jar -------------------------------------------------------------------------------- /jmeter/lib/commons-lang3-3.4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/commons-lang3-3.4.jar -------------------------------------------------------------------------------- /jmeter/lib/commons-logging-1.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/commons-logging-1.2.jar -------------------------------------------------------------------------------- /jmeter/lib/commons-logging-api-1.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/commons-logging-api-1.1.jar -------------------------------------------------------------------------------- /jmeter/lib/commons-math3-3.6.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/commons-math3-3.6.1.jar -------------------------------------------------------------------------------- /jmeter/lib/commons-net-3.4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/commons-net-3.4.jar -------------------------------------------------------------------------------- /jmeter/lib/commons-pool2-2.4.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/commons-pool2-2.4.2.jar -------------------------------------------------------------------------------- /jmeter/lib/commons-vfs2-2.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/commons-vfs2-2.0.jar -------------------------------------------------------------------------------- /jmeter/lib/cxf-core-3.0.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/cxf-core-3.0.3.jar -------------------------------------------------------------------------------- /jmeter/lib/cxf-rt-frontend-jaxrs-3.0.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/cxf-rt-frontend-jaxrs-3.0.3.jar -------------------------------------------------------------------------------- /jmeter/lib/cxf-rt-rs-client-3.0.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/cxf-rt-rs-client-3.0.3.jar -------------------------------------------------------------------------------- /jmeter/lib/cxf-rt-transports-http-3.0.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/cxf-rt-transports-http-3.0.3.jar -------------------------------------------------------------------------------- /jmeter/lib/dnsjava-2.1.7.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/dnsjava-2.1.7.jar -------------------------------------------------------------------------------- /jmeter/lib/ehcache-core-2.6.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/ehcache-core-2.6.2.jar -------------------------------------------------------------------------------- /jmeter/lib/excalibur-logger-1.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/excalibur-logger-1.1.jar -------------------------------------------------------------------------------- /jmeter/lib/ext/ApacheJMeter_components-3.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/ext/ApacheJMeter_components-3.0.jar -------------------------------------------------------------------------------- /jmeter/lib/ext/ApacheJMeter_core-3.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/ext/ApacheJMeter_core-3.0.jar -------------------------------------------------------------------------------- /jmeter/lib/ext/ApacheJMeter_http-3.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/ext/ApacheJMeter_http-3.0.jar -------------------------------------------------------------------------------- /jmeter/lib/fontbox-1.8.10.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/fontbox-1.8.10.jar -------------------------------------------------------------------------------- /jmeter/lib/freemarker-2.3.23.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/freemarker-2.3.23.jar -------------------------------------------------------------------------------- /jmeter/lib/geoapi-3.0.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/geoapi-3.0.0.jar -------------------------------------------------------------------------------- /jmeter/lib/geronimo-jms_1.1_spec-1.1.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/geronimo-jms_1.1_spec-1.1.1.jar -------------------------------------------------------------------------------- /jmeter/lib/grib-4.5.5.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/grib-4.5.5.jar -------------------------------------------------------------------------------- /jmeter/lib/groovy-all-2.4.6.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/groovy-all-2.4.6.jar -------------------------------------------------------------------------------- /jmeter/lib/gson-2.2.4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/gson-2.2.4.jar -------------------------------------------------------------------------------- /jmeter/lib/guava-17.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/guava-17.0.jar -------------------------------------------------------------------------------- /jmeter/lib/hamcrest-core-1.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/hamcrest-core-1.3.jar -------------------------------------------------------------------------------- /jmeter/lib/httpclient-4.5.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/httpclient-4.5.2.jar -------------------------------------------------------------------------------- /jmeter/lib/httpcore-4.4.4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/httpcore-4.4.4.jar -------------------------------------------------------------------------------- /jmeter/lib/httpmime-4.5.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/httpmime-4.5.2.jar -------------------------------------------------------------------------------- /jmeter/lib/httpservices-4.5.5.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/httpservices-4.5.5.jar -------------------------------------------------------------------------------- /jmeter/lib/isoparser-1.0.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/isoparser-1.0.2.jar -------------------------------------------------------------------------------- /jmeter/lib/jackcess-2.1.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/jackcess-2.1.2.jar -------------------------------------------------------------------------------- /jmeter/lib/jackcess-encrypt-2.1.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/jackcess-encrypt-2.1.1.jar -------------------------------------------------------------------------------- /jmeter/lib/java-libpst-0.8.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/java-libpst-0.8.1.jar -------------------------------------------------------------------------------- /jmeter/lib/javax.annotation-api-1.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/javax.annotation-api-1.2.jar -------------------------------------------------------------------------------- /jmeter/lib/javax.ws.rs-api-2.0.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/javax.ws.rs-api-2.0.1.jar -------------------------------------------------------------------------------- /jmeter/lib/jcharts-0.7.5.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/jcharts-0.7.5.jar -------------------------------------------------------------------------------- /jmeter/lib/jcip-annotations-1.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/jcip-annotations-1.0.jar -------------------------------------------------------------------------------- /jmeter/lib/jcommander-1.35.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/jcommander-1.35.jar -------------------------------------------------------------------------------- /jmeter/lib/jdom-2.0.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/jdom-2.0.2.jar -------------------------------------------------------------------------------- /jmeter/lib/jdom2-2.0.4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/jdom2-2.0.4.jar -------------------------------------------------------------------------------- /jmeter/lib/jempbox-1.8.10.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/jempbox-1.8.10.jar -------------------------------------------------------------------------------- /jmeter/lib/jhighlight-1.0.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/jhighlight-1.0.2.jar -------------------------------------------------------------------------------- /jmeter/lib/jj2000-5.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/jj2000-5.2.jar -------------------------------------------------------------------------------- /jmeter/lib/jmatio-1.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/jmatio-1.0.jar -------------------------------------------------------------------------------- /jmeter/lib/jna-4.1.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/jna-4.1.0.jar -------------------------------------------------------------------------------- /jmeter/lib/joda-time-2.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/joda-time-2.2.jar -------------------------------------------------------------------------------- /jmeter/lib/jodd-core-3.6.7.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/jodd-core-3.6.7.jar -------------------------------------------------------------------------------- /jmeter/lib/jodd-lagarto-3.6.7.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/jodd-lagarto-3.6.7.jar -------------------------------------------------------------------------------- /jmeter/lib/jodd-log-3.6.7.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/jodd-log-3.6.7.jar -------------------------------------------------------------------------------- /jmeter/lib/jodd-props-3.6.7.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/jodd-props-3.6.7.jar -------------------------------------------------------------------------------- /jmeter/lib/jorphan-3.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/jorphan-3.0.jar -------------------------------------------------------------------------------- /jmeter/lib/json-20140107.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/json-20140107.jar -------------------------------------------------------------------------------- /jmeter/lib/json-path-2.2.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/json-path-2.2.0.jar -------------------------------------------------------------------------------- /jmeter/lib/json-simple-1.1.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/json-simple-1.1.1.jar -------------------------------------------------------------------------------- /jmeter/lib/json-smart-2.2.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/json-smart-2.2.1.jar -------------------------------------------------------------------------------- /jmeter/lib/jsoup-1.8.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/jsoup-1.8.3.jar -------------------------------------------------------------------------------- /jmeter/lib/jsr-275-0.9.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/jsr-275-0.9.3.jar -------------------------------------------------------------------------------- /jmeter/lib/jtidy-r938.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/jtidy-r938.jar -------------------------------------------------------------------------------- /jmeter/lib/junit-4.12.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/junit-4.12.jar -------------------------------------------------------------------------------- /jmeter/lib/junit/test.txt: -------------------------------------------------------------------------------- 1 | 1 -------------------------------------------------------------------------------- /jmeter/lib/juniversalchardet-1.0.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/juniversalchardet-1.0.3.jar -------------------------------------------------------------------------------- /jmeter/lib/junrar-0.7.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/junrar-0.7.jar -------------------------------------------------------------------------------- /jmeter/lib/jwnl-1.3.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/jwnl-1.3.3.jar -------------------------------------------------------------------------------- /jmeter/lib/logkit-2.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/logkit-2.0.jar -------------------------------------------------------------------------------- /jmeter/lib/mail-1.5.0-b01.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/mail-1.5.0-b01.jar -------------------------------------------------------------------------------- /jmeter/lib/maven-scm-api-1.4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/maven-scm-api-1.4.jar -------------------------------------------------------------------------------- /jmeter/lib/maven-scm-provider-svn-commons-1.4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/maven-scm-provider-svn-commons-1.4.jar -------------------------------------------------------------------------------- /jmeter/lib/maven-scm-provider-svnexe-1.4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/maven-scm-provider-svnexe-1.4.jar -------------------------------------------------------------------------------- /jmeter/lib/metadata-extractor-2.8.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/metadata-extractor-2.8.0.jar -------------------------------------------------------------------------------- /jmeter/lib/mongo-java-driver-2.11.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/mongo-java-driver-2.11.3.jar -------------------------------------------------------------------------------- /jmeter/lib/netcdf4-4.5.5.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/netcdf4-4.5.5.jar -------------------------------------------------------------------------------- /jmeter/lib/opennlp-maxent-3.0.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/opennlp-maxent-3.0.3.jar -------------------------------------------------------------------------------- /jmeter/lib/opennlp-tools-1.5.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/opennlp-tools-1.5.3.jar -------------------------------------------------------------------------------- /jmeter/lib/oro-2.0.8.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/oro-2.0.8.jar -------------------------------------------------------------------------------- /jmeter/lib/pdfbox-1.8.10.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/pdfbox-1.8.10.jar -------------------------------------------------------------------------------- /jmeter/lib/ph-commons-6.2.4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/ph-commons-6.2.4.jar -------------------------------------------------------------------------------- /jmeter/lib/ph-css-4.1.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/ph-css-4.1.1.jar -------------------------------------------------------------------------------- /jmeter/lib/plexus-utils-1.5.6.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/plexus-utils-1.5.6.jar -------------------------------------------------------------------------------- /jmeter/lib/poi-3.13.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/poi-3.13.jar -------------------------------------------------------------------------------- /jmeter/lib/poi-ooxml-3.13.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/poi-ooxml-3.13.jar -------------------------------------------------------------------------------- /jmeter/lib/poi-ooxml-schemas-3.13.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/poi-ooxml-schemas-3.13.jar -------------------------------------------------------------------------------- /jmeter/lib/poi-scratchpad-3.13.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/poi-scratchpad-3.13.jar -------------------------------------------------------------------------------- /jmeter/lib/protobuf-java-2.5.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/protobuf-java-2.5.0.jar -------------------------------------------------------------------------------- /jmeter/lib/quartz-2.2.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/quartz-2.2.0.jar -------------------------------------------------------------------------------- /jmeter/lib/regexp-1.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/regexp-1.3.jar -------------------------------------------------------------------------------- /jmeter/lib/rhino-1.7.7.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/rhino-1.7.7.1.jar -------------------------------------------------------------------------------- /jmeter/lib/rome-1.5.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/rome-1.5.1.jar -------------------------------------------------------------------------------- /jmeter/lib/rome-utils-1.5.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/rome-utils-1.5.1.jar -------------------------------------------------------------------------------- /jmeter/lib/rsyntaxtextarea-2.5.8.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/rsyntaxtextarea-2.5.8.jar -------------------------------------------------------------------------------- /jmeter/lib/serializer-2.7.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/serializer-2.7.2.jar -------------------------------------------------------------------------------- /jmeter/lib/sis-metadata-0.5.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/sis-metadata-0.5.jar -------------------------------------------------------------------------------- /jmeter/lib/sis-netcdf-0.5.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/sis-netcdf-0.5.jar -------------------------------------------------------------------------------- /jmeter/lib/sis-referencing-0.5.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/sis-referencing-0.5.jar -------------------------------------------------------------------------------- /jmeter/lib/sis-storage-0.5.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/sis-storage-0.5.jar -------------------------------------------------------------------------------- /jmeter/lib/sis-utility-0.5.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/sis-utility-0.5.jar -------------------------------------------------------------------------------- /jmeter/lib/slf4j-api-1.7.13.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/slf4j-api-1.7.13.jar -------------------------------------------------------------------------------- /jmeter/lib/stax2-api-3.1.4.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/stax2-api-3.1.4.jar -------------------------------------------------------------------------------- /jmeter/lib/tagsoup-1.2.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/tagsoup-1.2.1.jar -------------------------------------------------------------------------------- /jmeter/lib/tika-core-1.12.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/tika-core-1.12.jar -------------------------------------------------------------------------------- /jmeter/lib/tika-parsers-1.12.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/tika-parsers-1.12.jar -------------------------------------------------------------------------------- /jmeter/lib/udunits-4.5.5.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/udunits-4.5.5.jar -------------------------------------------------------------------------------- /jmeter/lib/vorbis-java-core-0.6.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/vorbis-java-core-0.6.jar -------------------------------------------------------------------------------- /jmeter/lib/vorbis-java-tika-0.6.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/vorbis-java-tika-0.6.jar -------------------------------------------------------------------------------- /jmeter/lib/woodstox-core-asl-4.4.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/woodstox-core-asl-4.4.1.jar -------------------------------------------------------------------------------- /jmeter/lib/xalan-2.7.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/xalan-2.7.2.jar -------------------------------------------------------------------------------- /jmeter/lib/xercesImpl-2.11.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/xercesImpl-2.11.0.jar -------------------------------------------------------------------------------- /jmeter/lib/xml-apis-1.4.01.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/xml-apis-1.4.01.jar -------------------------------------------------------------------------------- /jmeter/lib/xmlbeans-2.6.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/xmlbeans-2.6.0.jar -------------------------------------------------------------------------------- /jmeter/lib/xmlgraphics-commons-2.0.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/xmlgraphics-commons-2.0.1.jar -------------------------------------------------------------------------------- /jmeter/lib/xmlpull-1.1.3.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/xmlpull-1.1.3.1.jar -------------------------------------------------------------------------------- /jmeter/lib/xmlschema-core-2.1.0.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/xmlschema-core-2.1.0.jar -------------------------------------------------------------------------------- /jmeter/lib/xmpcore-5.1.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/xmpcore-5.1.2.jar -------------------------------------------------------------------------------- /jmeter/lib/xpp3_min-1.1.4c.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/xpp3_min-1.1.4c.jar -------------------------------------------------------------------------------- /jmeter/lib/xstream-1.4.8.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/xstream-1.4.8.jar -------------------------------------------------------------------------------- /jmeter/lib/xz-1.5.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pflb/Jmeter.Plugin.TailSampler/169017eff99fd839e89e05dae537393661463111/jmeter/lib/xz-1.5.jar -------------------------------------------------------------------------------- /jmt.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /out/production/ru.pflb.jmeter.samplers.TailSampler/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Name: ru.pflb/jmeter.samplers.TailHttpSamplerGui 3 | Created-By: InelliJ IDEA 15.0.3 Community Edition (Jet Brains), 1.6.0_45-b06 (Sun Microsystems Inc.) 4 | Specification-Title: HTTP Sampler GUI 5 | Specification-Version: 2.13 6 | Specification-Vendor: Apache Software Foundation 7 | Implementation-Title: ru.pflb.jmeter.samplers.TailHttpSamplerGui (pflb - HTTP Request Tail) 8 | Implementation-Version: 0.2.5 9 | Implementation-Vendor: Performance Lab 10 | Implementation-Vendor-Id: ru.pflb 11 | Implementation-URL: https://git.performance-lab.ru/v.smirnov/Jmeter.Plugin.TailSampler/ 12 | -------------------------------------------------------------------------------- /ru.pflb.jmeter.samplers.TailSampler/.idea/compiler.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /ru.pflb.jmeter.samplers.TailSampler/.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /ru.pflb.jmeter.samplers.TailSampler/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ru.pflb.jmeter.samplers.TailSampler/.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 1.6 26 | 27 | 32 | 33 | 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /ru.pflb.jmeter.samplers.TailSampler/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ru.pflb.jmeter.samplers.TailSampler/.idea/ru.pflb.jmeter.samplers.TailSampler.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /ru.pflb.jmeter.samplers.TailSampler/.idea/workspace.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 14 | 15 | 16 | 18 | 19 | 20 | 21 | 22 | 23 | 26 | 27 | 28 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 66 | 67 | 68 | 69 | 72 | 73 | 76 | 77 | 78 | 79 | 82 | 83 | 86 | 87 | 90 | 91 | 94 | 95 | 98 | 99 | 102 | 103 | 106 | 107 | 108 | 109 | 112 | 113 | 116 | 117 | 120 | 121 | 124 | 125 | 128 | 129 | 132 | 133 | 136 | 137 | 140 | 141 | 144 | 145 | 148 | 149 | 150 | 151 | 154 | 155 | 158 | 159 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 179 | 180 | 187 | 188 | 189 | 202 | 203 | 204 | 205 | 219 | 220 | 221 | 222 | 223 | 224 | 231 | 232 | 233 | 234 | 252 | 259 | 260 | 261 | 263 | 264 | 265 | 266 | 1466083497215 267 | 271 | 272 | 273 | 274 | 275 | 276 | 277 | 278 | 279 | 280 | 281 | 282 | 283 | 284 | 285 | 286 | 287 | 288 | 289 | 290 | 291 | 292 | 293 | 294 | 295 | 296 | 297 | 298 | 299 | 300 | 301 | 302 | 303 | 305 | 306 | 307 | 308 | 309 | -------------------------------------------------------------------------------- /ru.pflb.jmeter.samplers.TailSampler/ru.pflb.jmeter.samplers.TailSampler.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /ru.pflb.jmeter.samplers.TailSampler/src/META-INF/MANIFEST.MF: -------------------------------------------------------------------------------- 1 | Manifest-Version: 1.0 2 | Name: ru.pflb/jmeter.samplers.TailHttpSamplerGui 3 | Created-By: InelliJ IDEA 15.0.3 Community Edition (Jet Brains), 1.6.0_45-b06 (Sun Microsystems Inc.) 4 | Specification-Title: HTTP Sampler GUI 5 | Specification-Version: 2.13 6 | Specification-Vendor: Apache Software Foundation 7 | Implementation-Title: ru.pflb.jmeter.samplers.TailHttpSamplerGui (pflb - HTTP Request Tail) 8 | Implementation-Version: 0.2.5 9 | Implementation-Vendor: Performance Lab 10 | Implementation-Vendor-Id: ru.pflb 11 | Implementation-URL: https://git.performance-lab.ru/v.smirnov/Jmeter.Plugin.TailSampler/ 12 | -------------------------------------------------------------------------------- /ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/protocol/http/config/gui/TailUrlConfigGui.java: -------------------------------------------------------------------------------- 1 | package ru.pflb.jmeter.protocol.http.config.gui; 2 | 3 | import org.apache.jmeter.gui.util.JSyntaxTextArea; 4 | import org.apache.jmeter.gui.util.JTextScrollPane; 5 | import org.apache.jmeter.protocol.http.config.gui.MultipartUrlConfigGui; 6 | import org.apache.jmeter.testelement.TestElement; 7 | import org.apache.jmeter.util.JMeterUtils; 8 | import ru.pflb.jmeter.samplers.TailHTTPSamplerProxy; 9 | 10 | import javax.swing.*; 11 | import java.awt.*; 12 | 13 | /** 14 | * Basic URL / HTTP Request Tail configuration: 15 | * 22 | */ 23 | public class TailUrlConfigGui extends MultipartUrlConfigGui { 24 | 25 | /** 26 | * Embedded resource links 27 | */ 28 | private JSyntaxTextArea requestData; 29 | 30 | // used by HttpTestSampleGui 31 | public TailUrlConfigGui() { 32 | super(); 33 | init(); 34 | } 35 | 36 | public TailUrlConfigGui(boolean showSamplerFields, boolean showImplementation) { 37 | super(showSamplerFields, showImplementation); 38 | init(); 39 | } 40 | 41 | @Override 42 | public void modifyTestElement(TestElement sampler) { 43 | super.modifyTestElement(sampler); 44 | sampler.setProperty(TailHTTPSamplerProxy.EMBRESLINKS, requestData.getText()); 45 | } 46 | 47 | @Override 48 | public void configure(TestElement element) { 49 | super.configure(element); 50 | requestData.setInitialText(element.getPropertyAsString(TailHTTPSamplerProxy.EMBRESLINKS)); 51 | requestData.setCaretPosition(0); 52 | } 53 | 54 | 55 | private void init() {// called from ctor, so must not be overridable 56 | this.setLayout(new BorderLayout()); 57 | 58 | // WEB REQUEST PANEL 59 | JPanel webRequestPanel = new JPanel(); 60 | webRequestPanel.setLayout(new BorderLayout()); 61 | webRequestPanel.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(), 62 | JMeterUtils.getResString("web_request"))); // $NON-NLS-1$ 63 | 64 | JPanel northPanel = new JPanel(); 65 | northPanel.setLayout(new BoxLayout(northPanel, BoxLayout.Y_AXIS)); 66 | northPanel.add(super.getProtocolAndMethodPanel()); 67 | northPanel.add(super.getPathPanel()); 68 | 69 | webRequestPanel.add(northPanel, BorderLayout.NORTH); 70 | 71 | //EMBEDDED RESOURCE PANEL (Tail links) 72 | webRequestPanel.add(createDataPanel(), BorderLayout.CENTER); 73 | 74 | this.add(super.getWebServerTimeoutPanel(), BorderLayout.NORTH); 75 | this.add(webRequestPanel, BorderLayout.CENTER); 76 | this.add(super.getProxyServerPanel(), BorderLayout.SOUTH); 77 | } 78 | 79 | /* 80 | * Create a embedded resource panel 81 | * 82 | * @return the panel for entering the data 83 | */ 84 | private JPanel createDataPanel() { 85 | JLabel label = new JLabel("Embedded resources"); //$NON-NLS-1$ 86 | 87 | requestData = new JSyntaxTextArea(15, 80); 88 | requestData.setLanguage("text"); 89 | requestData.setName(TailHTTPSamplerProxy.EMBRESLINKS); 90 | label.setLabelFor(requestData); 91 | 92 | JPanel dataPanel = new JPanel(new BorderLayout(5, 0)); 93 | dataPanel.add(label, BorderLayout.WEST); 94 | dataPanel.add(new JTextScrollPane(requestData), BorderLayout.CENTER); 95 | 96 | return dataPanel; 97 | } 98 | 99 | @Override 100 | public void clear() { 101 | super.clear(); 102 | requestData.setInitialText(""); 103 | requestData.setCaretPosition(0); 104 | } 105 | } 106 | -------------------------------------------------------------------------------- /ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/EscapeUtils.java: -------------------------------------------------------------------------------- 1 | package ru.pflb.jmeter.samplers; 2 | 3 | import java.util.HashMap; 4 | 5 | /** 6 | * Created by Smirnov_VA on 01.03.2016. 7 | */ 8 | public class EscapeUtils { 9 | public static final HashMap m = new HashMap(); 10 | static { 11 | m.put(34, "quot"); // " - quotation mark (APL quote) 12 | m.put(38, "amp"); // & - ampersand 13 | m.put(39, "apos"); // ' - apostrophe (apostrophe-quote); see below 14 | m.put(60, "lt"); // < - less-than sign 15 | m.put(62, "gt"); // > - greater-than sign 16 | m.put(160, "nbsp"); // - no-break space (non-breaking space)[d] 17 | m.put(161, "iexcl"); // ¡ - inverted exclamation mark 18 | m.put(162, "cent"); // ¢ - cent sign 19 | m.put(163, "pound"); // £ - pound sign 20 | m.put(164, "curren"); // ¤ - currency sign 21 | m.put(165, "yen"); // ¥ - yen sign (yuan sign) 22 | m.put(166, "brvbar"); // ¦ - broken bar (broken vertical bar) 23 | m.put(167, "sect"); // § - section sign 24 | m.put(168, "uml"); // ¨ - diaeresis (spacing diaeresis); see Germanic umlaut 25 | m.put(169, "copy"); // © - copyright symbol 26 | m.put(170, "ordf"); // ª - feminine ordinal indicator 27 | m.put(171, "laquo"); // « - left-pointing double angle quotation mark (left pointing guillemet) 28 | m.put(172, "not"); // ¬ - not sign 29 | m.put(173, "shy"); // - soft hyphen (discretionary hyphen) 30 | m.put(174, "reg"); // ® - registered sign (registered trademark symbol) 31 | m.put(175, "macr"); // ¯ - macron (spacing macron, overline, APL overbar) 32 | m.put(176, "deg"); // ° - degree symbol 33 | m.put(177, "plusmn"); // ± - plus-minus sign (plus-or-minus sign) 34 | m.put(178, "sup2"); // ² - superscript two (superscript digit two, squared) 35 | m.put(179, "sup3"); // ³ - superscript three (superscript digit three, cubed) 36 | m.put(180, "acute"); // ´ - acute accent (spacing acute) 37 | m.put(181, "micro"); // µ - micro sign 38 | m.put(182, "para"); // ¶ - pilcrow sign (paragraph sign) 39 | m.put(183, "middot"); // · - middle dot (Georgian comma, Greek middle dot) 40 | m.put(184, "cedil"); // ¸ - cedilla (spacing cedilla) 41 | m.put(185, "sup1"); // ¹ - superscript one (superscript digit one) 42 | m.put(186, "ordm"); // º - masculine ordinal indicator 43 | m.put(187, "raquo"); // » - right-pointing double angle quotation mark (right pointing guillemet) 44 | m.put(188, "frac14"); // ¼ - vulgar fraction one quarter (fraction one quarter) 45 | m.put(189, "frac12"); // ½ - vulgar fraction one half (fraction one half) 46 | m.put(190, "frac34"); // ¾ - vulgar fraction three quarters (fraction three quarters) 47 | m.put(191, "iquest"); // ¿ - inverted question mark (turned question mark) 48 | m.put(192, "Agrave"); // À - Latin capital letter A with grave accent (Latin capital letter A grave) 49 | m.put(193, "Aacute"); // Á - Latin capital letter A with acute accent 50 | m.put(194, "Acirc"); //  - Latin capital letter A with circumflex 51 | m.put(195, "Atilde"); // à - Latin capital letter A with tilde 52 | m.put(196, "Auml"); // Ä - Latin capital letter A with diaeresis 53 | m.put(197, "Aring"); // Å - Latin capital letter A with ring above (Latin capital letter A ring) 54 | m.put(198, "AElig"); // Æ - Latin capital letter AE (Latin capital ligature AE) 55 | m.put(199, "Ccedil"); // Ç - Latin capital letter C with cedilla 56 | m.put(200, "Egrave"); // È - Latin capital letter E with grave accent 57 | m.put(201, "Eacute"); // É - Latin capital letter E with acute accent 58 | m.put(202, "Ecirc"); // Ê - Latin capital letter E with circumflex 59 | m.put(203, "Euml"); // Ë - Latin capital letter E with diaeresis 60 | m.put(204, "Igrave"); // Ì - Latin capital letter I with grave accent 61 | m.put(205, "Iacute"); // Í - Latin capital letter I with acute accent 62 | m.put(206, "Icirc"); // Î - Latin capital letter I with circumflex 63 | m.put(207, "Iuml"); // Ï - Latin capital letter I with diaeresis 64 | m.put(208, "ETH"); // Ð - Latin capital letter Eth 65 | m.put(209, "Ntilde"); // Ñ - Latin capital letter N with tilde 66 | m.put(210, "Ograve"); // Ò - Latin capital letter O with grave accent 67 | m.put(211, "Oacute"); // Ó - Latin capital letter O with acute accent 68 | m.put(212, "Ocirc"); // Ô - Latin capital letter O with circumflex 69 | m.put(213, "Otilde"); // Õ - Latin capital letter O with tilde 70 | m.put(214, "Ouml"); // Ö - Latin capital letter O with diaeresis 71 | m.put(215, "times"); // × - multiplication sign 72 | m.put(216, "Oslash"); // Ø - Latin capital letter O with stroke (Latin capital letter O slash) 73 | m.put(217, "Ugrave"); // Ù - Latin capital letter U with grave accent 74 | m.put(218, "Uacute"); // Ú - Latin capital letter U with acute accent 75 | m.put(219, "Ucirc"); // Û - Latin capital letter U with circumflex 76 | m.put(220, "Uuml"); // Ü - Latin capital letter U with diaeresis 77 | m.put(221, "Yacute"); // Ý - Latin capital letter Y with acute accent 78 | m.put(222, "THORN"); // Þ - Latin capital letter THORN 79 | m.put(223, "szlig"); // ß - Latin small letter sharp s (ess-zed); see German Eszett 80 | m.put(224, "agrave"); // à - Latin small letter a with grave accent 81 | m.put(225, "aacute"); // á - Latin small letter a with acute accent 82 | m.put(226, "acirc"); // â - Latin small letter a with circumflex 83 | m.put(227, "atilde"); // ã - Latin small letter a with tilde 84 | m.put(228, "auml"); // ä - Latin small letter a with diaeresis 85 | m.put(229, "aring"); // å - Latin small letter a with ring above 86 | m.put(230, "aelig"); // æ - Latin small letter ae (Latin small ligature ae) 87 | m.put(231, "ccedil"); // ç - Latin small letter c with cedilla 88 | m.put(232, "egrave"); // è - Latin small letter e with grave accent 89 | m.put(233, "eacute"); // é - Latin small letter e with acute accent 90 | m.put(234, "ecirc"); // ê - Latin small letter e with circumflex 91 | m.put(235, "euml"); // ë - Latin small letter e with diaeresis 92 | m.put(236, "igrave"); // ì - Latin small letter i with grave accent 93 | m.put(237, "iacute"); // í - Latin small letter i with acute accent 94 | m.put(238, "icirc"); // î - Latin small letter i with circumflex 95 | m.put(239, "iuml"); // ï - Latin small letter i with diaeresis 96 | m.put(240, "eth"); // ð - Latin small letter eth 97 | m.put(241, "ntilde"); // ñ - Latin small letter n with tilde 98 | m.put(242, "ograve"); // ò - Latin small letter o with grave accent 99 | m.put(243, "oacute"); // ó - Latin small letter o with acute accent 100 | m.put(244, "ocirc"); // ô - Latin small letter o with circumflex 101 | m.put(245, "otilde"); // õ - Latin small letter o with tilde 102 | m.put(246, "ouml"); // ö - Latin small letter o with diaeresis 103 | m.put(247, "divide"); // ÷ - division sign (obelus) 104 | m.put(248, "oslash"); // ø - Latin small letter o with stroke (Latin small letter o slash) 105 | m.put(249, "ugrave"); // ù - Latin small letter u with grave accent 106 | m.put(250, "uacute"); // ú - Latin small letter u with acute accent 107 | m.put(251, "ucirc"); // û - Latin small letter u with circumflex 108 | m.put(252, "uuml"); // ü - Latin small letter u with diaeresis 109 | m.put(253, "yacute"); // ý - Latin small letter y with acute accent 110 | m.put(254, "thorn"); // þ - Latin small letter thorn 111 | m.put(255, "yuml"); // ÿ - Latin small letter y with diaeresis 112 | m.put(338, "OElig"); // Œ - Latin capital ligature oe[e] 113 | m.put(339, "oelig"); // œ - Latin small ligature oe[e] 114 | m.put(352, "Scaron"); // Š - Latin capital letter s with caron 115 | m.put(353, "scaron"); // š - Latin small letter s with caron 116 | m.put(376, "Yuml"); // Ÿ - Latin capital letter y with diaeresis 117 | m.put(402, "fnof"); // ƒ - Latin small letter f with hook (function, florin) 118 | m.put(710, "circ"); // ˆ - modifier letter circumflex accent 119 | m.put(732, "tilde"); // ˜ - small tilde 120 | m.put(913, "Alpha"); // Α - Greek capital letter Alpha 121 | m.put(914, "Beta"); // Β - Greek capital letter Beta 122 | m.put(915, "Gamma"); // Γ - Greek capital letter Gamma 123 | m.put(916, "Delta"); // Δ - Greek capital letter Delta 124 | m.put(917, "Epsilon"); // Ε - Greek capital letter Epsilon 125 | m.put(918, "Zeta"); // Ζ - Greek capital letter Zeta 126 | m.put(919, "Eta"); // Η - Greek capital letter Eta 127 | m.put(920, "Theta"); // Θ - Greek capital letter Theta 128 | m.put(921, "Iota"); // Ι - Greek capital letter Iota 129 | m.put(922, "Kappa"); // Κ - Greek capital letter Kappa 130 | m.put(923, "Lambda"); // Λ - Greek capital letter Lambda 131 | m.put(924, "Mu"); // Μ - Greek capital letter Mu 132 | m.put(925, "Nu"); // Ν - Greek capital letter Nu 133 | m.put(926, "Xi"); // Ξ - Greek capital letter Xi 134 | m.put(927, "Omicron"); // Ο - Greek capital letter Omicron 135 | m.put(928, "Pi"); // Π - Greek capital letter Pi 136 | m.put(929, "Rho"); // Ρ - Greek capital letter Rho 137 | m.put(931, "Sigma"); // Σ - Greek capital letter Sigma 138 | m.put(932, "Tau"); // Τ - Greek capital letter Tau 139 | m.put(933, "Upsilon"); // Υ - Greek capital letter Upsilon 140 | m.put(934, "Phi"); // Φ - Greek capital letter Phi 141 | m.put(935, "Chi"); // Χ - Greek capital letter Chi 142 | m.put(936, "Psi"); // Ψ - Greek capital letter Psi 143 | m.put(937, "Omega"); // Ω - Greek capital letter Omega 144 | m.put(945, "alpha"); // α - Greek small letter alpha 145 | m.put(946, "beta"); // β - Greek small letter beta 146 | m.put(947, "gamma"); // γ - Greek small letter gamma 147 | m.put(948, "delta"); // δ - Greek small letter delta 148 | m.put(949, "epsilon"); // ε - Greek small letter epsilon 149 | m.put(950, "zeta"); // ζ - Greek small letter zeta 150 | m.put(951, "eta"); // η - Greek small letter eta 151 | m.put(952, "theta"); // θ - Greek small letter theta 152 | m.put(953, "iota"); // ι - Greek small letter iota 153 | m.put(954, "kappa"); // κ - Greek small letter kappa 154 | m.put(955, "lambda"); // λ - Greek small letter lambda 155 | m.put(956, "mu"); // μ - Greek small letter mu 156 | m.put(957, "nu"); // ν - Greek small letter nu 157 | m.put(958, "xi"); // ξ - Greek small letter xi 158 | m.put(959, "omicron"); // ο - Greek small letter omicron 159 | m.put(960, "pi"); // π - Greek small letter pi 160 | m.put(961, "rho"); // ρ - Greek small letter rho 161 | m.put(962, "sigmaf"); // ς - Greek small letter final sigma 162 | m.put(963, "sigma"); // σ - Greek small letter sigma 163 | m.put(964, "tau"); // τ - Greek small letter tau 164 | m.put(965, "upsilon"); // υ - Greek small letter upsilon 165 | m.put(966, "phi"); // φ - Greek small letter phi 166 | m.put(967, "chi"); // χ - Greek small letter chi 167 | m.put(968, "psi"); // ψ - Greek small letter psi 168 | m.put(969, "omega"); // ω - Greek small letter omega 169 | m.put(977, "thetasym"); // ϑ - Greek theta symbol 170 | m.put(978, "upsih"); // ϒ - Greek Upsilon with hook symbol 171 | m.put(982, "piv"); // ϖ - Greek pi symbol 172 | m.put(8194, "ensp"); //   - en space[d] 173 | m.put(8195, "emsp"); //   - em space[d] 174 | m.put(8201, "thinsp"); //   - thin space[d] 175 | m.put(8204, "zwnj"); // - zero-width non-joiner 176 | m.put(8205, "zwj"); // - zero-width joiner 177 | m.put(8206, "lrm"); // - left-to-right mark 178 | m.put(8207, "rlm"); // - right-to-left mark 179 | m.put(8211, "ndash"); // – - en dash 180 | m.put(8212, "mdash"); // — - em dash 181 | m.put(8216, "lsquo"); // ‘ - left single quotation mark 182 | m.put(8217, "rsquo"); // ’ - right single quotation mark 183 | m.put(8218, "sbquo"); // ‚ - single low-9 quotation mark 184 | m.put(8220, "ldquo"); // “ - left double quotation mark 185 | m.put(8221, "rdquo"); // ” - right double quotation mark 186 | m.put(8222, "bdquo"); // „ - double low-9 quotation mark 187 | m.put(8224, "dagger"); // † - dagger, obelisk 188 | m.put(8225, "Dagger"); // ‡ - double dagger, double obelisk 189 | m.put(8226, "bull"); // • - bullet (black small circle)[f] 190 | m.put(8230, "hellip"); // … - horizontal ellipsis (three dot leader) 191 | m.put(8240, "permil"); // ‰ - per mille sign 192 | m.put(8242, "prime"); // ′ - prime (minutes, feet) 193 | m.put(8243, "Prime"); // ″ - double prime (seconds, inches) 194 | m.put(8249, "lsaquo"); // ‹ - single left-pointing angle quotation mark[g] 195 | m.put(8250, "rsaquo"); // › - single right-pointing angle quotation mark[g] 196 | m.put(8254, "oline"); // ‾ - overline (spacing overscore) 197 | m.put(8260, "frasl"); // ⁄ - fraction slash (solidus) 198 | m.put(8364, "euro"); // € - euro sign 199 | m.put(8465, "image"); // ℑ - black-letter capital I (imaginary part) 200 | m.put(8472, "weierp"); // ℘ - script capital P (power set, Weierstrass p) 201 | m.put(8476, "real"); // ℜ - black-letter capital R (real part symbol) 202 | m.put(8482, "trade"); // ™ - trademark symbol 203 | m.put(8501, "alefsym"); // ℵ - alef symbol (first transfinite cardinal)[h] 204 | m.put(8592, "larr"); // ← - leftwards arrow 205 | m.put(8593, "uarr"); // ↑ - upwards arrow 206 | m.put(8594, "rarr"); // → - rightwards arrow 207 | m.put(8595, "darr"); // ↓ - downwards arrow 208 | m.put(8596, "harr"); // ↔ - left right arrow 209 | m.put(8629, "crarr"); // ↵ - downwards arrow with corner leftwards (carriage return) 210 | m.put(8656, "lArr"); // ⇐ - leftwards double arrow[i] 211 | m.put(8657, "uArr"); // ⇑ - upwards double arrow 212 | m.put(8658, "rArr"); // ⇒ - rightwards double arrow[j] 213 | m.put(8659, "dArr"); // ⇓ - downwards double arrow 214 | m.put(8660, "hArr"); // ⇔ - left right double arrow 215 | m.put(8704, "forall"); // ∀ - for all 216 | m.put(8706, "part"); // ∂ - partial differential 217 | m.put(8707, "exist"); // ∃ - there exists 218 | m.put(8709, "empty"); // ∅ - empty set (null set); see also U+8960, ⌀ 219 | m.put(8711, "nabla"); // ∇ - del or nabla (vector differential operator) 220 | m.put(8712, "isin"); // ∈ - element of 221 | m.put(8713, "notin"); // ∉ - not an element of 222 | m.put(8715, "ni"); // ∋ - contains as member 223 | m.put(8719, "prod"); // ∏ - n-ary product (product sign)[k] 224 | m.put(8721, "sum"); // ∑ - n-ary summation[l] 225 | m.put(8722, "minus"); // − - minus sign 226 | m.put(8727, "lowast"); // ∗ - asterisk operator 227 | m.put(8730, "radic"); // √ - square root (radical sign) 228 | m.put(8733, "prop"); // ∝ - proportional to 229 | m.put(8734, "infin"); // ∞ - infinity 230 | m.put(8736, "ang"); // ∠ - angle 231 | m.put(8743, "and"); // ∧ - logical and (wedge) 232 | m.put(8744, "or"); // ∨ - logical or (vee) 233 | m.put(8745, "cap"); // ∩ - intersection (cap) 234 | m.put(8746, "cup"); // ∪ - union (cup) 235 | m.put(8747, "int"); // ∫ - integral 236 | m.put(8756, "there4"); // ∴ - therefore sign 237 | m.put(8764, "sim"); // ∼ - tilde operator (varies with, similar to)[m] 238 | m.put(8773, "cong"); // ≅ - congruent to 239 | m.put(8776, "asymp"); // ≈ - almost equal to (asymptotic to) 240 | m.put(8800, "ne"); // ≠ - not equal to 241 | m.put(8801, "equiv"); // ≡ - identical to; sometimes used for 'equivalent to' 242 | m.put(8804, "le"); // ≤ - less-than or equal to 243 | m.put(8805, "ge"); // ≥ - greater-than or equal to 244 | m.put(8834, "sub"); // ⊂ - subset of 245 | m.put(8835, "sup"); // ⊃ - superset of[n] 246 | m.put(8836, "nsub"); // ⊄ - not a subset of 247 | m.put(8838, "sube"); // ⊆ - subset of or equal to 248 | m.put(8839, "supe"); // ⊇ - superset of or equal to 249 | m.put(8853, "oplus"); // ⊕ - circled plus (direct sum) 250 | m.put(8855, "otimes"); // ⊗ - circled times (vector product) 251 | m.put(8869, "perp"); // ⊥ - up tack (orthogonal to, perpendicular)[o] 252 | m.put(8901, "sdot"); // ⋅ - dot operator[p] 253 | m.put(8968, "lceil"); // ⌈ - left ceiling (APL upstile) 254 | m.put(8969, "rceil"); // ⌉ - right ceiling 255 | m.put(8970, "lfloor"); // ⌊ - left floor (APL downstile) 256 | m.put(8971, "rfloor"); // ⌋ - right floor 257 | m.put(9001, "lang"); // 〈 - left-pointing angle bracket (bra)[q] 258 | m.put(9002, "rang"); // 〉 - right-pointing angle bracket (ket)[r] 259 | m.put(9674, "loz"); // ◊ - lozenge 260 | m.put(9824, "spades"); // ♠ - black spade suit[f] 261 | m.put(9827, "clubs"); // ♣ - black club suit (shamrock)[f] 262 | m.put(9829, "hearts"); // ♥ - black heart suit (valentine)[f] 263 | m.put(9830, "diams"); // ♦ - black diamond suit[f] 264 | 265 | } 266 | 267 | public static String escape(String str) { 268 | int len = str.length(); 269 | StringBuilder builder = new StringBuilder(str.length()); 270 | for (int i = 0; i < len; i++) { 271 | char c = str.charAt(i); 272 | int ascii = (int) c; 273 | String entityName = (String) m.get(ascii); 274 | if (entityName == null) { 275 | if (c > 0x7F) { 276 | builder.append("&#"); 277 | builder.append(Integer.toString(c, 10)); 278 | builder.append(';'); 279 | } else { 280 | builder.append(c); 281 | } 282 | } else { 283 | builder.append('&'); 284 | builder.append(entityName); 285 | builder.append(';'); 286 | } 287 | } 288 | return builder.toString(); 289 | } 290 | } 291 | -------------------------------------------------------------------------------- /ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/ITailHTTPImpl.java: -------------------------------------------------------------------------------- 1 | package ru.pflb.jmeter.samplers; 2 | 3 | import org.apache.jmeter.protocol.http.sampler.HTTPSampleResult; 4 | import org.apache.jmeter.samplers.Interruptible; 5 | 6 | import java.net.URL; 7 | 8 | /** 9 | * Created by a.perevozchikova on 01.03.2016. 10 | */ 11 | public interface ITailHTTPImpl extends Interruptible { 12 | HTTPSampleResult sampleTail(URL url, String method, boolean areFollowingRedirect, int frameDepth); 13 | void notifyFirstSampleAfterLoopRestart(); 14 | void threadFinished(); 15 | 16 | } 17 | -------------------------------------------------------------------------------- /ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/TailHTTPHC4Impl.java: -------------------------------------------------------------------------------- 1 | package ru.pflb.jmeter.samplers; 2 | 3 | import org.apache.http.HttpHost; 4 | import org.apache.http.client.methods.*; 5 | import org.apache.http.protocol.BasicHttpContext; 6 | import org.apache.http.protocol.ExecutionContext; 7 | import org.apache.http.protocol.HttpContext; 8 | import org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl; 9 | import org.apache.jmeter.protocol.http.sampler.HTTPSampleResult; 10 | import org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase; 11 | import org.apache.jmeter.protocol.http.sampler.HttpWebdav; 12 | import org.apache.jmeter.protocol.http.util.HTTPConstants; 13 | import org.apache.jmeter.samplers.SampleResult; 14 | import org.apache.jorphan.logging.LoggingManager; 15 | import org.apache.log.Logger; 16 | 17 | import java.io.IOException; 18 | import java.net.URI; 19 | import java.net.URL; 20 | 21 | /** 22 | * Fork of HTTP Sampler using Apache HttpClient 4.x. 23 | * with special method for download embedded resources 24 | */ 25 | public class TailHTTPHC4Impl extends HTTPHC4Impl implements ITailHTTPImpl{ 26 | private static final Logger log = LoggingManager.getLoggerForClass(); 27 | 28 | private volatile HttpUriRequest currentRequest; // Accessed from multiple threads 29 | 30 | protected TailHTTPHC4Impl(HTTPSamplerBase testElement) { 31 | super(testElement); 32 | } 33 | 34 | @Override 35 | public HTTPSampleResult sample(URL url, String method, 36 | boolean areFollowingRedirect, int frameDepth) { 37 | return super.sample(url, method, areFollowingRedirect, frameDepth); 38 | 39 | 40 | } 41 | 42 | // @Override 43 | public HTTPSampleResult sampleTail(URL url, String method, 44 | boolean areFollowingRedirect, int frameDepth, byte[] content) { 45 | if (log.isDebugEnabled()) { 46 | log.debug("Start : sample " + url.toString()); 47 | log.debug("method " + method + " followingRedirect " + areFollowingRedirect + " depth " + frameDepth); 48 | } 49 | HTTPSampleResult res = createSampleResult(url, method); 50 | HttpRequestBase httpRequest; 51 | try { 52 | URI uri = url.toURI(); 53 | if (method.equals(HTTPConstants.POST)) { 54 | httpRequest = new HttpPost(uri); 55 | } else if (method.equals(HTTPConstants.PUT)) { 56 | httpRequest = new HttpPut(uri); 57 | } else if (method.equals(HTTPConstants.HEAD)) { 58 | httpRequest = new HttpHead(uri); 59 | } else if (method.equals(HTTPConstants.TRACE)) { 60 | httpRequest = new HttpTrace(uri); 61 | } else if (method.equals(HTTPConstants.OPTIONS)) { 62 | httpRequest = new HttpOptions(uri); 63 | } else if (method.equals(HTTPConstants.DELETE)) { 64 | httpRequest = new HttpDelete(uri); 65 | } else if (method.equals(HTTPConstants.GET)) { 66 | httpRequest = new HttpGet(uri); 67 | } else if (method.equals(HTTPConstants.PATCH)) { 68 | httpRequest = new HttpPatch(uri); 69 | } else if (HttpWebdav.isWebdavMethod(method)) { 70 | httpRequest = new HttpWebdav(method, uri); 71 | } else { 72 | throw new IllegalArgumentException("Unexpected method: '" + method + "'"); 73 | } 74 | setupRequest(url, httpRequest, res); // can throw IOException 75 | } catch (Exception e) { 76 | res.sampleStart(); 77 | res.sampleEnd(); 78 | errorResult(e, res); 79 | return res; 80 | } 81 | 82 | HttpContext localContext = new BasicHttpContext(); 83 | 84 | res.sampleStart(); 85 | 86 | try { 87 | currentRequest = httpRequest; 88 | handleMethod(method, res, httpRequest, localContext); 89 | // perform the sample 90 | 91 | res.setResponseData(content); 92 | res.setDataType(SampleResult.TEXT); 93 | res.setContentType("text/html"); 94 | res.setEncodingAndType("text/html; charset=UTF-8"); 95 | 96 | res.sampleEnd(); // Done with the sampling proper. 97 | currentRequest = null; 98 | 99 | // Now collect the results into the HTTPSampleResult: 100 | res.setResponseCode("200"); 101 | res.setResponseMessage("OK"); 102 | res.setSuccessful(true); 103 | 104 | // If we redirected automatically, the URL may have changed 105 | if (getAutoRedirects()) { 106 | HttpUriRequest req = (HttpUriRequest) localContext.getAttribute(ExecutionContext.HTTP_REQUEST); 107 | HttpHost target = (HttpHost) localContext.getAttribute(ExecutionContext.HTTP_TARGET_HOST); 108 | URI redirectURI = req.getURI(); 109 | if (redirectURI.isAbsolute()) { 110 | res.setURL(redirectURI.toURL()); 111 | } else { 112 | res.setURL(new URL(new URL(target.toURI()), redirectURI.toString())); 113 | } 114 | } 115 | // Follow redirects and download page resources if appropriate: 116 | res = resultProcessing(areFollowingRedirect, frameDepth, res); 117 | 118 | } catch (IOException e) { 119 | res.sampleEnd(); 120 | log.debug("IOException", e); 121 | // pick up headers if failed to execute the request 122 | errorResult(e, res); 123 | return res; 124 | } catch (RuntimeException e) { 125 | res.sampleEnd(); 126 | log.debug("RuntimeException", e); 127 | errorResult(e, res); 128 | return res; 129 | } finally { 130 | currentRequest = null; 131 | } 132 | return res; 133 | } 134 | 135 | @Override 136 | public boolean interrupt() { 137 | HttpUriRequest request = currentRequest; 138 | if (request != null) { 139 | currentRequest = null; // don't try twice 140 | try { 141 | request.abort(); 142 | } catch (UnsupportedOperationException e) { 143 | log.warn("Could not abort pending request", e); 144 | } 145 | } 146 | return request != null; 147 | } 148 | //protected protected 149 | @Override 150 | public void notifyFirstSampleAfterLoopRestart() { 151 | super.notifyFirstSampleAfterLoopRestart(); 152 | } 153 | 154 | @Override 155 | public void threadFinished() { 156 | super.threadFinished(); 157 | } 158 | 159 | @Override 160 | public HTTPSampleResult sampleTail(URL url, String method, boolean areFollowingRedirect, int frameDepth) { 161 | return super.sample(url,method, areFollowingRedirect,frameDepth); 162 | } 163 | } -------------------------------------------------------------------------------- /ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/TailHTTPSamplerProxy.java: -------------------------------------------------------------------------------- 1 | package ru.pflb.jmeter.samplers; 2 | 3 | import org.apache.jmeter.engine.event.LoopIterationEvent; 4 | import org.apache.jmeter.protocol.http.sampler.HTTPSampleResult; 5 | import org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase; 6 | import org.apache.jmeter.samplers.Interruptible; 7 | import ru.pflb.jmeter.samplers.wrapper.WrapperHTTPSamplerFactory; 8 | /** 9 | * Common constants and methods for pflb - HTTP Sampler Tail 10 | */ 11 | public class TailHTTPSamplerProxy extends HTTPSamplerBase implements Interruptible { 12 | 13 | public static final String EMBRESLINKS = "Tail.Links"; 14 | private static final long serialVersionUID = 1L; 15 | private transient ITailHTTPImpl impl; 16 | private transient volatile boolean notifyFirstSampleAfterLoopRestart; 17 | 18 | public TailHTTPSamplerProxy() { 19 | super(); 20 | } 21 | 22 | /** 23 | * Convenience method used to initialise the implementation. 24 | * 25 | * @param impl the implementation to use. 26 | */ 27 | public TailHTTPSamplerProxy(String impl) { 28 | super(); 29 | setImplementation(impl); 30 | } 31 | 32 | public String getEmbeddedResourceContent(String embeddedResourceLinks) { 33 | String[] embeddedResourceLinkArray = embeddedResourceLinks.split("\n"); 34 | StringBuilder contentBuilder = new StringBuilder(embeddedResourceLinks.length() + 100); 35 | contentBuilder.append("\n"); 36 | contentBuilder.append("\n\n \n Embedded resources\n \n \n"); 37 | for (String embeddedResourceLink : embeddedResourceLinkArray) { 38 | String srcLink = embeddedResourceLink.trim(); 39 | if (!srcLink.equals("")) { 40 | contentBuilder.append(" \n"); 43 | } 44 | } 45 | contentBuilder.append(" \n"); 46 | return contentBuilder.toString(); 47 | } 48 | 49 | /** 50 | * {@inheritDoc} 51 | */ 52 | @Override 53 | protected HTTPSampleResult sample(java.net.URL u, String method, boolean areFollowingRedirect, int depth) { 54 | // When Retrieve Embedded resources + Concurrent Pool is used 55 | // as the instance of Proxy is cloned, we end up with impl being null 56 | // testIterationStart will not be executed but it's not a problem for 51380 as it's download of resources 57 | // so SSL context is to be reused new TailHTTPHC4Impl(this); // 58 | if (impl == null) { // Not called from multiple threads, so this is OK 59 | try {if (depth==0){ 60 | impl = new TailHTTPHC4Impl(this); 61 | } 62 | else 63 | { 64 | impl = WrapperHTTPSamplerFactory.getImplementation(getImplementation(), this, depth); 65 | } 66 | } catch (Exception ex) { 67 | return errorResult(ex, new HTTPSampleResult()); 68 | } 69 | } 70 | // see https://issues.apache.org/bugzilla/show_bug.cgi?id=51380 71 | if (notifyFirstSampleAfterLoopRestart) { 72 | impl.notifyFirstSampleAfterLoopRestart(); 73 | notifyFirstSampleAfterLoopRestart = false; 74 | } 75 | HTTPSampleResult result; 76 | if (depth == 0) { 77 | String links = this.getPropertyAsString(TailHTTPSamplerProxy.EMBRESLINKS); 78 | byte[] content = this.getEmbeddedResourceContent(links).getBytes(); 79 | if (impl instanceof TailHTTPHC4Impl){ 80 | TailHTTPHC4Impl tailIml = (TailHTTPHC4Impl)impl; 81 | result = tailIml.sampleTail(u, method, areFollowingRedirect, depth, content); 82 | } 83 | else 84 | { 85 | throw new RuntimeException("Unknown sampler implementation: " + impl.toString()); 86 | } 87 | 88 | } else { 89 | result = impl.sampleTail(u, method, areFollowingRedirect, depth); 90 | } 91 | return result; 92 | } 93 | 94 | // N.B. It's not possible to forward threadStarted() to the implementation class. 95 | // This is because Config items are not processed until later, and HTTPDefaults may define the implementation 96 | 97 | @Override 98 | public void threadFinished() { 99 | if (impl != null) { 100 | impl.threadFinished(); // Forward to sampler 101 | } 102 | } 103 | 104 | @Override 105 | public boolean interrupt() { 106 | if (impl != null) { 107 | return impl.interrupt(); // Forward to sampler 108 | } 109 | return false; 110 | } 111 | 112 | /* (non-Javadoc) 113 | * @see org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase#testIterationStart(org.apache.jmeter.engine.event.LoopIterationEvent) 114 | */ 115 | @Override 116 | public void testIterationStart(LoopIterationEvent event) { 117 | notifyFirstSampleAfterLoopRestart = true; 118 | } 119 | 120 | } -------------------------------------------------------------------------------- /ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/TailHttpSamplerGui.java: -------------------------------------------------------------------------------- 1 | package ru.pflb.jmeter.samplers; 2 | 3 | import org.apache.jmeter.gui.util.HorizontalPanel; 4 | import org.apache.jmeter.gui.util.VerticalPanel; 5 | import org.apache.jmeter.protocol.http.control.gui.HttpTestSampleGui; 6 | import org.apache.jmeter.testelement.TestElement; 7 | import ru.pflb.jmeter.protocol.http.config.gui.TailUrlConfigGui; 8 | 9 | import javax.swing.*; 10 | import java.awt.*; 11 | 12 | /** 13 | * pflb - HTTP Sampler Tail GUI 14 | */ 15 | public class TailHttpSamplerGui extends HttpTestSampleGui { 16 | private static final long serialVersionUID = 1234567890L; 17 | private final boolean isAJP; 18 | private TailUrlConfigGui tailUrlConfigGui; 19 | 20 | public TailHttpSamplerGui() { 21 | super(); 22 | isAJP = false; 23 | init(); 24 | } 25 | 26 | protected TailHttpSamplerGui(boolean ajp) { 27 | super(ajp); 28 | isAJP = ajp; 29 | init(); 30 | } 31 | 32 | /** 33 | * {@inheritDoc} 34 | */ 35 | @Override 36 | public void configure(TestElement element) { 37 | super.configure(element); 38 | tailUrlConfigGui.configure(element); 39 | } 40 | 41 | private void reSetDefaultValues(TailHTTPSamplerProxy sampler) 42 | { 43 | sampler.setImageParser(true); 44 | sampler.setConcurrentDwn(true); 45 | sampler.setConcurrentPool("4"); 46 | } 47 | 48 | /** 49 | * {@inheritDoc} 50 | */ 51 | @Override 52 | public TestElement createTestElement() { 53 | TailHTTPSamplerProxy sampler = new TailHTTPSamplerProxy(); 54 | modifyTestElement(sampler); 55 | reSetDefaultValues(sampler); 56 | return sampler; 57 | } 58 | 59 | /** 60 | * Modifies a given TestElement to mirror the data in the gui components. 61 | *

62 | * {@inheritDoc} 63 | */ 64 | @Override 65 | public void modifyTestElement(TestElement sampler) { 66 | super.modifyTestElement(sampler); 67 | tailUrlConfigGui.modifyTestElement(sampler); 68 | } 69 | 70 | @Override 71 | public String getStaticLabel() { 72 | return "pflb - HTTP Request Tail"; 73 | } 74 | 75 | /** 76 | * {@inheritDoc} 77 | */ 78 | @Override 79 | public String getLabelResource() { 80 | return "pflb_HTTP_Request_Tail"; // $NON-NLS-1$ 81 | } 82 | 83 | private void init() {// called from ctor, so must not be overridable 84 | setLayout(new BorderLayout(0, 5)); 85 | setBorder(super.makeBorder()); 86 | 87 | add(super.makeTitlePanel(), BorderLayout.NORTH); 88 | 89 | // URL CONFIG 90 | tailUrlConfigGui = new TailUrlConfigGui(true, !isAJP); 91 | add(tailUrlConfigGui, BorderLayout.CENTER); 92 | 93 | // Bottom (embedded resources, source address and optional tasks) 94 | JPanel bottomPane = new VerticalPanel(); 95 | bottomPane.add(super.createEmbeddedRsrcPanel()); 96 | JPanel optionAndSourcePane = new HorizontalPanel(); 97 | optionAndSourcePane.add(super.createSourceAddrPanel()); 98 | optionAndSourcePane.add(super.createOptionalTasksPanel()); 99 | bottomPane.add(optionAndSourcePane); 100 | add(bottomPane, BorderLayout.SOUTH); 101 | } 102 | 103 | 104 | /** 105 | * {@inheritDoc} 106 | */ 107 | @Override 108 | public void clearGui() { 109 | super.clearGui(); 110 | tailUrlConfigGui.clear(); 111 | } 112 | } -------------------------------------------------------------------------------- /ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/wrapper/WrapperHTTPFileImpl.java: -------------------------------------------------------------------------------- 1 | package ru.pflb.jmeter.samplers.wrapper; 2 | 3 | import org.apache.jmeter.protocol.http.sampler.HTTPFileImpl; 4 | import org.apache.jmeter.protocol.http.sampler.HTTPSampleResult; 5 | import org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase; 6 | import ru.pflb.jmeter.samplers.ITailHTTPImpl; 7 | 8 | import java.net.URL; 9 | 10 | /** 11 | * Created by a.perevozchikova on 01.03.2016. 12 | */ 13 | 14 | public class WrapperHTTPFileImpl extends HTTPFileImpl implements ITailHTTPImpl{ 15 | protected WrapperHTTPFileImpl(HTTPSamplerBase base) { 16 | super(base); 17 | } 18 | 19 | @Override 20 | public HTTPSampleResult sampleTail(URL url, String method, boolean areFollowingRedirect, int frameDepth) { 21 | return super.sample(url, method, areFollowingRedirect, frameDepth); 22 | } 23 | @Override 24 | public void notifyFirstSampleAfterLoopRestart(){ 25 | super.notifyFirstSampleAfterLoopRestart(); 26 | } 27 | 28 | @Override 29 | public void threadFinished() { 30 | super.threadFinished(); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/wrapper/WrapperHTTPHC3Impl.java: -------------------------------------------------------------------------------- 1 | package ru.pflb.jmeter.samplers.wrapper; 2 | 3 | /** 4 | * Created by a.perevozchikova on 29.02.2016. 5 | */ 6 | 7 | import org.apache.jmeter.protocol.http.sampler.HTTPHC3Impl; 8 | import org.apache.jmeter.protocol.http.sampler.HTTPSampleResult; 9 | import org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase; 10 | import ru.pflb.jmeter.samplers.ITailHTTPImpl; 11 | 12 | import java.net.URL; 13 | 14 | public class WrapperHTTPHC3Impl extends HTTPHC3Impl implements ITailHTTPImpl{ 15 | 16 | 17 | protected WrapperHTTPHC3Impl(HTTPSamplerBase base) { 18 | super(base); 19 | } 20 | 21 | @Override 22 | protected HTTPSampleResult sample(URL url, String method, boolean areFollowingRedirect, int frameDepth) { 23 | return super.sample(url, method, areFollowingRedirect, frameDepth); 24 | } 25 | 26 | @Override 27 | public HTTPSampleResult sampleTail(URL url, String method, boolean areFollowingRedirect, int frameDepth) { 28 | return super.sample(url, method, areFollowingRedirect, frameDepth); 29 | } 30 | 31 | @Override 32 | public void notifyFirstSampleAfterLoopRestart(){ 33 | super.notifyFirstSampleAfterLoopRestart(); 34 | } 35 | 36 | @Override 37 | public void threadFinished() { 38 | super.threadFinished(); 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/wrapper/WrapperHTTPHC4Impl.java: -------------------------------------------------------------------------------- 1 | package ru.pflb.jmeter.samplers.wrapper; 2 | 3 | import org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl; 4 | import org.apache.jmeter.protocol.http.sampler.HTTPSampleResult; 5 | import org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase; 6 | import ru.pflb.jmeter.samplers.ITailHTTPImpl; 7 | 8 | import java.net.URL; 9 | 10 | /** 11 | * Created by a.perevozchikova on 01.03.2016. 12 | */ 13 | public class WrapperHTTPHC4Impl extends HTTPHC4Impl implements ITailHTTPImpl{ 14 | protected WrapperHTTPHC4Impl(HTTPSamplerBase testElement) { 15 | super(testElement); 16 | } 17 | 18 | @Override 19 | public HTTPSampleResult sampleTail(URL url, String method, boolean areFollowingRedirect, int frameDepth) { 20 | return super.sample(url, method, areFollowingRedirect, frameDepth); 21 | } 22 | 23 | @Override 24 | public void notifyFirstSampleAfterLoopRestart(){ 25 | super.notifyFirstSampleAfterLoopRestart(); 26 | } 27 | 28 | @Override 29 | public void threadFinished() { 30 | super.threadFinished(); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/wrapper/WrapperHTTPJavaImpl.java: -------------------------------------------------------------------------------- 1 | package ru.pflb.jmeter.samplers.wrapper; 2 | 3 | /** 4 | * Created by a.perevozchikova on 29.02.2016. 5 | */ 6 | 7 | import org.apache.jmeter.protocol.http.sampler.HTTPJavaImpl; 8 | import org.apache.jmeter.protocol.http.sampler.HTTPSampleResult; 9 | import org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase; 10 | import ru.pflb.jmeter.samplers.ITailHTTPImpl; 11 | 12 | import java.net.URL; 13 | 14 | public class WrapperHTTPJavaImpl extends HTTPJavaImpl implements ITailHTTPImpl { 15 | 16 | protected WrapperHTTPJavaImpl(HTTPSamplerBase base) { 17 | super(base); 18 | } 19 | 20 | @Override 21 | public HTTPSampleResult sampleTail(URL url, String method, boolean areFollowingRedirect, int frameDepth) { 22 | return super.sample(url, method, areFollowingRedirect, frameDepth); 23 | } 24 | 25 | @Override 26 | public void notifyFirstSampleAfterLoopRestart(){ 27 | super.notifyFirstSampleAfterLoopRestart(); 28 | } 29 | 30 | @Override 31 | public void threadFinished() { 32 | super.threadFinished(); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /ru.pflb.jmeter.samplers.TailSampler/src/ru/pflb/jmeter/samplers/wrapper/WrapperHTTPSamplerFactory.java: -------------------------------------------------------------------------------- 1 | package ru.pflb.jmeter.samplers.wrapper; 2 | 3 | import org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase; 4 | import org.apache.jmeter.util.JMeterUtils; 5 | import org.apache.jorphan.util.JOrphanUtils; 6 | import ru.pflb.jmeter.samplers.ITailHTTPImpl; 7 | 8 | /** 9 | * Factory to return the appropriate HTTPSampler for use with classes that need 10 | * an HTTPSampler; also creates the implementations for use with HTTPSamplerProxy. 11 | * 12 | */ 13 | public final class WrapperHTTPSamplerFactory{ 14 | 15 | 16 | // N.B. These values are used in jmeter.properties (jmeter.httpsampler) - do not change 17 | // They can alse be used as the implementation name 18 | /** Use the the default Java HTTP implementation */ 19 | public static final String HTTP_SAMPLER_JAVA = "HTTPSampler"; //$NON-NLS-1$ 20 | 21 | /** Use Apache HTTPClient HTTP implementation */ 22 | public static final String HTTP_SAMPLER_APACHE = "HTTPSampler2"; //$NON-NLS-1$ 23 | 24 | static final String PROTOCOL_FILE = "file"; 25 | 26 | //+ JMX implementation attribute values (also displayed in GUI) - do not change 27 | public static final String IMPL_HTTP_CLIENT4 = "HttpClient4"; // $NON-NLS-1$ 28 | 29 | public static final String IMPL_HTTP_CLIENT3_1 = "HttpClient3.1"; // $NON-NLS-1$ 30 | 31 | public static final String IMPL_JAVA = "Java"; // $NON-NLS-1$ 32 | //- JMX 33 | 34 | public static final String DEFAULT_CLASSNAME = 35 | JMeterUtils.getPropDefault("jmeter.httpsampler", IMPL_HTTP_CLIENT4); //$NON-NLS-1$ 36 | 37 | private WrapperHTTPSamplerFactory() { 38 | // Not intended to be instantiated 39 | } 40 | 41 | public static String[] getImplementations(){ 42 | return new String[]{IMPL_HTTP_CLIENT4,IMPL_HTTP_CLIENT3_1,IMPL_JAVA}; 43 | } 44 | 45 | public static ITailHTTPImpl getImplementation(String impl, HTTPSamplerBase base, int depth){ 46 | if ("file".equals(base.getProtocol())) { 47 | return new WrapperHTTPFileImpl(base); 48 | } 49 | if (JOrphanUtils.isBlank(impl)){ 50 | impl = DEFAULT_CLASSNAME; 51 | } 52 | 53 | if (IMPL_JAVA.equals(impl) || HTTP_SAMPLER_JAVA.equals(impl)) { 54 | return new WrapperHTTPJavaImpl(base); 55 | } else if (IMPL_HTTP_CLIENT3_1.equals(impl) || HTTP_SAMPLER_APACHE.equals(impl)) { 56 | return new WrapperHTTPHC3Impl(base); 57 | } else if (IMPL_HTTP_CLIENT4.equals(impl)) { 58 | return new WrapperHTTPHC4Impl(base); 59 | } else { 60 | throw new IllegalArgumentException("Unknown implementation type: '"+impl+"'"); 61 | } 62 | } 63 | } 64 | --------------------------------------------------------------------------------