Description
StatisticsBroker does not send field firstMessageTimestamp as dest may be instance of DestinationFilter (in my case: AuthorizationDestinationFilter)
if (includeFirstMessageTimestamp) { if (dest instanceof Queue) { ((Queue) dest).doBrowse(tempFirstMessage, 1); } else if (dest instanceof Topic) { ((Topic) dest).doBrowse(tempFirstMessage, 1); } if (!tempFirstMessage.isEmpty()) { Message message = tempFirstMessage.get(0); // NOTICE: Client-side, you may get the broker "now" Timestamp by msg.getJMSTimestamp() // This allows for calculating age. statsMessage.setLong("firstMessageTimestamp", message.getBrokerInTime()); tempFirstMessage.clear(); }
It appears that BaseDestination may be unwinded:
//unwind BaseDestination while (dest instanceof DestinationFilter) { dest = ((DestinationFilter) dest).getNext(); }
related to feature: https://github.com/apache/activemq/commit/9167a79b79e4c121cfe0a5b82456f52bf3ecc3c7
Attachments
Issue Links
- relates to
-
AMQ-8463 Add advancedMessageStatistics to destinations
- Reopened