[Dev] [WSO2 MB] - A comprehensive Client for Testing
Hi, I wrote a comprehensive client to send/receive and analyse JMS messages to WSO2 MB. It is easy to use - go to bin folder and execute andesClient script with parameters Please find the source at [1]. You might need to put and rebuild with latest andes-client when using. Following are the operations supported with example commands to run in terminal First parameter is *mode*. send - send messages to queues/topic receive - receive messages browse - browse messages for queues purge - purge messages of a queue analyse - analyse received data for missing messages, duplications, message orders etc cassandra - analyse cassandra data connecting to cassandra via hector - if mode is send/receive other parameters should be hosts host1:port,host2:port; destinations queue:q1,q2,q3|topic:t1,t2,t3; (recommended to use only queues or topic at once) printNumberOfMessagesPer 100 (this will set how often to print the message count.) isToPrintEachMessage false numOfSecondsToRun 600 count 1000; numOfThreads 5; params listener=true,durable=false,subscriptionID=sub1,file=,ackMode=AUTO,delayBetweenMsg=200,stopAfter=12,ackAfterEach=300,commitAfterEach=300,rollbackAfterEach=400,unsubscribeAfter=500 (all parameters are optional) connectionString (optional - if given it will override the connection string made by username/password/host/port. This is useful for failover testing) example command: *sh andesClient.sh receive 127.0.0.1:5672 http://127.0.0.1:5672 queue:myQueue1 1 true 100 1000 1 listener=true,ackMode=1,delayBetweenMsg=0,stopAfter=1000 * parameters are always key-value pairs. Be sure not to input a key without a value (eg: file=). Instead get rid of key. - if mode is browse other parameters should be mode browse host Name And Port localhost:5672 destination myQueue print Number Of Messages Per 100 is To Print Each Message false example command *sh andesClient.sh browse localhost:5672 myQueue 100 false* NOTE: more than one hostname or more than one queue is not supported - if mode is purge other parameters should be mode purge host name and port localhost:5673 destination myQueue - if mode is analyse other parameters should be printMessages - print messages received printDuplicates - print duplicate messages if any printMissing - print missing messages given the number of messages expected printSorted - print received messages in sorted order checkOrder - check if messages are in oder. This gives the place where order is broken if order is broken clearFile (for printMissing pass how many messages were expected) Note: if you send messages from a file this is not supported - if mode is cassandra other parameters should be connectionString - host:port:username:password (optional - if not given assume localhost:9160:admin:admin) operation - gq globalQueueName / nq nodeQueueName / tnq topicNodeQueueName / count queueName / content / metadata / subscribers /hash destination and other parameters as necessary gq - get global queue info (cassandra 10.100.1.146:9160:admin:admin gq GlobalQueue_1) nq - get node queue info(cassandra 10.100.1.146:9160:admin:admin nq NodeQueue_1) tnq - get topic node queue info (cassandra 10.100.1.146:9160:admin:admin tnq TopicNodeQueue_1) count - get cassandra message count for queue content - list content info metadata - list metadata info subscribers - list topic subscribers info hash - get the global queue name a given destination is hashed to NOTE: more than one hostname or more than one queue is not supported [1]. http://svn.wso2.org/repos/wso2/people/hasithah/MBTestProjectNew Thanks -- *Hasitha Abeykoon* Senior Software Engineer; WSO2, Inc.; http://wso2.com *cell:* *+94 719363063* *blog: **abeykoon.blogspot.com* http://abeykoon.blogspot.com ___ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev
Re: [Dev] [WSO2 MB] - A comprehensive Client for Testing
Hi, Nice !!! Can this be documented (article and/or Documentation) regards Ramith On Sun, Sep 28, 2014 at 7:43 PM, Hasitha Hiranya hasit...@wso2.com wrote: Hi, I wrote a comprehensive client to send/receive and analyse JMS messages to WSO2 MB. It is easy to use - go to bin folder and execute andesClient script with parameters Please find the source at [1]. You might need to put and rebuild with latest andes-client when using. Following are the operations supported with example commands to run in terminal First parameter is *mode*. send - send messages to queues/topic receive - receive messages browse - browse messages for queues purge - purge messages of a queue analyse - analyse received data for missing messages, duplications, message orders etc cassandra - analyse cassandra data connecting to cassandra via hector - if mode is send/receive other parameters should be hosts host1:port,host2:port; destinations queue:q1,q2,q3|topic:t1,t2,t3; (recommended to use only queues or topic at once) printNumberOfMessagesPer 100 (this will set how often to print the message count.) isToPrintEachMessage false numOfSecondsToRun 600 count 1000; numOfThreads 5; params listener=true,durable=false,subscriptionID=sub1,file=,ackMode=AUTO,delayBetweenMsg=200,stopAfter=12,ackAfterEach=300,commitAfterEach=300,rollbackAfterEach=400,unsubscribeAfter=500 (all parameters are optional) connectionString (optional - if given it will override the connection string made by username/password/host/port. This is useful for failover testing) example command: *sh andesClient.sh receive 127.0.0.1:5672 http://127.0.0.1:5672 queue:myQueue1 1 true 100 1000 1 listener=true,ackMode=1,delayBetweenMsg=0,stopAfter=1000 * parameters are always key-value pairs. Be sure not to input a key without a value (eg: file=). Instead get rid of key. - if mode is browse other parameters should be mode browse host Name And Port localhost:5672 destination myQueue print Number Of Messages Per 100 is To Print Each Message false example command *sh andesClient.sh browse localhost:5672 myQueue 100 false* NOTE: more than one hostname or more than one queue is not supported - if mode is purge other parameters should be mode purge host name and port localhost:5673 destination myQueue - if mode is analyse other parameters should be printMessages - print messages received printDuplicates - print duplicate messages if any printMissing - print missing messages given the number of messages expected printSorted - print received messages in sorted order checkOrder - check if messages are in oder. This gives the place where order is broken if order is broken clearFile (for printMissing pass how many messages were expected) Note: if you send messages from a file this is not supported - if mode is cassandra other parameters should be connectionString - host:port:username:password (optional - if not given assume localhost:9160:admin:admin) operation - gq globalQueueName / nq nodeQueueName / tnq topicNodeQueueName / count queueName / content / metadata / subscribers /hash destination and other parameters as necessary gq - get global queue info (cassandra 10.100.1.146:9160:admin:admin gq GlobalQueue_1) nq - get node queue info(cassandra 10.100.1.146:9160:admin:admin nq NodeQueue_1) tnq - get topic node queue info (cassandra 10.100.1.146:9160:admin:admin tnq TopicNodeQueue_1) count - get cassandra message count for queue content - list content info metadata - list metadata info subscribers - list topic subscribers info hash - get the global queue name a given destination is hashed to NOTE: more than one hostname or more than one queue is not supported [1]. http://svn.wso2.org/repos/wso2/people/hasithah/MBTestProjectNew Thanks -- *Hasitha Abeykoon* Senior Software Engineer; WSO2, Inc.; http://wso2.com *cell:* *+94 719363063* *blog: **abeykoon.blogspot.com* http://abeykoon.blogspot.com ___ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev -- Ramith Jayasinghe Technical Lead WSO2 Inc., http://wso2.com lean.enterprise.middleware E: ram...@wso2.com P: +94 777542851 ___ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev
Re: [Dev] [WSO2 MB] - A comprehensive Client for Testing
Hi Krishantha, We are already using this for MB test cases. Need to decide if we are shipping this with the pack. Thanks On Mon, Sep 29, 2014 at 10:44 AM, Krishantha Samaraweera krishan...@wso2.com wrote: +1 this is very helpful, We can integrated this with MB integration tests, and write some tests around this CLI tool (may be we can skip the CLI part and directly go though Java). BTW are we going to ship this tool with MB ? Having bat script would helpful for windows users in future. Thanks, Krishantha. On Mon, Sep 29, 2014 at 10:32 AM, Ramith Jayasinghe ram...@wso2.com wrote: Hi, Nice !!! Can this be documented (article and/or Documentation) regards Ramith On Sun, Sep 28, 2014 at 7:43 PM, Hasitha Hiranya hasit...@wso2.com wrote: Hi, I wrote a comprehensive client to send/receive and analyse JMS messages to WSO2 MB. It is easy to use - go to bin folder and execute andesClient script with parameters Please find the source at [1]. You might need to put and rebuild with latest andes-client when using. Following are the operations supported with example commands to run in terminal First parameter is *mode*. send - send messages to queues/topic receive - receive messages browse - browse messages for queues purge - purge messages of a queue analyse - analyse received data for missing messages, duplications, message orders etc cassandra - analyse cassandra data connecting to cassandra via hector - if mode is send/receive other parameters should be hosts host1:port,host2:port; destinations queue:q1,q2,q3|topic:t1,t2,t3; (recommended to use only queues or topic at once) printNumberOfMessagesPer 100 (this will set how often to print the message count.) isToPrintEachMessage false numOfSecondsToRun 600 count 1000; numOfThreads 5; params listener=true,durable=false,subscriptionID=sub1,file=,ackMode=AUTO,delayBetweenMsg=200,stopAfter=12,ackAfterEach=300,commitAfterEach=300,rollbackAfterEach=400,unsubscribeAfter=500 (all parameters are optional) connectionString (optional - if given it will override the connection string made by username/password/host/port. This is useful for failover testing) example command: *sh andesClient.sh receive 127.0.0.1:5672 http://127.0.0.1:5672 queue:myQueue1 1 true 100 1000 1 listener=true,ackMode=1,delayBetweenMsg=0,stopAfter=1000 * parameters are always key-value pairs. Be sure not to input a key without a value (eg: file=). Instead get rid of key. - if mode is browse other parameters should be mode browse host Name And Port localhost:5672 destination myQueue print Number Of Messages Per 100 is To Print Each Message false example command *sh andesClient.sh browse localhost:5672 myQueue 100 false* NOTE: more than one hostname or more than one queue is not supported - if mode is purge other parameters should be mode purge host name and port localhost:5673 destination myQueue - if mode is analyse other parameters should be printMessages - print messages received printDuplicates - print duplicate messages if any printMissing - print missing messages given the number of messages expected printSorted - print received messages in sorted order checkOrder - check if messages are in oder. This gives the place where order is broken if order is broken clearFile (for printMissing pass how many messages were expected) Note: if you send messages from a file this is not supported - if mode is cassandra other parameters should be connectionString - host:port:username:password (optional - if not given assume localhost:9160:admin:admin) operation - gq globalQueueName / nq nodeQueueName / tnq topicNodeQueueName / count queueName / content / metadata / subscribers /hash destination and other parameters as necessary gq - get global queue info (cassandra 10.100.1.146:9160:admin:admin gq GlobalQueue_1) nq - get node queue info(cassandra 10.100.1.146:9160:admin:admin nq NodeQueue_1) tnq - get topic node queue info (cassandra 10.100.1.146:9160:admin:admin tnq TopicNodeQueue_1) count - get cassandra message count for queue content - list content info metadata - list metadata info subscribers - list topic subscribers info hash - get the global queue name a given destination is hashed to NOTE: more than one hostname or more than one queue is not supported [1]. http://svn.wso2.org/repos/wso2/people/hasithah/MBTestProjectNew Thanks -- *Hasitha Abeykoon* Senior Software Engineer; WSO2, Inc.; http://wso2.com *cell:* *+94 719363063* *blog: **abeykoon.blogspot.com* http://abeykoon.blogspot.com ___ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev -- Ramith Jayasinghe Technical Lead WSO2 Inc., http://wso2.com