fix: change name of the default trace log format from plain to text

This commit is contained in:
Kjell Winblad 2024-04-18 10:42:51 +02:00
parent ef9f8a8fdf
commit 10957e7d79
6 changed files with 20 additions and 20 deletions

View File

@ -33,7 +33,7 @@
extra = #{} :: map() | '_', extra = #{} :: map() | '_',
start_at :: integer() | undefined | '_', start_at :: integer() | undefined | '_',
end_at :: integer() | undefined | '_', end_at :: integer() | undefined | '_',
formatter = plain :: plain | json | '_' formatter = text :: text | json | '_'
}). }).
-define(SHARD, ?COMMON_SHARD). -define(SHARD, ?COMMON_SHARD).

View File

@ -48,7 +48,7 @@
type := clientid | topic | ip_address, type := clientid | topic | ip_address,
filter := emqx_types:clientid() | emqx_types:topic() | emqx_trace:ip_address(), filter := emqx_types:clientid() | emqx_types:topic() | emqx_trace:ip_address(),
payload_encode := text | hidden | hex, payload_encode := text | hidden | hex,
formatter => json | plain formatter => json | text
}. }.
-define(CONFIG(_LogFile_), #{ -define(CONFIG(_LogFile_), #{
@ -72,7 +72,7 @@
Filter :: emqx_types:clientid() | emqx_types:topic() | string(), Filter :: emqx_types:clientid() | emqx_types:topic() | string(),
Level :: logger:level() | all, Level :: logger:level() | all,
LogFilePath :: string(), LogFilePath :: string(),
Formatter :: plain | json Formatter :: text | json
) -> ok | {error, term()}. ) -> ok | {error, term()}.
install(Name, Type, Filter, Level, LogFile, Formatter) -> install(Name, Type, Filter, Level, LogFile, Formatter) ->
Who = #{ Who = #{
@ -92,7 +92,7 @@ install(Name, Type, Filter, Level, LogFile, Formatter) ->
LogFilePath :: string() LogFilePath :: string()
) -> ok | {error, term()}. ) -> ok | {error, term()}.
install(Name, Type, Filter, Level, LogFile) -> install(Name, Type, Filter, Level, LogFile) ->
install(Name, Type, Filter, Level, LogFile, plain). install(Name, Type, Filter, Level, LogFile, text).
-spec install( -spec install(
Type :: clientid | topic | ip_address, Type :: clientid | topic | ip_address,

View File

@ -97,7 +97,7 @@ t_base_create_delete(_Config) ->
end_at => Now + 30 * 60, end_at => Now + 30 * 60,
payload_encode => text, payload_encode => text,
extra => #{}, extra => #{},
formatter => plain formatter => text
} }
], ],
?assertEqual(ExpectFormat, emqx_trace:format([TraceRec])), ?assertEqual(ExpectFormat, emqx_trace:format([TraceRec])),

View File

@ -317,10 +317,10 @@ fields(trace) ->
)}, )},
{formatter, {formatter,
hoconsc:mk( hoconsc:mk(
hoconsc:union([plain, json]), hoconsc:union([text, json]),
#{ #{
description => ?DESC(trace_log_formatter), description => ?DESC(trace_log_formatter),
example => plain, example => text,
required => false required => false
} }
)} )}

View File

