You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Justin Bertram (Jira)" <ji...@apache.org> on 2023/02/06 20:42:00 UTC

[jira] [Reopened] (ARTEMIS-3875) Improve consumer/producer metrics

     [ https://issues.apache.org/jira/browse/ARTEMIS-3875?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Justin Bertram reopened ARTEMIS-3875:
-------------------------------------

> 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: 15h 20m
>  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 every core session. We also create a producer instance for every address sent to so anonymous producers dont show as a single producer, this was also a DOS issue so we limit the no of producers we track to 100.
>  
> Im changing this to work as expected so every JMS producer created will show as a single producer, even anonymous producers to correctly show what producers exist at a client. The downside to changing this so much is that producer metrics will no longer be available for legacy clients.
>  
> 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)