From 246bce85eca6fb14ec174028f987de99875022e0 Mon Sep 17 00:00:00 2001 From: Kjell Winblad Date: Wed, 15 May 2024 14:49:33 +0200 Subject: [PATCH] fix: make mysql action rendered trace include parameters When doing non-batch inserts with the MySQL action, prepared statements are used. We therefore need to include the parameters to the prepared statement when tracing the rendered templates. Fixes: https://emqx.atlassian.net/browse/EMQX-12335 --- apps/emqx_mysql/src/emqx_mysql.erl | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/apps/emqx_mysql/src/emqx_mysql.erl b/apps/emqx_mysql/src/emqx_mysql.erl index 3ad2fb564..6311d66f2 100644 --- a/apps/emqx_mysql/src/emqx_mysql.erl +++ b/apps/emqx_mysql/src/emqx_mysql.erl @@ -507,7 +507,13 @@ on_sql_query( LogMeta = #{connector => InstId, sql => SQLOrKey, state => State}, ?TRACE("QUERY", "mysql_connector_received", LogMeta), ChannelID = maps:get(channel_id, State, no_channel), - emqx_trace:rendered_action_template(ChannelID, #{sql => SQLOrKey}), + emqx_trace:rendered_action_template( + ChannelID, + #{ + sql_or_key => SQLOrKey, + parameters => Params + } + ), Worker = ecpool:get_client(PoolName), case ecpool_worker:client(Worker) of {ok, Conn} ->