Moved logfile paths to environment.
authorStanislaw Klekot <dozzie@jarowit.net>
Wed, 17 Sep 2014 19:49:38 +0000 (21:49 +0200)
committerStanislaw Klekot <dozzie@jarowit.net>
Wed, 17 Sep 2014 19:49:38 +0000 (21:49 +0200)
src/haircut.app.src
src/haircut_log_activity.erl
src/haircut_log_operational.erl

index 68bcdc2..a9a61e1 100644 (file)
@@ -17,7 +17,9 @@
     {port, 6667},
     {channels, []},
     {nick, user}, % user | string()
-    {user, {env, "haircut IRC bot"}} % {User :: env | string(), FullName :: string()}
+    {user, {env, "haircut IRC bot"}}, % {User :: env | string(), FullName :: string()}
+    {op_log, syslog},    % none | syslog | string()
+    {activity_log, none} % none | string()
   ]}
 ]}.
 % vim:ft=erlang
index 55b6323..32a9090 100644 (file)
 %%% public API
 
 start_link() ->
-  % TODO: unhardcode this
-  File = "run/activity.log",
   case gen_event:start_link({local, ?MODULE}) of
     {ok, Pid} ->
-      gen_event:add_handler(Pid, haircut_file_term_h, File),
+      {ok, LogSink} = application:get_env(activity_log),
+      add_handlers(Pid, LogSink),
       {ok, Pid};
     {error, Reason} ->
       {error, Reason}
   end.
 
 %%%---------------------------------------------------------------------------
+
+add_handlers(_Pid, none = _LogSink) ->
+  ok;
+add_handlers(Pid, LogSink) when is_list(LogSink) ->
+  gen_event:add_handler(Pid, haircut_file_term_h, LogSink).
+
+%%%---------------------------------------------------------------------------
 %%% vim:ft=erlang:foldmethod=marker
index 68493f6..20aee50 100644 (file)
 %%% public API
 
 start_link() ->
-  % TODO: unhardcode this
-  File = "run/operational.log",
   case gen_event:start_link({local, ?MODULE}) of
     {ok, Pid} ->
-      gen_event:add_handler(Pid, haircut_file_term_h, File),
+      {ok, LogSink} = application:get_env(op_log),
+      add_handlers(Pid, LogSink),
       {ok, Pid};
     {error, Reason} ->
       {error, Reason}
   end.
 
 %%%---------------------------------------------------------------------------
+
+add_handlers(_Pid, none = _LogSink) ->
+  ok;
+add_handlers(_Pid, syslog = _LogSink) ->
+  'TODO';
+add_handlers(Pid, LogSink) when is_list(LogSink) ->
+  gen_event:add_handler(Pid, haircut_file_term_h, LogSink).
+
+%%%---------------------------------------------------------------------------
 %%% vim:ft=erlang:foldmethod=marker