diff --git a/include/emqx_release.hrl b/include/emqx_release.hrl index 309453b14..e2ab8e9ed 100644 --- a/include/emqx_release.hrl +++ b/include/emqx_release.hrl @@ -29,7 +29,7 @@ -ifndef(EMQX_ENTERPRISE). --define(EMQX_RELEASE, {opensource, "4.4.4-rc.4"}). +-define(EMQX_RELEASE, {opensource, "4.4.4-rc.5"}). -else. diff --git a/priv/emqx.schema b/priv/emqx.schema index 86bbebc09..f8d199d1e 100644 --- a/priv/emqx.schema +++ b/priv/emqx.schema @@ -701,7 +701,7 @@ end}. #{ date_format => DateFormat, template => - [" [",level,"] ", + [time," [",level,"] ", {clientid, [{peername, [clientid,"@",peername," "], diff --git a/src/emqx_logger_textfmt.erl b/src/emqx_logger_textfmt.erl index 1d1bb8dcd..db16079ba 100644 --- a/src/emqx_logger_textfmt.erl +++ b/src/emqx_logger_textfmt.erl @@ -32,13 +32,18 @@ check_config(Config0) -> Config = maps:without([date_format], Config0), logger_formatter:check_config(Config). -format(#{msg := Msg0, meta := Meta} = Event, - #{date_format := rfc3339, template := Template0} = Config) -> +format(Event, Config) -> + case maps:get(date_format, Config, rfc3339) of + rfc3339 -> + format(Event, Config, rfc3339); + DateFormatString -> + format(Event, Config, DateFormatString) + end. + +format(#{msg := Msg0, meta := Meta} = Event, Config, rfc3339) -> Msg = maybe_merge(Msg0, Meta), - Template = [time | Template0], - logger_formatter:format(Event#{msg := Msg}, Config#{template => Template}); -format(#{msg := Msg0, meta := Meta} = Event, - #{date_format := DFS} = Config) -> + logger_formatter:format(Event#{msg := Msg}, Config); +format(#{msg := Msg0, meta := Meta} = Event, #{template := Template} = Config, DFS) -> Msg = maybe_merge(Msg0, Meta), Time = case maps:get(time, Event, undefined) of @@ -48,7 +53,10 @@ format(#{msg := Msg0, meta := Meta} = Event, T end, Date = emqx_calendar:format(Time, microsecond, local, DFS), - [Date | logger_formatter:format(Event#{msg := Msg}, Config)]. + [Date | logger_formatter:format(Event#{msg := Msg}, Config#{template => remove_time(Template)})]. + +remove_time([time | Tail]) -> Tail; +remove_time(Template) -> Template. maybe_merge({report, Report}, Meta) when is_map(Report) -> {report, maps:merge(Report, filter(Meta))};