View Source File.Only.Logger (File-Only Logger v0.2.28)
A 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.
Returns the current library name.
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
Returns the current library name.
Examples
use File.Only.Logger
error :exit, {reason} do
"""
\n'exit' caught...
• Reason: #{inspect(reason)}
• Library: #{lib()}\
"""
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