Просмотр исходного кода

fix(http action): use correct return value for channel health check

Fixes https://emqx.atlassian.net/browse/EMQX-12622
Thales Macedo Garitezi 1 год назад
Родитель
Сommit
72664780df

+ 1 - 1
apps/emqx_bridge_http/src/emqx_bridge_http.app.src

@@ -1,6 +1,6 @@
 {application, emqx_bridge_http, [
     {description, "EMQX HTTP Bridge and Connector Application"},
-    {vsn, "0.3.2"},
+    {vsn, "0.3.3"},
     {registered, []},
     {applications, [kernel, stdlib, emqx_resource, ehttpc]},
     {env, [

+ 8 - 2
apps/emqx_bridge_http/src/emqx_bridge_http_connector.erl

@@ -640,8 +640,14 @@ on_get_channel_status(
     _ChannelId,
     State
 ) ->
-    %% XXX: Reuse the connector status
-    on_get_status(InstId, State).
+    %% N.B.: `on_get_channel_status' expects a different return value than
+    %% `on_get_status'.
+    case on_get_status(InstId, State, fun default_health_checker/2) of
+        {Status, _State, Reason} ->
+            {Status, Reason};
+        Res ->
+            Res
+    end.
 
 on_format_query_result({ok, Status, Headers, Body}) ->
     #{