Membrane Core v0.2.2 Membrane.Log.Logger.Base behaviour View Source
This is a base module used by all logger implementations.
Link to this section Summary
Callbacks
Callback invoked when logger is initialized, right after new process is spawned
Callback invoked when new log message is received
Callback invoked when logger is shutting down just before process is exiting. It will receive the logger state
Link to this section Callbacks
handle_init(arg0)
View Source
handle_init(Membrane.Log.Logger.logger_options_t()) ::
{:ok, any()} | {:error, any()}
handle_init(Membrane.Log.Logger.logger_options_t()) :: {:ok, any()} | {:error, any()}
Callback invoked when logger is initialized, right after new process is spawned.
On success it should return {:ok, initial_logger_state}
.
handle_log(arg0, arg1, arg2, list, any)
View Source
handle_log(
Membrane.Log.Logger.msg_level_t(),
Membrane.Log.Logger.message_t(),
String.t(),
[Membrane.Log.Logger.tag_t()],
any()
) :: {:ok, any()} | {:error, any(), any()}
handle_log( Membrane.Log.Logger.msg_level_t(), Membrane.Log.Logger.message_t(), String.t(), [Membrane.Log.Logger.tag_t()], any() ) :: {:ok, any()} | {:error, any(), any()}
Callback invoked when new log message is received.
Callback delivers 5 arguments:
- atom containing log level
- message - in IO list format
- time
- tags (list of atoms, e.g. module name)
- internal logger state
On success, it returns {:ok, new_state}
. it will just update logger's state
to the new state.
If it returns {:error, reason, new_state}
it indicates that something
went wrong, and logger was unable to handle log. State will be updated to
the new state.
handle_shutdown(any) View Source
Callback invoked when logger is shutting down just before process is exiting. It will receive the logger state.
Return value is ignored.