diff --git a/apps/emqx_connector/src/emqx_connector_mongo.erl b/apps/emqx_connector/src/emqx_connector_mongo.erl index c2d992cb6..9e4a5163b 100644 --- a/apps/emqx_connector/src/emqx_connector_mongo.erl +++ b/apps/emqx_connector/src/emqx_connector_mongo.erl @@ -169,8 +169,13 @@ health_check(PoolName) -> case ecpool_worker:client(Worker) of {ok, Conn} -> %% we don't care if this returns something or not, we just to test the connection - Res = mongo_api:find_one(Conn, <<"foo">>, {}, #{}), - Res == undefined orelse is_map(Res); + try mongo_api:find_one(Conn, <<"foo">>, {}, #{}) of + undefined -> true; + Res when is_map(Res) -> true; + _ -> false + catch + _Class:_Error -> false + end; _ -> false end end || {_WorkerName, Worker} <- ecpool:workers(PoolName)],