Github user tabish121 commented on a diff in the pull request:

    https://github.com/apache/activemq-artemis/pull/1592#discussion_r145232266
  
    --- Diff: 
artemis-protocols/artemis-mqtt-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/mqtt/MQTTUtil.java
 ---
    @@ -149,16 +154,52 @@ public static void logMessage(MQTTSessionState state, 
MqttMessage message, boole
              if (message.fixedHeader() != null) {
                 log.append(message.fixedHeader().messageType().toString());
     
    -            if (message.variableHeader() instanceof 
MqttPublishVariableHeader) {
    -               log.append("(" + ((MqttPublishVariableHeader) 
message.variableHeader()).messageId() + ") " + 
message.fixedHeader().qosLevel());
    -            } else if (message.variableHeader() instanceof 
MqttMessageIdVariableHeader) {
    +            if (message.variableHeader() instanceof 
MqttMessageIdVariableHeader) {
                    log.append("(" + ((MqttMessageIdVariableHeader) 
message.variableHeader()).messageId() + ")");
                 }
     
    -            if (message.fixedHeader().messageType() == 
MqttMessageType.SUBSCRIBE) {
    -               for (MqttTopicSubscription sub : ((MqttSubscribeMessage) 
message).payload().topicSubscriptions()) {
    -                  log.append("\n\t" + sub.topicName() + " : " + 
sub.qualityOfService());
    -               }
    +            switch (message.fixedHeader().messageType()) {
    +               case PUBLISH:
    +                  MqttPublishVariableHeader publishHeader = 
(MqttPublishVariableHeader) message.variableHeader();
    +                  log.append("(" + publishHeader.packetId() + ")")
    +                     .append(" topic=" + publishHeader.topicName())
    +                     .append(", qos=" + message.fixedHeader().qosLevel())
    +                     .append(", retain=" + 
message.fixedHeader().isRetain())
    +                     .append(", dup=" + message.fixedHeader().isDup());
    +                     //.append(" payload=" + 
((MqttPublishMessage)message).payload().toString(StandardCharsets.UTF_8));
    --- End diff --
    
    If that's the case would configuration to turn it on / off be better than 
requiring a complete rebuild in order to use them once uncommented ? 
    
    Sidebar is there a gating mechanism on the logger being used to check if 
it's even enabled, all those append calls for something that might not actually 
be turned on seems less than ideal.  


---

Reply via email to