Membrane.Log.Logger.Base behaviour (Membrane Core v0.7.0) 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
Specs
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}
.
Specs
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.
Specs
Callback invoked when logger is shutting down just before process is exiting. It will receive the logger state.
Return value is ignored.