Github user jbertram commented on a diff in the pull request:
https://github.com/apache/activemq-artemis/pull/1592#discussion_r145234463
--- 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 --
The method starts with:
if (logger.isTraceEnabled())
So none of this will be executed if TRACE (or equivalent) isn't turned on
in the logging configuration.
---