0

我想美化 Erlang 项目的日志记录。目前,它使用 lager 主要记录整数。例如:

lager:error("Failed with: ~p", [1]).

我试图弄清楚是否有一种方法可以指定一个模块:在将参数传递给 lager 之前将调用的函数?此函数会将参数从整数转换为更易于理解的值。此外,它可以让我避免手动更改所有对 lager 的调用并将它们传递给一个函数,例如:

lager:error("Failed with: ~p", beautify([1])).
4

1 回答 1

2

这是一个简单但非常丑陋的解决方案:

-define(beauty_log(Level, Format, Args),
    lager:Level(Format, amodule:beautify(Args))).

test() ->
    ?beauty_log(error, "Failed with: ~p", [1]).
于 2012-09-05T19:18:51.863 回答