[ 
https://issues.apache.org/jira/browse/ARTEMIS-4579?focusedWorklogId=901025&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-901025
 ]

ASF GitHub Bot logged work on ARTEMIS-4579:
-------------------------------------------

                Author: ASF GitHub Bot
            Created on: 22/Jan/24 19:51
            Start Date: 22/Jan/24 19:51
    Worklog Time Spent: 10m 
      Work Description: clebertsuconic commented on PR #4752:
URL: 
https://github.com/apache/activemq-artemis/pull/4752#issuecomment-1904700025

   my only concern is storing a reference outside the data structure for the 
first message. treeMap.first() is there for right that purpose.
   
   
   on the implementation for first(), this is just returning:
   
   
      public E first() {
           return m.firstKey();
       }
       
       
       
   Which means you can always just return first().
   
   
   
   I'm not sure if you need to check for empty or not.. as you would need to 
double check on that.




Issue Time Tracking
-------------------

    Worklog Id:     (was: 901025)
    Time Spent: 50m  (was: 40m)

> Add the *FirstMessage* API for scheduled messages
> -------------------------------------------------
>
>                 Key: ARTEMIS-4579
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-4579
>             Project: ActiveMQ Artemis
>          Issue Type: Improvement
>          Components: API
>    Affects Versions: 2.31.2
>            Reporter: Jan Å mucr
>            Priority: Major
>             Fix For: 2.32.0
>
>          Time Spent: 50m
>  Remaining Estimate: 0h
>
> Alerting on issues with messages not being received properly for a period of 
> time is an uneasy task. We use the {{getFirstMessageAge()}} command to 
> trigger alerts in Zabbix, and it works as long as there are no consumers.
> But this approach fails when there are consumers repeatedly failing to 
> receive a message. That message is getting scheduled for redelivery over and 
> over, and even though there still is an old message in the queue to be 
> reported, it's no longer visible via {{getFirstMessage*()}} API.
> The goal here is to add a set of functions working with messages scheduled 
> for delivery:
> {noformat}
> getFirstScheduledMessageAsJSON()
> getFirstScheduledMessageTimestamp()
> getFirstScheduledMessageAge()
> {noformat}
> It may be not the most effective approach but it's quite a convenient one, 
> especially when monitoring a wide set of queues, each with its own set of 
> alerts.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to