fix(trace formatter): remove record field to enable rolling upgrade
This commit is contained in:
parent
09b414f368
commit
c163956d08
|
@ -30,10 +30,9 @@
|
||||||
| '_',
|
| '_',
|
||||||
enable = true :: boolean() | '_',
|
enable = true :: boolean() | '_',
|
||||||
payload_encode = text :: hex | text | hidden | '_',
|
payload_encode = text :: hex | text | hidden | '_',
|
||||||
extra = #{} :: map() | '_',
|
extra = #{formatter => text} :: #{formatter => text | json} | '_',
|
||||||
start_at :: integer() | undefined | '_',
|
start_at :: integer() | undefined | '_',
|
||||||
end_at :: integer() | undefined | '_',
|
end_at :: integer() | undefined | '_'
|
||||||
formatter = text :: text | json | '_'
|
|
||||||
}).
|
}).
|
||||||
|
|
||||||
-define(SHARD, ?COMMON_SHARD).
|
-define(SHARD, ?COMMON_SHARD).
|
||||||
|
|
|
@ -254,7 +254,10 @@ format(Traces) ->
|
||||||
lists:map(
|
lists:map(
|
||||||
fun(Trace0 = #?TRACE{}) ->
|
fun(Trace0 = #?TRACE{}) ->
|
||||||
[_ | Values] = tuple_to_list(Trace0),
|
[_ | Values] = tuple_to_list(Trace0),
|
||||||
maps:from_list(lists:zip(Fields, Values))
|
Map0 = maps:from_list(lists:zip(Fields, Values)),
|
||||||
|
Extra = maps:get(extra, Map0, #{}),
|
||||||
|
Formatter = maps:get(formatter, Extra, text),
|
||||||
|
Map0#{formatter => Formatter}
|
||||||
end,
|
end,
|
||||||
Traces
|
Traces
|
||||||
).
|
).
|
||||||
|
@ -401,8 +404,9 @@ start_trace(Trace) ->
|
||||||
filter = Filter,
|
filter = Filter,
|
||||||
start_at = Start,
|
start_at = Start,
|
||||||
payload_encode = PayloadEncode,
|
payload_encode = PayloadEncode,
|
||||||
formatter = Formatter
|
extra = Extra
|
||||||
} = Trace,
|
} = Trace,
|
||||||
|
Formatter = maps:get(formatter, Extra, text),
|
||||||
Who = #{
|
Who = #{
|
||||||
name => Name,
|
name => Name,
|
||||||
type => Type,
|
type => Type,
|
||||||
|
@ -575,7 +579,11 @@ to_trace(#{end_at := EndAt} = Trace, Rec) ->
|
||||||
{error, "end_at time has already passed"}
|
{error, "end_at time has already passed"}
|
||||||
end;
|
end;
|
||||||
to_trace(#{formatter := Formatter} = Trace, Rec) ->
|
to_trace(#{formatter := Formatter} = Trace, Rec) ->
|
||||||
to_trace(maps:remove(formatter, Trace), Rec#?TRACE{formatter = Formatter});
|
Extra = Rec#?TRACE.extra,
|
||||||
|
to_trace(
|
||||||
|
maps:remove(formatter, Trace),
|
||||||
|
Rec#?TRACE{extra = Extra#{formatter => Formatter}}
|
||||||
|
);
|
||||||
to_trace(_, Rec) ->
|
to_trace(_, Rec) ->
|
||||||
{ok, Rec}.
|
{ok, Rec}.
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue