diff --git a/apps/emqx_rule_engine/src/emqx_rule_engine_api.erl b/apps/emqx_rule_engine/src/emqx_rule_engine_api.erl index a78b671ff..b1dbd72d9 100644 --- a/apps/emqx_rule_engine/src/emqx_rule_engine_api.erl +++ b/apps/emqx_rule_engine/src/emqx_rule_engine_api.erl @@ -25,6 +25,8 @@ -import(hoconsc, [mk/2, ref/2, array/1]). +-export([printable_function_name/2]). + %% Swagger specs from hocon schema -export([api_spec/0, paths/0, schema/1, namespace/0]). diff --git a/apps/emqx_rule_engine/src/emqx_rule_engine_cli.erl b/apps/emqx_rule_engine/src/emqx_rule_engine_cli.erl index a198d0831..753b5a956 100644 --- a/apps/emqx_rule_engine/src/emqx_rule_engine_cli.erl +++ b/apps/emqx_rule_engine/src/emqx_rule_engine_cli.erl @@ -84,10 +84,17 @@ pretty_print_rule(ID) -> end. %% erlfmt-ignore -format_action(#{func := Func, args := Args}) -> - io_lib:format("Function:\n ~p\n" - "Args:\n ~p\n" - ,[Func, maps:without([preprocessed_tmpl], Args)] +format_action(#{mod := Mod, func := Func, args := Args}) -> + Name = emqx_rule_engine_api:printable_function_name(Mod, Func), + io_lib:format("- Name: ~s\n" + " Type: function\n" + " Args: ~p\n" + ,[Name, maps:without([preprocessed_tmpl], Args)] + ); +format_action(BridgeChannelId) when is_binary(BridgeChannelId) -> + io_lib:format("- Name: ~s\n" + " Type: data-bridge\n" + ,[BridgeChannelId] ). left_pad(Str) ->