diff options
author | Jason Smith (work) <jhs@iriscouch.com> | 2013-02-11 05:23:32 +0000 |
---|---|---|
committer | Jason Smith (work) <jhs@iriscouch.com> | 2013-02-11 05:29:25 +0000 |
commit | a5bc55784ca58fef31f7e5e3fccbd28bf5b89659 (patch) | |
tree | fd64e947fc7b738b3f2fa76cee6c12bc6ada7911 | |
parent | 87670bfaa7fc77aeafcfbd71fd5e693c3e48ea0e (diff) | |
download | couchdb-a5bc55784ca58fef31f7e5e3fccbd28bf5b89659.tar.gz |
Refactor to a utility function: the code to compute the query server logfile
-rw-r--r-- | src/couchdb/couch_log.erl | 32 |
1 files changed, 19 insertions, 13 deletions
diff --git a/src/couchdb/couch_log.erl b/src/couchdb/couch_log.erl index 937cf4b3f..c30b67a9e 100644 --- a/src/couchdb/couch_log.erl +++ b/src/couchdb/couch_log.erl @@ -111,19 +111,7 @@ init([]) -> ets:insert(?MODULE, {Module, ModuleLevelInteger}) end, LevelByModule), - QuerySrvFile = case couch_config:get("log", "query_server_file", Filename) of - Filename -> - Filename; - OtherFilename -> - case filename:pathtype(OtherFilename) of - relative -> - LogDir = filename:dirname(Filename), - filename:join(LogDir, OtherFilename); - _ -> - OtherFilename - end - end, - + QuerySrvFile = get_abs_query_server_file(), case file:open(Filename, [append]) of {ok, Fd} -> case QuerySrvFile of @@ -265,6 +253,24 @@ get_query_server_messages(Pid, Level, Port, Message) -> {ConsoleMsg, FileMsg, QueryFileMsg}. +% Get the absolute path to the configured query server file. If it looks like +% a relative path, then it is relative to the main log file's directory. +get_abs_query_server_file() -> + LogFile = couch_config:get("log", "file", "couchdb.log"), + case couch_config:get("log", "query_server_file", LogFile) of + LogFile -> + LogFile; + OtherFile -> + case filename:pathtype(OtherFile) of + relative -> + LogDir = filename:dirname(LogFile), + filename:join(LogDir, OtherFile); + _ -> + OtherFile + end + end. + + % Read Bytes bytes from the end of log file, jumping Offset bytes towards % the beginning of the file first. % |