From b61a52dbc17f42767aa817044e5ffdd524c4fd7c Mon Sep 17 00:00:00 2001 From: Sijie Guo Date: Wed, 4 Mar 2020 17:20:36 -0800 Subject: [PATCH] [pulsar-proxy] fix logging for published messages (#6474) ### Motivation Proxy-logging fetches incorrect producerId for `Send` command because of that logging always gets producerId as 0 and it fetches invalid topic name for the logging. ### Modification Fixed topic logging by fetching correct producerId for `Send` command. (cherry picked from commit 65cc30317e46e05ac88866944e2a7e9a68c8afbb) --- .../java/org/apache/pulsar/proxy/server/ParserProxyHandler.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pulsar-proxy/src/main/java/org/apache/pulsar/proxy/server/ParserProxyHandler.java b/pulsar-proxy/src/main/java/org/apache/pulsar/proxy/server/ParserProxyHandler.java index cd04b8e62012e..fc455f7778d9f 100644 --- a/pulsar-proxy/src/main/java/org/apache/pulsar/proxy/server/ParserProxyHandler.java +++ b/pulsar-proxy/src/main/java/org/apache/pulsar/proxy/server/ParserProxyHandler.java @@ -116,7 +116,7 @@ public void channelRead(ChannelHandlerContext ctx, Object msg) { logging(ctx.channel() , cmd.getType() , "", null); break; } - topicName = TopicName.get(ParserProxyHandler.producerHashMap.get(String.valueOf(cmd.getProducer().getProducerId()) + "," + String.valueOf(ctx.channel().id()))); + topicName = TopicName.get(ParserProxyHandler.producerHashMap.get(String.valueOf(cmd.getSend().getProducerId()) + "," + String.valueOf(ctx.channel().id()))); MessageParser.parseMessage(topicName, -1L, -1L,buffer,(message) -> { messages.add(message);