aboutsummaryrefslogtreecommitdiffstats
path: root/lib/kernel/doc
diff options
context:
space:
mode:
authorSiri Hansen <[email protected]>2018-05-21 17:45:21 +0200
committerSiri Hansen <[email protected]>2018-05-23 11:11:57 +0200
commitf38163aa64547e09f99e362edefeda713e06ddb7 (patch)
treeb23ea05501d4410b1a75812b98ae455b3623d7a7 /lib/kernel/doc
parentca1bf7a9d915a973203aa046bb9f921c11681ee0 (diff)
downloadotp-f38163aa64547e09f99e362edefeda713e06ddb7.tar.gz
otp-f38163aa64547e09f99e362edefeda713e06ddb7.tar.bz2
otp-f38163aa64547e09f99e362edefeda713e06ddb7.zip
Remove HandlerId from handler callback functions and add it to Config
Diffstat (limited to 'lib/kernel/doc')
-rw-r--r--lib/kernel/doc/src/logger.xml23
-rw-r--r--lib/kernel/doc/src/logger_chapter.xml26
2 files changed, 26 insertions, 23 deletions
diff --git a/lib/kernel/doc/src/logger.xml b/lib/kernel/doc/src/logger.xml
index 6e50473fa8..d6576db6f3 100644
--- a/lib/kernel/doc/src/logger.xml
+++ b/lib/kernel/doc/src/logger.xml
@@ -881,11 +881,9 @@ logger:set_process_metadata(maps:merge(logger:get_process_metadata(),Meta)).
<funcs>
<func>
- <name>HModule:adding_handler(HandlerId,Config1) -> {ok,Config2} | {error,Reason}</name>
+ <name>HModule:adding_handler(Config1) -> {ok,Config2} | {error,Reason}</name>
<fsummary>An instance of this handler is about to be added.</fsummary>
<type>
- <v>HandlerId =
- <seealso marker="#type-handler_id">handler_id()</seealso></v>
<v>Config1 = Config2 =
<seealso marker="#type-config">config()</seealso></v>
<v>Reason = term()</v>
@@ -895,6 +893,8 @@ logger:set_process_metadata(maps:merge(logger:get_process_metadata(),Meta)).
<p>The function is called when an new handler is about to be
added, and the purpose is to verify the configuration and
initiate all resources needed by the handler.</p>
+ <p>The handler identity is associated with the <c>id</c> key
+ in <c>Config1</c>.</p>
<p>If everything succeeds, the callback function can add
possible default values or internal state values to the
configuration, and return the adjusted map
@@ -905,11 +905,9 @@ logger:set_process_metadata(maps:merge(logger:get_process_metadata(),Meta)).
</func>
<func>
- <name>HModule:changing_config(HandlerId,Config1,Config2) -> {ok,Config3} | {error,Reason}</name>
+ <name>HModule:changing_config(Config1,Config2) -> {ok,Config3} | {error,Reason}</name>
<fsummary>The configuration for this handler is about to change.</fsummary>
<type>
- <v>HandlerId =
- <seealso marker="#type-handler_id">handler_id()</seealso></v>
<v>Config1 = Config2 = Config3 =
<seealso marker="#type-config">config()</seealso></v>
<v>Reason = term()</v>
@@ -921,6 +919,8 @@ logger:set_process_metadata(maps:merge(logger:get_process_metadata(),Meta)).
the new configuration.</p>
<p><c>Config1</c> is the existing configuration
and <c>Config2</c> is the new configuration.</p>
+ <p>The handler identity is associated with the <c>id</c> key
+ in <c>Config1</c>.</p>
<p>If everything succeeds, the callback function must return a
possibly adjusted configuration in <c>{ok,Config3}</c>.</p>
<p>If the configuration is faulty, the callback function must
@@ -942,6 +942,8 @@ logger:set_process_metadata(maps:merge(logger:get_process_metadata(),Meta)).
<p>The function is called when all global filters and all
handler filters for the handler in question have passed for
the given log event.</p>
+ <p>The handler identity is associated with the <c>id</c> key
+ in <c>Config</c>.</p>
<p>The handler must log the event.</p>
<p>The return value from this function is ignored by
Logger.</p>
@@ -949,11 +951,9 @@ logger:set_process_metadata(maps:merge(logger:get_process_metadata(),Meta)).
</func>
<func>
- <name>HModule:removing_handler(HandlerId,Config) -> ok</name>
+ <name>HModule:removing_handler(Config) -> ok</name>
<fsummary>The given handler is about to be removed.</fsummary>
<type>
- <v>HandlerId =
- <seealso marker="#type-handler_id">handler_id()</seealso></v>
<v>Config =
<seealso marker="#type-config">config()</seealso></v>
</type>
@@ -961,7 +961,10 @@ logger:set_process_metadata(maps:merge(logger:get_process_metadata(),Meta)).
<p>This callback function is optional.</p>
<p>The function is called when a handler is about to be
removed, and the purpose is to release all resources used by
- the handler. The return value is ignored by Logger.</p>
+ the handler.</p>
+ <p>The handler identity is associated with the <c>id</c> key
+ in <c>Config</c>.</p>
+ <p>The return value is ignored by Logger.</p>
</desc>
</func>
diff --git a/lib/kernel/doc/src/logger_chapter.xml b/lib/kernel/doc/src/logger_chapter.xml
index 1195808160..78c595d521 100644
--- a/lib/kernel/doc/src/logger_chapter.xml
+++ b/lib/kernel/doc/src/logger_chapter.xml
@@ -268,7 +268,7 @@
<p>In addition to the mandatory callback function <c>log/2</c>, a
handler module can export the optional callback
- functions <c>adding_handler/2</c>, <c>changing_config/3</c>
+ functions <c>adding_handler/1</c>, <c>changing_config/2</c>
and <c>removing_handler/1</c>. See
section <seealso marker="logger#handler_callback_functions">Handler
Callback Functions</seealso> in the logger(3) manual for more
@@ -738,22 +738,22 @@ ok</pre>
<code>log(logger:log(),logger:config()) ->ok</code>
<p>It may also implement the following callbacks:</p>
<code>
-adding_handler(logger:handler_id(),logger:config()) -> {ok,logger:config()} | {error,term()}
-removing_handler(logger:handler_id(),logger:config()) -> ok
-changing_config(logger:handler_id(),logger:config(),logger:config()) -> {ok,logger:config()} | {error,term()}
+adding_handler(logger:config()) -> {ok,logger:config()} | {error,term()}
+removing_handler(logger:config()) -> ok
+changing_config(logger:config(),logger:config()) -> {ok,logger:config()} | {error,term()}
</code>
<p>When <c>logger:add_handler(Id,Module,Config)</c> is called, Logger
- will first call <c>HModule:adding_handler(Id,Config)</c>, and if it
+ will first call <c>HModule:adding_handler(Config)</c>, and if it
returns <c>{ok,NewConfig}</c>, <c>NewConfig</c> is written to the
configuration database. After this, the handler may receive log
events as calls to <c>HModule:log/2</c>.</p>
<p>A handler can be removed by calling
<c>logger:remove_handler(Id)</c>. Logger will call
- <c>HModule:removing_handler(Id,Config)</c>, and then remove the
+ <c>HModule:removing_handler(Config)</c>, and then remove the
handler's configuration from the configuration database.</p>
<p>When <c>logger:set_handler_config/2,3</c>
or <c>logger:update_handler_config/2</c> are called, Logger
- calls <c>HModule:changing_config(Id,OldConfig,NewConfig)</c>. If
+ calls <c>HModule:changing_config(OldConfig,NewConfig)</c>. If
this function returns <c>{ok,NewConfig}</c>, <c>NewConfig</c> is
written to the configuration database.</p>
@@ -771,14 +771,14 @@ log(Log,#{formatter:={FModule,FConfig}) ->
this:</p>
<code>
-module(myhandler).
--export([adding_handler/2, removing_handler/2, log/2]).
+-export([adding_handler/1, removing_handler/1, log/2]).
-export([init/1, handle_call/3, handle_cast/2, terminate/2]).
-adding_handler(Id,Config) ->
+adding_handler(Config) ->
{ok,Fd} = file:open(File,[append,{encoding,utf8}]),
{ok,Config#{myhandler_fd=>Fd}}.
-removing_handler(Id,#{myhandler_fd:=Fd}) ->
+removing_handler(#{myhandler_fd:=Fd}) ->
_ = file:close(Fd),
ok.
@@ -800,14 +800,14 @@ log(Log,#{myhandler_fd:=Fd,formatter:={FModule,FConfig}}) ->
single process.</p>
<code>
-module(myhandler).
--export([adding_handler/2, removing_handler/2, log/2]).
+-export([adding_handler/1, removing_handler/1, log/2]).
-export([init/1, handle_call/3, handle_cast/2, terminate/2]).
-adding_handler(Id,Config) ->
+adding_handler(Config) ->
{ok,Pid} = gen_server:start(?MODULE,Config),
{ok,Config#{myhandler_pid=>Pid}}.
-removing_handler(Id,#{myhandler_pid:=Pid}) ->
+removing_handler(#{myhandler_pid:=Pid}) ->
gen_server:stop(Pid).
log(Log,#{myhandler_pid:=Pid} = Config) ->