diff --git a/apps/emqx/src/emqx_channel.erl b/apps/emqx/src/emqx_channel.erl index 4b708e15a..1306cf738 100644 --- a/apps/emqx/src/emqx_channel.erl +++ b/apps/emqx/src/emqx_channel.erl @@ -684,7 +684,10 @@ process_publish(Packet = ?PUBLISH_PACKET(QoS, Topic, PacketId), Channel) -> end. packet_to_message(Packet, #channel{ - conninfo = #{proto_ver := ProtoVer}, + conninfo = #{ + peername := PeerName, + proto_ver := ProtoVer + }, clientinfo = #{ protocol := Protocol, @@ -702,6 +705,7 @@ packet_to_message(Packet, #channel{ ClientId, #{ client_attrs => ClientAttrs, + peername => PeerName, proto_ver => ProtoVer, protocol => Protocol, username => Username, diff --git a/apps/emqx_message_transformation/test/emqx_message_transformation_http_api_SUITE.erl b/apps/emqx_message_transformation/test/emqx_message_transformation_http_api_SUITE.erl index 58efa69e0..b3b88ac69 100644 --- a/apps/emqx_message_transformation/test/emqx_message_transformation_http_api_SUITE.erl +++ b/apps/emqx_message_transformation/test/emqx_message_transformation_http_api_SUITE.erl @@ -1095,8 +1095,20 @@ t_multiple_transformations(_Config) -> ?assertMatch( [ - {_, #{data := #{transformation := Name1, event := 'message.transformation_failed'}}}, - {_, #{data := #{transformation := Name2, event := 'message.transformation_failed'}}} + {_, #{ + data := #{ + transformation := Name1, + event := 'message.transformation_failed', + peername := <<_/binary>> + } + }}, + {_, #{ + data := #{ + transformation := Name2, + event := 'message.transformation_failed', + peername := <<_/binary>> + } + }} ], get_traced_failures_from_rule_engine() ), diff --git a/apps/emqx_rule_engine/src/emqx_rule_events.erl b/apps/emqx_rule_engine/src/emqx_rule_events.erl index 482bf8c20..237b4e28a 100644 --- a/apps/emqx_rule_engine/src/emqx_rule_events.erl +++ b/apps/emqx_rule_engine/src/emqx_rule_events.erl @@ -573,7 +573,7 @@ eventmsg_transformation_failed( clientid => ClientId, username => emqx_message:get_header(username, Message, undefined), payload => Payload, - peerhost => ntoa(emqx_message:get_header(peerhost, Message, undefined)), + peername => ntoa(emqx_message:get_header(peername, Message, undefined)), topic => Topic, qos => QoS, flags => Flags, @@ -1064,7 +1064,7 @@ columns_with_exam('message.transformation_failed') -> {<<"clientid">>, <<"c_emqx">>}, {<<"username">>, <<"u_emqx">>}, {<<"payload">>, <<"{\"msg\": \"hello\"}">>}, - {<<"peerhost">>, <<"192.168.0.10">>}, + {<<"peername">>, <<"192.168.0.10:56431">>}, {<<"topic">>, <<"t/a">>}, {<<"qos">>, 1}, {<<"flags">>, #{}},