You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Erwin Dondorp (Jira)" <ji...@apache.org> on 2021/12/01 09:25:00 UTC

[jira] [Updated] (ARTEMIS-3570) additional decoding of some known message header fields

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

Erwin Dondorp updated ARTEMIS-3570:
-----------------------------------
    Description: 
In the "Browse Queue" screen for a single message, the headers and properties are shown. Some of these entries have internal values that become much clearer when they are decoded.
* {{_AMQ_Binding_Type}} (visible on notification queues) with its values "{{local-queue}}", "{{remote-queue}}" and "{{divert}}"; and
* {{_AMQ_ROUTING_TYPE}} with its values "{{multicast}}" and "{{anycast}}"; and
* {{_AMQ_ORIG_Routing_Type}} same for expired messag; and
* {{_AMQ_NotifTimestamp}} (as timestamp); and
* {{extraProperties._AMQ_ACTUAL_EXPIRY}} (as timestamp; current value is a string, so decoding does not show as timestamp yet); and
* {{messageAnnotations.x-opt-ACTUAL-EXPIRY}} (as timestamp); and
* {{properties.creationTime}} (as timestamp).

Some of these properties are only visible on expired messages (so usually on the {{ExpiryQueue}}).
There might be more such fields, but these are encountered in my situation.

Also added verification so that for any field decoding, when the field is not numeric, the decoding is not performed. previously only a check for {{NaN}} existed.

Note that {{extraProperties._AMQ_ACTUAL_EXPIRY}} is a string and is therefore not actually decoded.

a PR is in preparation

  was:
In the "Browse Queue" screen for a single message, the headers and properties are shown. Some of these entries have internal values that become much clearer when they are decoded.
* {{_AMQ_Binding_Type}} (visible on notification queues) with its values "{{local-queue}}", "{{remote-queue}}" and "{{divert}}"; and
* {{_AMQ_NotifTimestamp}} (as timestamp); and
* {{extraProperties._AMQ_ACTUAL_EXPIRY}} (as timestamp; current value is a string, so decoding does not show as timestamp yet); and
* {{messageAnnotations.x-opt-ACTUAL-EXPIRY}} (as timestamp); and
* {{properties.creationTime}} (as timestamp).

Some of these properties are only visible on expired messages (so usually on the {{ExpiryQueue}}).
There might be more such fields, but these are encountered in my situation.

Also added verification so that for any field decoding, when the field is not numeric, the decoding is not performed. previously only a check for {{NaN}} existed.

TODO: I asked in the mailing list why {{extraProperties._AMQ_ACTUAL_EXPIRY}} is a string while it could have been numeric...

a PR is in preparation


> additional decoding of some known message header fields
> -------------------------------------------------------
>
>                 Key: ARTEMIS-3570
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-3570
>             Project: ActiveMQ Artemis
>          Issue Type: Improvement
>          Components: Web Console
>    Affects Versions: 2.19.0
>            Reporter: Erwin Dondorp
>            Priority: Minor
>
> In the "Browse Queue" screen for a single message, the headers and properties are shown. Some of these entries have internal values that become much clearer when they are decoded.
> * {{_AMQ_Binding_Type}} (visible on notification queues) with its values "{{local-queue}}", "{{remote-queue}}" and "{{divert}}"; and
> * {{_AMQ_ROUTING_TYPE}} with its values "{{multicast}}" and "{{anycast}}"; and
> * {{_AMQ_ORIG_Routing_Type}} same for expired messag; and
> * {{_AMQ_NotifTimestamp}} (as timestamp); and
> * {{extraProperties._AMQ_ACTUAL_EXPIRY}} (as timestamp; current value is a string, so decoding does not show as timestamp yet); and
> * {{messageAnnotations.x-opt-ACTUAL-EXPIRY}} (as timestamp); and
> * {{properties.creationTime}} (as timestamp).
> Some of these properties are only visible on expired messages (so usually on the {{ExpiryQueue}}).
> There might be more such fields, but these are encountered in my situation.
> Also added verification so that for any field decoding, when the field is not numeric, the decoding is not performed. previously only a check for {{NaN}} existed.
> Note that {{extraProperties._AMQ_ACTUAL_EXPIRY}} is a string and is therefore not actually decoded.
> a PR is in preparation



--
This message was sent by Atlassian Jira
(v8.20.1#820001)