From 0cc9d8f8a09830aad67cce3ae6a44633d98df6f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Sautret?= Date: Thu, 6 Aug 2009 10:56:55 +0000 Subject: [PATCH] * src/ejabberd_loglevel.erl: add get/0 API function that returns current log level (EJAB-1004). SVN Revision: 2426 --- src/ejabberd_loglevel.erl | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/src/ejabberd_loglevel.erl b/src/ejabberd_loglevel.erl index dcb23d8a5..775164fe5 100644 --- a/src/ejabberd_loglevel.erl +++ b/src/ejabberd_loglevel.erl @@ -31,7 +31,7 @@ -module(ejabberd_loglevel). -author('mickael.remond@process-one.net'). --export([set/1]). +-export([set/1, get/0]). -include("ejabberd.hrl"). @@ -46,6 +46,14 @@ ,{5, debug, "Debug"} ]). +get() -> + Level = ejabberd_logger:get(), + case lists:keysearch(Level, 1, ?LOG_LEVELS) of + {value, Result} -> Result; + _ -> erlang:error({no_such_loglevel, Level}) + end. + + set(LogLevel) when is_atom(LogLevel) -> set(level_to_integer(LogLevel)); set(Loglevel) when is_integer(Loglevel) -> @@ -67,7 +75,7 @@ level_to_integer(Level) -> %% -------------------------------------------------------------- %% Code of the ejabberd logger, dynamically compiled and loaded %% This allows to dynamically change log level while keeping a -%% very efficient code. +%% very efficient code. ejabberd_logger_src(Loglevel) -> L = integer_to_list(Loglevel), "-module(ejabberd_logger). @@ -77,7 +85,10 @@ ejabberd_logger_src(Loglevel) -> info_msg/4, warning_msg/4, error_msg/4, - critical_msg/4]). + critical_msg/4, + get/0]). + + get() -> "++ L ++". %% Helper functions debug_msg(Module, Line, Format, Args) when " ++ L ++ " >= 5 ->