Quellcode durchsuchen

add a pterm formatter

pull/529/head
Evan Vigil-McClanahan vor 4 Jahren
Ursprung
Commit
efaea270e1
1 geänderte Dateien mit 31 neuen und 0 gelöschten Zeilen
  1. +31
    -0
      src/lager_default_formatter.erl

+ 31
- 0
src/lager_default_formatter.erl Datei anzeigen

@ -98,6 +98,10 @@ output(metadata, Msg) ->
output({metadata, IntSep, FieldSep}, Msg) ->
MD = lists:keysort(1, lager_msg:metadata(Msg)),
string:join([io_lib:format("~s~s~p", [K, IntSep, V]) || {K, V} <- MD], FieldSep);
output({pterm, Key}, Msg) ->
output({pterm, Key, ""}, Msg);
output({pterm, Key, Default}, _Msg) ->
make_printable(persistent_term:get(Key, Default));
output(Prop,Msg) when is_atom(Prop) ->
Metadata = lager_msg:metadata(Msg),
make_printable(get_metadata(Prop,Metadata,<<"Undefined">>));
@ -147,6 +151,10 @@ output(metadata, Msg, _Width) ->
output({metadata, IntSep, FieldSep}, Msg, _Width) ->
MD = lists:keysort(1, lager_msg:metadata(Msg)),
[string:join([io_lib:format("~s~s~p", [K, IntSep, V]) || {K, V} <- MD], FieldSep)];
output({pterm, Key}, Msg, Width) ->
output({pterm, Key, ""}, Msg, Width);
output({pterm, Key, Default}, _Msg, _Width) ->
make_printable(persistent_term:get(Key, Default));
output(Prop, Msg, Width) when is_atom(Prop) ->
Metadata = lager_msg:metadata(Msg),
@ -505,6 +513,29 @@ basic_test_() ->
[]),
[severity_upper, " Simplist Format"])))
},
{"pterm presence test",
?_assertEqual(<<"Pterm is: something">>,
begin
persistent_term:put(thing, something),
Ret = iolist_to_binary(format(lager_msg:new("Message",
Now,
emergency,
[{pid, self()}],
[]),
["Pterm is: ", {pterm, thing}])),
persistent_term:erase(thing),
Ret
end)
},
{"pterm absence test",
?_assertEqual(<<"Pterm is: nothing">>,
iolist_to_binary(format(lager_msg:new("Message",
Now,
emergency,
[{pid, self()}],
[]),
["Pterm is: ", {pterm, thing, "nothing"}])))
},
{"node formatting basic",
begin
[N, "foo"] = format(lager_msg:new("Message",

Laden…
Abbrechen
Speichern