[ https://issues.apache.org/jira/browse/ARTEMIS-3875?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andy Taylor updated ARTEMIS-3875: --------------------------------- Description: adding the following metrics: for the Consumer and the methods listAllConsumersAsJSON on server and queue mbeans: messagesInTransit - number of Messages out for delivery which have not yet been acknowledged messagesInTransitSize - The total size of Messages out for delivery which have not yet been acknowledged messagesDelivered - Number of messages delivered messagesDeliveredSize' - total size of messages delivered messagesAcknowledged - total number of Messages Acknowledged messagesAcknowledgedAwaitingCommit - Total number of messages in a transaction that are acknowledged but awaiting a commit lastDeliveredTime - The time in milliseconds of the last message delivered lastAcknowledgedTime - The time in milliseconds of the last message acknowledged for the Producer add to the listProducers and listproducersasJSON mbean methods msgSent - The number of messages sent by a producer msgSizeSent - The total size of messages sent by a producer lastUUIDSent - The UUID of the last message sent The producer views are currently quite broken, different protocols show different producer info and number of producers, this is because in core we add a single producer per session which means you get 2 for ecey core session. Im changing this to be a producer for every address sent to. For normal producers this will now show s single producer for every protocol, for anon producers this will show a producer for every address sent to. For DOS protection this will max on 100 producers and they will also be torn down when the session is closed. Ive also move the use of targetAddressInfos into the server producer for consistencey. Other improvements * Consolidate the names used by the different methods to be more consistent and referenced by static variables. * use statics in all the tests * add tests for different message count scenarios was: adding the following metrics: for the Consumer and the methods listAllConsumersAsJSON on server and queue mbeans: messagesInTransit - number of Messages out for delivery which have not yet been acknowledged messagesInTransitSize - The total size of Messages out for delivery which have not yet been acknowledged messagesDelivered - Number of messages delivered messagesDeliveredSize' - total size of messages delivered messagesAcknowledged - total number of Messages Acknowledged messagesAcknowledgedAwaitingCommit - Total number of messages in a transaction that are acknowledged but awaiting a commit lastDeliveredTime - The time in milliseconds of the last message delivered lastAcknowledgedTime - The time in milliseconds of the last message acknowledged for the Producer add to the listProducers and listproducersasJSON mbean methods msgSent - The number of messages sent by a producer msgSizeSent - The total size of messages sent by a producer lastUUIDSent - The UUID of the last message sent The producer views are currently quite broken, different protocols show different producer info and number of producers, this is because in core we add a single producer per session which means you get 2 for ecey core session. Im changing this to be a producer for every address sent to. For normal producers this will now show s single producer for every protocol, for anon producers this will show a producer for every address sent to. For DOS protection this will max on 100 producers and they will also be torn down when the session is closed. Other improvements * Consolidate the names used by the different methods to be more consistent and referenced by static variables. * use statics in all the tests * add tests for different message count scenarios > Improve consumer/producer metrics > --------------------------------- > > Key: ARTEMIS-3875 > URL: https://issues.apache.org/jira/browse/ARTEMIS-3875 > Project: ActiveMQ Artemis > Issue Type: Improvement > Reporter: Andy Taylor > Assignee: Andy Taylor > Priority: Major > Time Spent: 2h 50m > Remaining Estimate: 0h > > adding the following metrics: > > for the Consumer and the methods listAllConsumersAsJSON on server and queue > mbeans: > messagesInTransit - number of Messages out for delivery which have not yet > been acknowledged > messagesInTransitSize - The total size of Messages out for delivery which > have not yet been acknowledged > messagesDelivered - Number of messages delivered > messagesDeliveredSize' - total size of messages delivered > messagesAcknowledged - total number of Messages Acknowledged > messagesAcknowledgedAwaitingCommit - Total number of messages in a > transaction that are acknowledged but awaiting a commit > lastDeliveredTime - The time in milliseconds of the last message delivered > lastAcknowledgedTime - The time in milliseconds of the last message > acknowledged > > for the Producer add to the listProducers and listproducersasJSON mbean > methods > msgSent - The number of messages sent by a producer > msgSizeSent - The total size of messages sent by a producer > lastUUIDSent - The UUID of the last message sent > > The producer views are currently quite broken, different protocols show > different producer info and number of producers, this is because in core we > add a single producer per session which means you get 2 for ecey core > session. Im changing this to be a producer for every address sent to. For > normal producers this will now show s single producer for every protocol, for > anon producers this will show a producer for every address sent to. For DOS > protection this will max on 100 producers and they will also be torn down > when the session is closed. > > Ive also move the use of targetAddressInfos into the server producer for > consistencey. > > Other improvements > * Consolidate the names used by the different methods to be more consistent > and referenced by static variables. > * use statics in all the tests > * add tests for different message count scenarios -- This message was sent by Atlassian Jira (v8.20.10#820010)