summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexey Shchepin <alexey@process-one.net>2003-10-27 10:13:05 +0000
committerAlexey Shchepin <alexey@process-one.net>2003-10-27 10:13:05 +0000
commitf4d2844be6e0653023d8580ba5c5b3d8f5725eda (patch)
tree9a6f7eca4dd530e624519f87360cd96056937967
parent* src/mod_offline.erl: Added function remove_old_messages/1 (diff)
* src/ejabberd_logger_h.erl: Added support for log rotation
SVN Revision: 160
-rw-r--r--ChangeLog4
-rw-r--r--src/ejabberd_logger_h.erl8
2 files changed, 12 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 2f72cee3..ffd0b2c8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2003-10-27 Alexey Shchepin <alexey@sevcom.net>
+
+ * src/ejabberd_logger_h.erl: Added support for log rotation
+
2003-10-24 Alexey Shchepin <alexey@sevcom.net>
* src/mod_offline.erl: Added function remove_old_messages/1
diff --git a/src/ejabberd_logger_h.erl b/src/ejabberd_logger_h.erl
index 213f8fed..8f35a68c 100644
--- a/src/ejabberd_logger_h.erl
+++ b/src/ejabberd_logger_h.erl
@@ -64,6 +64,14 @@ handle_call(_Request, State) ->
%%----------------------------------------------------------------------
handle_info({'EXIT', _Fd, _Reason}, _State) ->
remove_handler;
+handle_info({emulator, GL, reopen}, State) ->
+ file:close(State#state.fd),
+ case file:open(State#state.file, [append]) of
+ {ok, Fd} ->
+ {ok, State#state{fd = Fd}};
+ Error ->
+ Error
+ end;
handle_info({emulator, GL, Chars}, State) ->
write_event(State#state.fd, {erlang:localtime(), {emulator, GL, Chars}}),
{ok, State};