@ -507,14 +507,14 @@ trace(["list"]) ->
) )
end; end;
trace(["stop", Operation, Filter0]) -> trace(["stop", Operation, Filter0]) ->
case trace_type(Operation, Filter0, plain) of case trace_type(Operation, Filter0, text) of
{ok, Type, Filter, _} -> trace_off(Type, Filter); {ok, Type, Filter, _} -> trace_off(Type, Filter);
error -> trace([]) error -> trace([])
end; end;
trace(["start", Operation, ClientId, LogFile]) -> trace(["start", Operation, ClientId, LogFile]) ->
trace(["start", Operation, ClientId, LogFile, "all"]); trace(["start", Operation, ClientId, LogFile, "all"]);
trace(["start", Operation, Filter0, LogFile, Level]) -> trace(["start", Operation, Filter0, LogFile, Level]) ->
trace(["start", Operation, Filter0, LogFile, Level, plain]); trace(["start", Operation, Filter0, LogFile, Level, text]);
trace(["start", Operation, Filter0, LogFile, Level, Formatter0]) -> trace(["start", Operation, Filter0, LogFile, Level, Formatter0]) ->
case trace_type(Operation, Filter0, Formatter0) of case trace_type(Operation, Filter0, Formatter0) of
{ok, Type, Filter, Formatter} -> {ok, Type, Filter, Formatter} ->
@ -533,16 +533,16 @@ trace(_) ->
emqx_ctl:usage([ emqx_ctl:usage([
{"trace list", "List all traces started on local node"}, {"trace list", "List all traces started on local node"},
{"trace start client <ClientId> <File> [<Level>] [<Formatter>]", {"trace start client <ClientId> <File> [<Level>] [<Formatter>]",
"Traces for a client on local node (Formatter=plain|json)"}, "Traces for a client on local node (Formatter=text|json)"},
{"trace stop client <ClientId>", "Stop tracing for a client on local node"}, {"trace stop client <ClientId>", "Stop tracing for a client on local node"},
{"trace start topic <Topic> <File> [<Level>] [<Formatter>]", {"trace start topic <Topic> <File> [<Level>] [<Formatter>]",
"Traces for a topic on local node (Formatter=plain|json)"}, "Traces for a topic on local node (Formatter=text|json)"},
{"trace stop topic <Topic> ", "Stop tracing for a topic on local node"}, {"trace stop topic <Topic> ", "Stop tracing for a topic on local node"},
{"trace start ip_address <IP> <File> [<Level>] [<Formatter>]", {"trace start ip_address <IP> <File> [<Level>] [<Formatter>]",
"Traces for a client ip on local node (Formatter=plain|json)"}, "Traces for a client ip on local node (Formatter=text|json)"},
{"trace stop ip_address <IP> ", "Stop tracing for a client ip on local node"}, {"trace stop ip_address <IP> ", "Stop tracing for a client ip on local node"},
{"trace start ruleid <RuleID> <File> [<Level>] [<Formatter>]", {"trace start ruleid <RuleID> <File> [<Level>] [<Formatter>]",
"Traces for a rule ID on local node (Formatter=plain|json)"}, "Traces for a rule ID on local node (Formatter=text|json)"},
{"trace stop ruleid <RuleID> ", "Stop tracing for a rule ID on local node"} {"trace stop ruleid <RuleID> ", "Stop tracing for a rule ID on local node"}
]). ]).
@ -599,7 +599,7 @@ traces(["delete", Name]) ->
traces(["start", Name, Operation, Filter]) -> traces(["start", Name, Operation, Filter]) ->
traces(["start", Name, Operation, Filter, ?DEFAULT_TRACE_DURATION]); traces(["start", Name, Operation, Filter, ?DEFAULT_TRACE_DURATION]);
traces(["start", Name, Operation, Filter, DurationS]) -> traces(["start", Name, Operation, Filter, DurationS]) ->
traces(["start", Name, Operation, Filter, DurationS, plain]); traces(["start", Name, Operation, Filter, DurationS, text]);
traces(["start", Name, Operation, Filter0, DurationS, Formatter0]) -> traces(["start", Name, Operation, Filter0, DurationS, Formatter0]) ->
case trace_type(Operation, Filter0, Formatter0) of case trace_type(Operation, Filter0, Formatter0) of
{ok, Type, Filter, Formatter} -> trace_cluster_on(Name, Type, Filter, DurationS, Formatter); {ok, Type, Filter, Formatter} -> trace_cluster_on(Name, Type, Filter, DurationS, Formatter);
@ -609,17 +609,17 @@ traces(_) ->
emqx_ctl:usage([ emqx_ctl:usage([
{"traces list", "List all cluster traces started"}, {"traces list", "List all cluster traces started"},
{"traces start <Name> client <ClientId> [<Duration>] [<Formatter>]", {"traces start <Name> client <ClientId> [<Duration>] [<Formatter>]",
"Traces for a client in cluster (Formatter=plain|json)"}, "Traces for a client in cluster (Formatter=text|json)"},
{"traces start <Name> topic <Topic> [<Duration>] [<Formatter>]", {"traces start <Name> topic <Topic> [<Duration>] [<Formatter>]",
"Traces for a topic in cluster (Formatter=plain|json)"}, "Traces for a topic in cluster (Formatter=text|json)"},
{"traces start <Name> ruleid <RuleID> [<Duration>] [<Formatter>]", {"traces start <Name> ruleid <RuleID> [<Duration>] [<Formatter>]",
"Traces for a rule ID in cluster (Formatter=plain|json)"}, "Traces for a rule ID in cluster (Formatter=text|json)"},
{"traces start <Name> ip_address <IPAddr> [<Duration>] [<Formatter>]", {"traces start <Name> ip_address <IPAddr> [<Duration>] [<Formatter>]",
"Traces for a client IP in cluster\n" "Traces for a client IP in cluster\n"
"Trace will start immediately on all nodes, including the core and replicant,\n" "Trace will start immediately on all nodes, including the core and replicant,\n"
"and will end after <Duration> seconds. The default value for <Duration> is " "and will end after <Duration> seconds. The default value for <Duration> is "
?DEFAULT_TRACE_DURATION ?DEFAULT_TRACE_DURATION
" seconds. (Formatter=plain|json)"}, " seconds. (Formatter=text|json)"},
{"traces stop <Name>", "Stop trace in cluster"}, {"traces stop <Name>", "Stop trace in cluster"},
{"traces delete <Name>", "Delete trace in cluster"} {"traces delete <Name>", "Delete trace in cluster"}
]). ]).
@ -657,7 +657,7 @@ trace_cluster_off(Name) ->
{error, Error} -> emqx_ctl:print("[error] Stop cluster_trace ~s: ~p~n", [Name, Error]) {error, Error} -> emqx_ctl:print("[error] Stop cluster_trace ~s: ~p~n", [Name, Error])
end. end.
trace_type(Op, Match, "plain") -> trace_type(Op, Match, plain); trace_type(Op, Match, "text") -> trace_type(Op, Match, text);
trace_type(Op, Match, "json") -> trace_type(Op, Match, json); trace_type(Op, Match, "json") -> trace_type(Op, Match, json);
trace_type("client", ClientId, Formatter) -> {ok, clientid, bin(ClientId), Formatter}; trace_type("client", ClientId, Formatter) -> {ok, clientid, bin(ClientId), Formatter};
trace_type("topic", Topic, Formatter) -> {ok, topic, bin(Topic), Formatter}; trace_type("topic", Topic, Formatter) -> {ok, topic, bin(Topic), Formatter};

View File

@ -116,7 +116,7 @@ current_trace_offset.label:
"""Offset from the current trace position.""" """Offset from the current trace position."""
trace_log_formatter.desc: trace_log_formatter.desc:
"""The formatter that will be used to format the trace log entries. Set this to plain to format the log entries as plain text (default). Set it to json to format each log entry as a JSON object.""" """The formatter that will be used to format the trace log entries. Set this to text to format the log entries as plain text (default). Set it to json to format each log entry as a JSON object."""
trace_log_formatter.label: trace_log_formatter.label:
"""Trace Log Entry Formatter""" """Trace Log Entry Formatter"""