From: Evgeniy Khramtsov Date: Wed, 13 Jan 2016 09:59:00 +0000 (+0300) Subject: Log failed SQL requests X-Git-Tag: 16.02~119 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=fd3e3a99c5647b7f3bd2e5b682da636db21fc9bf;p=ejabberd Log failed SQL requests --- diff --git a/src/ejabberd_odbc.erl b/src/ejabberd_odbc.erl index 123f0d558..ace0cda05 100644 --- a/src/ejabberd_odbc.erl +++ b/src/ejabberd_odbc.erl @@ -125,7 +125,7 @@ start_link(Host, StartInterval) -> -spec sql_query(binary(), sql_query()) -> sql_query_result(). sql_query(Host, Query) -> - sql_call(Host, {sql_query, Query}). + check_error(sql_call(Host, {sql_query, Query}), Query). %% SQL transaction based on a list of queries %% This function automatically @@ -800,6 +800,12 @@ fsm_limit_opts() -> _ -> [] end. +check_error({error, Why} = Err, Query) -> + ?ERROR_MSG("SQL query '~s' failed: ~p", [Query, Why]), + Err; +check_error(Result, _Query) -> + Result. + opt_type(max_fsm_queue) -> fun (N) when is_integer(N), N > 0 -> N end; opt_type(odbc_database) -> fun iolist_to_binary/1;