Мне нужно получить 10 разных подписчиков с длительным сроком действия, добавленных в брокер сообщений, путем чтения идентификаторов длительной подписки, которые должны быть установлены из файла csv, который содержит целочисленные значения от 1 до 10 Однако JMeter не смог прочитать значение, вместо этого попытался установить идентификатор subscritpition как $ {id}. Ниже приведена конфигурация, которую я сделал в JMeter.Простой идентификатор подписки не может быть прочитан с помощью CSV Data Set Config в JMeter
Пожалуйста, обратите внимание, что, когда я попробовал то же самое, определенной пользовательской переменной будет затем получить значение переменной и создать прочную подписку успешно.
JMeter log ниже.
2016/08/29 17:56:39 INFO - jmeter.engine.StandardJMeterEngine: Running the test!
2016/08/29 17:56:39 INFO - jmeter.samplers.SampleEvent: List of sample_variables: []
2016/08/29 17:56:39 INFO - jmeter.gui.util.JMeterMenuBar: setRunning(true,*local*)
2016/08/29 17:56:39 INFO - jmeter.engine.StandardJMeterEngine: Starting ThreadGroup: 1 : DueTopic1 - Node 1- Sub 1
2016/08/29 17:56:39 INFO - jmeter.engine.StandardJMeterEngine: Starting 1 threads for group DueTopic1 - Node 1- Sub 1.
2016/08/29 17:56:39 INFO - jmeter.engine.StandardJMeterEngine: Thread will continue on error
2016/08/29 17:56:39 INFO - jmeter.threads.ThreadGroup: Starting thread group number 1 threads 1 ramp-up 1 perThread 1000.0 delayedStart=false
2016/08/29 17:56:39 INFO - jmeter.threads.ThreadGroup: Started thread group number 1
2016/08/29 17:56:39 INFO - jmeter.engine.StandardJMeterEngine: All thread groups have been started
2016/08/29 17:56:39 INFO - jmeter.threads.JMeterThread: Thread started: DueTopic1 - Node 1- Sub 1 1-1
2016/08/29 17:56:39 ERROR - jmeter.protocol.jms.client.ReceiveSubscriber: Error during close: javax.jms.JMSException: Error closing connection: org.wso2.andes.AMQConnectionClosedException: Error: Subscription ID: carbon:${id} cannot contain any of following symbols [email protected]#;%^*()+={}|<>"', and space. "/" can only use as the tenant separator
[error code 541: internal error]
at org.wso2.andes.client.AMQConnection.doClose(AMQConnection.java:971)
at org.wso2.andes.client.AMQConnection.close(AMQConnection.java:897)
at org.wso2.andes.client.AMQConnection.close(AMQConnection.java:888)
at org.wso2.andes.client.AMQConnection.close(AMQConnection.java:883)
at org.apache.jmeter.protocol.jms.Utils.close(Utils.java:78)
at org.apache.jmeter.protocol.jms.client.ReceiveSubscriber.close(ReceiveSubscriber.java:359)
at org.apache.jmeter.protocol.jms.client.ReceiveSubscriber.<init>(ReceiveSubscriber.java:255)
at org.apache.jmeter.protocol.jms.client.ReceiveSubscriber.<init>(ReceiveSubscriber.java:115)
at org.apache.jmeter.protocol.jms.sampler.SubscriberSampler.initReceiveClient(SubscriberSampler.java:126)
at org.apache.jmeter.protocol.jms.sampler.SubscriberSampler.threadStarted(SubscriberSampler.java:298)
at org.apache.jmeter.threads.JMeterThread$ThreadListenerTraverser.addNode(JMeterThread.java:647)
at org.apache.jorphan.collections.HashTree.traverseInto(HashTree.java:996)
at org.apache.jorphan.collections.HashTree.traverse(HashTree.java:978)
at org.apache.jmeter.threads.JMeterThread.threadStarted(JMeterThread.java:616)
at org.apache.jmeter.threads.JMeterThread.initRun(JMeterThread.java:604)
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:237)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.wso2.andes.AMQConnectionClosedException: Error: Subscription ID: carbon:${id} cannot contain any of following symbols [email protected]#;%^*()+={}|<>"', and space. "/" can only use as the tenant separator
[error code 541: internal error]
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at org.wso2.andes.AMQException.cloneForCurrentThread(AMQException.java:110)
at org.wso2.andes.client.protocol.AMQProtocolHandler.writeCommandFrameAndWaitForReply(AMQProtocolHandler.java:640)
at org.wso2.andes.client.protocol.AMQProtocolHandler.syncWrite(AMQProtocolHandler.java:676)
at org.wso2.andes.client.protocol.AMQProtocolHandler.closeConnection(AMQProtocolHandler.java:707)
at org.wso2.andes.client.AMQConnectionDelegate_8_0.closeConnection(AMQConnectionDelegate_8_0.java:61)
at org.wso2.andes.client.AMQConnection.doClose(AMQConnection.java:955)
... 16 more
Caused by: org.wso2.andes.AMQConnectionClosedException: Error: Subscription ID: carbon:${id} cannot contain any of following symbols [email protected]#;%^*()+={}|<>"', and space. "/" can only use as the tenant separator
[error code 541: internal error]
at org.wso2.andes.client.handler.ConnectionCloseMethodHandler.methodReceived(ConnectionCloseMethodHandler.java:91)
at org.wso2.andes.client.handler.ClientMethodDispatcherImpl.dispatchConnectionClose(ClientMethodDispatcherImpl.java:192)
at org.wso2.andes.framing.amqp_0_91.ConnectionCloseBodyImpl.execute(ConnectionCloseBodyImpl.java:140)
at org.wso2.andes.client.state.AMQStateManager.methodReceived(AMQStateManager.java:111)
at org.wso2.andes.client.protocol.AMQProtocolHandler.methodBodyReceived(AMQProtocolHandler.java:517)
at org.wso2.andes.client.protocol.AMQProtocolSession.methodFrameReceived(AMQProtocolSession.java:467)
at org.wso2.andes.framing.AMQMethodBodyImpl.handle(AMQMethodBodyImpl.java:96)
at org.wso2.andes.client.protocol.AMQProtocolHandler$2.run(AMQProtocolHandler.java:468)
at org.wso2.andes.pool.Job.processAll(Job.java:109)
at org.wso2.andes.pool.Job.run(Job.java:153)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
... 1 more
2016/08/29 17:56:39 ERROR - jmeter.protocol.jms.sampler.SubscriberSampler: Could not initialise client javax.jms.JMSException: Error registering consumer: org.wso2.andes.AMQConnectionClosedException: Error: Subscription ID: carbon:${id} cannot contain any of following symbols [email protected]#;%^*()+={}|<>"', and space. "/" can only use as the tenant separator
[error code 541: internal error]
at org.wso2.andes.client.AMQSession$6.execute(AMQSession.java:2143)
at org.wso2.andes.client.AMQSession$6.execute(AMQSession.java:2086)
at org.wso2.andes.client.AMQConnectionDelegate_8_0.executeRetrySupport(AMQConnectionDelegate_8_0.java:324)
at org.wso2.andes.client.AMQConnection$3.run(AMQConnection.java:655)
at java.security.AccessController.doPrivileged(Native Method)
at org.wso2.andes.client.AMQConnection.executeRetrySupport(AMQConnection.java:652)
at org.wso2.andes.client.failover.FailoverRetrySupport.execute(FailoverRetrySupport.java:102)
at org.wso2.andes.client.AMQSession.createConsumerImpl(AMQSession.java:2084)
at org.wso2.andes.client.AMQSession.createConsumer(AMQSession.java:1072)
at org.wso2.andes.client.AMQSession.createDurableSubscriber(AMQSession.java:1226)
at org.wso2.andes.client.AMQSession.createDurableSubscriber(AMQSession.java:1121)
at org.apache.jmeter.protocol.jms.client.ReceiveSubscriber.createSubscriber(ReceiveSubscriber.java:284)
at org.apache.jmeter.protocol.jms.client.ReceiveSubscriber.<init>(ReceiveSubscriber.java:239)
at org.apache.jmeter.protocol.jms.client.ReceiveSubscriber.<init>(ReceiveSubscriber.java:115)
at org.apache.jmeter.protocol.jms.sampler.SubscriberSampler.initReceiveClient(SubscriberSampler.java:126)
at org.apache.jmeter.protocol.jms.sampler.SubscriberSampler.threadStarted(SubscriberSampler.java:298)
at org.apache.jmeter.threads.JMeterThread$ThreadListenerTraverser.addNode(JMeterThread.java:647)
at org.apache.jorphan.collections.HashTree.traverseInto(HashTree.java:996)
at org.apache.jorphan.collections.HashTree.traverse(HashTree.java:978)
at org.apache.jmeter.threads.JMeterThread.threadStarted(JMeterThread.java:616)
at org.apache.jmeter.threads.JMeterThread.initRun(JMeterThread.java:604)
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:237)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.wso2.andes.AMQConnectionClosedException: Error: Subscription ID: carbon:${id} cannot contain any of following symbols [email protected]#;%^*()+={}|<>"', and space. "/" can only use as the tenant separator
[error code 541: internal error]
at org.wso2.andes.client.handler.ConnectionCloseMethodHandler.methodReceived(ConnectionCloseMethodHandler.java:91)
at org.wso2.andes.client.handler.ClientMethodDispatcherImpl.dispatchConnectionClose(ClientMethodDispatcherImpl.java:192)
at org.wso2.andes.framing.amqp_0_91.ConnectionCloseBodyImpl.execute(ConnectionCloseBodyImpl.java:140)
at org.wso2.andes.client.state.AMQStateManager.methodReceived(AMQStateManager.java:111)
at org.wso2.andes.client.protocol.AMQProtocolHandler.methodBodyReceived(AMQProtocolHandler.java:517)
at org.wso2.andes.client.protocol.AMQProtocolSession.methodFrameReceived(AMQProtocolSession.java:467)
at org.wso2.andes.framing.AMQMethodBodyImpl.handle(AMQMethodBodyImpl.java:96)
at org.wso2.andes.client.protocol.AMQProtocolHandler$2.run(AMQProtocolHandler.java:468)
at org.wso2.andes.pool.Job.processAll(Job.java:109)
at org.wso2.andes.pool.Job.run(Job.java:153)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
... 1 more
2016/08/29 17:56:39 INFO - jmeter.services.FileServer: Stored: training.csv
2016/08/29 17:56:39 INFO - jmeter.threads.JMeterThread: Thread is done: DueTopic1 - Node 1- Sub 1 1-1
2016/08/29 17:56:39 INFO - jmeter.threads.JMeterThread: Thread finished: DueTopic1 - Node 1- Sub 1 1-1
2016/08/29 17:56:39 INFO - jmeter.engine.StandardJMeterEngine: Notifying test listeners of end of test
2016/08/29 17:56:39 INFO - jmeter.services.FileServer: Close: training.csv
2016/08/29 17:56:39 INFO - jmeter.protocol.jms.client.InitialContextFactory: InitialContextFactory.close() called and Context instances cleaned up
2016/08/29 17:56:39 INFO - jmeter.gui.util.JMeterMenuBar: setRunning(false,*local*)
Где вы установили конфигурацию данных CSV? –
Как показано на первом изображении, файл csv находится в домашнем каталоге. Файл CSV доступен, потому что я опубликовал сообщение с телом, которое было установлено одним и тем же файлом CSV. –
Да, но в вашем плане тестирования, где вы разместили компонент? –