Current section
Files
Jump to
Current section
Files
lib/logger.ex
defmodule Uelli.LazyLogger do
defmacro __using__(_) do
quote do
require Logger, as: Elixir.Logger
require Uelli.LazyLogger, as: Logger
end
end
defmacro error(code, metadata \\ []) do
true = Keyword.keyword?(metadata)
quote do
Elixir.Logger.error(fn -> {unquote(code), unquote(metadata)} end)
end
end
defmacro warn(code, metadata \\ []) do
true = Keyword.keyword?(metadata)
quote do
Elixir.Logger.warn(fn -> {unquote(code), unquote(metadata)} end)
end
end
defmacro info(code, metadata \\ []) do
true = Keyword.keyword?(metadata)
quote do
Elixir.Logger.info(fn -> {unquote(code), unquote(metadata)} end)
end
end
defmacro debug(code, metadata \\ []) do
true = Keyword.keyword?(metadata)
quote do
Elixir.Logger.debug(fn -> {unquote(code), unquote(metadata)} end)
end
end
end