File.Only.Logger (File-Only Logger v0.2.38)
View SourceA simple logger that writes messages to log files only (not to the console).
Summary
Functions
Either aliases File.Only.Logger
(this module) and requires the alias or
imports File.Only.Logger
. In the latter case, you could instead simply
import File.Only.Logger
.
Returns the application for the current process or module.
Injects function error/2
into the caller's module.
Returns a formatted heredoc to trace a message from the given env
(Macro.Env
) and module
.
Returns string "<module>.<function>/<arity>" e.g. "My.Math.sqrt/1" from the
given env
(Macro.Env
).
Injects function info/2
into the caller's module.
Will prefix string
with "\n<padding>" if string
is longer than
<line_length>
- offset
where <padding>
and <line_length>
are
respectively the :padding
and :line_length
options.
Returns the current module as a string.
Functions
Either aliases File.Only.Logger
(this module) and requires the alias or
imports File.Only.Logger
. In the latter case, you could instead simply
import File.Only.Logger
.
Examples
use File.Only.Logger, alias: FileLogger
use File.Only.Logger
import File.Only.Logger
Returns the application for the current process or module.
Returns :undefined
if the current process does not belong to any
application or the current module is not listed in any application spec.
Examples
use File.Only.Logger
error :exit, {reason} do
"""
\n'exit' caught...
• Reason: #{inspect(reason)}
• App: #{app()}\
"""
end
Injects function error/2
into the caller's module.
The function will execute the do_block
and write its result to the
configured error log file.
Examples
use File.Only.Logger
error :exit, {reason} do
"""
\n'exit' caught...
Reason => #{inspect(reason)}\
"""
end
Returns a formatted heredoc to trace a message from the given env
(Macro.Env
).
Examples
use File.Only.Logger
error :exit, {reason, env} do
"""
\n'exit' caught...
• Reason: #{inspect(reason)}
#{from(env)}\
"""
end
Returns a formatted heredoc to trace a message from the given env
(Macro.Env
) and module
.
Examples
use File.Only.Logger
error :exit, {reason, env} do
"""
\n'exit' caught...
• Reason: #{inspect(reason)}
#{from(env, __MODULE__)}\
"""
end
Returns string "<module>.<function>/<arity>" e.g. "My.Math.sqrt/1" from the
given env
(Macro.Env
).
Examples
use File.Only.Logger
error :exit, {reason, env} do
"""
\n'exit' caught...
• Reason: #{inspect(reason)}
• Function: #{fun(env)}\
"""
end
Injects function info/2
into the caller's module.
The function will execute the do_block
and write its result to the
configured info log file.
Examples
use File.Only.Logger
info :game_state, {player, game} do
"""
\nNote that #{player.name}...
• Has joined game #{inspect(game.name)}
• Game state: #{inspect(game.state)}\
"""
end
Will prefix string
with "\n<padding>" if string
is longer than
<line_length>
- offset
where <padding>
and <line_length>
are
respectively the :padding
and :line_length
options.
Options
:line_length
(positive integer) - the preferred line length of messages sent to the log files. Defaults to 80.:padding
(string) - Filler inserted after the line break. Defaults to "\s\s".
Examples
use File.Only.Logger
error :exit, {reason, env} do
"""
\n'exit' caught...
• Reason: #{inspect(reason)}
• Function: #{fun(env) |> maybe_break(12)}\
"""
end
Returns the current module as a string.
Examples
use File.Only.Logger
error :exit, {reason} do
"""
\n'exit' caught...
• Reason: #{inspect(reason)}
• Module: #{mod()}\
"""
end