jbertram commented on PR #4752:
URL: 
https://github.com/apache/activemq-artemis/pull/4752#issuecomment-1906543152

   > I need to find out if there's an old message in a queue that's been there 
for longer than a specified interval, and I'm not allowed to use DLQs for that, 
because it means a manual intervention on the broker if processing fails too 
many times.
   
   I'd really like to focus on exactly why you need to know if there's an old 
message in a queue that's been there for longer than a specified interval?
   
   As noted in my previous comment, in order to have a robust detection of 
stalled consumers (a.k.a. stuck messages) you _already_ need to look at 
multiple metrics. If you're relying solely on a metric like `firstMessageAge` 
you're liable to get false positives. It's just not a good solution. I've long 
considered deprecating these metrics because folks tend to misunderstand and 
misuse them.
   
   Keep in mind that we have [slow consumer 
detection](https://activemq.apache.org/components/artemis/documentation/latest/slow-consumers.html#detecting-slow-consumers)
 built into the broker.
   
   > I know this method may be heavy but so is our workflow here, which is 
pretty much based on wasting resources in exchange for usability and easy 
maintenance.
   
   The problem, as I see it, is that by implementing this method you're going 
to force this wasting of resources on other users who likely don't want it. As 
noted previously, it's very common for JMX monitoring tools to fetch the values 
of every attribute on a given MBean. By adding this method you're implicitly 
impacting that use-case. Lots of folks use JMX monitoring tools that scan 
MBeans more than once per minute.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to