Explorar o código

Merge pull request #7727 from HJianBo/text-improve

chore: improve error message
JianBo He %!s(int64=3) %!d(string=hai) anos
pai
achega
92e010b652

+ 5 - 7
apps/emqx_modules/src/emqx_topic_metrics.erl

@@ -309,6 +309,10 @@ do_register(Topic, Speeds) ->
             {error, already_existed};
         false ->
             case {number_of_registered_topics() < ?MAX_TOPICS, emqx_topic:wildcard(Topic)} of
+                {_, true} ->
+                    {error, bad_topic};
+                {false, _} ->
+                    {error, quota_exceeded};
                 {true, false} ->
                     CreateTime = emqx_rule_funcs:now_rfc3339(),
                     CRef = counters:new(counters_size(), [write_concurrency]),
@@ -325,13 +329,7 @@ do_register(Topic, Speeds) ->
                         Speeds,
                         ?TOPIC_METRICS
                     ),
-                    {ok, NSpeeds};
-                {true, true} ->
-                    {error, bad_topic};
-                {false, false} ->
-                    {error, quota_exceeded};
-                {false, true} ->
-                    {error, {quota_exceeded, bad_topic}}
+                    {ok, NSpeeds}
             end
     end.
 

+ 1 - 9
apps/emqx_modules/src/emqx_topic_metrics_api.erl

@@ -572,16 +572,8 @@ reason2httpresp(quota_exceeded) ->
     ),
     {409, #{code => ?EXCEED_LIMIT, message => Msg}};
 reason2httpresp(bad_topic) ->
-    Msg = <<"Bad Topic, topic cannot have wildcard">>,
+    Msg = <<"Wildcard topic is not supported">>,
     {400, #{code => ?BAD_TOPIC, message => Msg}};
-reason2httpresp({quota_exceeded, bad_topic}) ->
-    Msg = list_to_binary(
-        io_lib:format(
-            "Max topic metrics count is ~p, and topic cannot have wildcard",
-            [emqx_topic_metrics:max_limit()]
-        )
-    ),
-    {400, #{code => ?BAD_REQUEST, message => Msg}};
 reason2httpresp(already_existed) ->
     Msg = <<"Topic already registered">>,
     {400, #{code => ?BAD_TOPIC, message => Msg}};