refactor: change failure log configuration schema
This commit is contained in:
parent
2eac54bf54
commit
c478e375f6
|
@ -216,7 +216,7 @@ evaluate_sql_check(Check, Validation, Message) ->
|
||||||
} = Check,
|
} = Check,
|
||||||
#{
|
#{
|
||||||
name := Name,
|
name := Name,
|
||||||
log_failure_at := FailureLogLevel
|
log_failure := #{level := FailureLogLevel}
|
||||||
} = Validation,
|
} = Validation,
|
||||||
{Data, _} = emqx_rule_events:eventmsg_publish(Message),
|
{Data, _} = emqx_rule_events:eventmsg_publish(Message),
|
||||||
try emqx_rule_runtime:evaluate_select(Fields, Data, Conditions) of
|
try emqx_rule_runtime:evaluate_select(Fields, Data, Conditions) of
|
||||||
|
@ -255,7 +255,7 @@ evaluate_schema_check(Check, Validation, #message{payload = Data}) ->
|
||||||
#{schema := SerdeName} = Check,
|
#{schema := SerdeName} = Check,
|
||||||
#{
|
#{
|
||||||
name := Name,
|
name := Name,
|
||||||
log_failure_at := FailureLogLevel
|
log_failure := #{level := FailureLogLevel}
|
||||||
} = Validation,
|
} = Validation,
|
||||||
ExtraArgs =
|
ExtraArgs =
|
||||||
case Check of
|
case Check of
|
||||||
|
@ -406,7 +406,7 @@ run_validations(Validations, Message) ->
|
||||||
Fun = fun(Validation, Acc) ->
|
Fun = fun(Validation, Acc) ->
|
||||||
#{
|
#{
|
||||||
name := Name,
|
name := Name,
|
||||||
log_failure_at := FailureLogLevel
|
log_failure := #{level := FailureLogLevel}
|
||||||
} = Validation,
|
} = Validation,
|
||||||
case run_validation(Validation, Message) of
|
case run_validation(Validation, Message) of
|
||||||
ok ->
|
ok ->
|
||||||
|
|
|
@ -78,10 +78,10 @@ fields(validation) ->
|
||||||
hoconsc:enum([drop, disconnect]),
|
hoconsc:enum([drop, disconnect]),
|
||||||
#{desc => ?DESC("failure_action"), required => true}
|
#{desc => ?DESC("failure_action"), required => true}
|
||||||
)},
|
)},
|
||||||
{log_failure_at,
|
{log_failure,
|
||||||
mk(
|
mk(
|
||||||
hoconsc:enum([error, warning, notice, info, debug]),
|
ref(log_failure),
|
||||||
#{desc => ?DESC("log_failure_at"), default => info}
|
#{desc => ?DESC("log_failure_at"), default => #{}}
|
||||||
)},
|
)},
|
||||||
{checks,
|
{checks,
|
||||||
mk(
|
mk(
|
||||||
|
@ -100,6 +100,14 @@ fields(validation) ->
|
||||||
}
|
}
|
||||||
)}
|
)}
|
||||||
];
|
];
|
||||||
|
fields(log_failure) ->
|
||||||
|
[
|
||||||
|
{level,
|
||||||
|
mk(
|
||||||
|
hoconsc:enum([error, warning, notice, info, debug]),
|
||||||
|
#{desc => ?DESC("log_failure_at"), default => info}
|
||||||
|
)}
|
||||||
|
];
|
||||||
fields(check_sql) ->
|
fields(check_sql) ->
|
||||||
[
|
[
|
||||||
{type, mk(sql, #{default => sql, desc => ?DESC("check_sql_type")})},
|
{type, mk(sql, #{default => sql, desc => ?DESC("check_sql_type")})},
|
||||||
|
|
|
@ -108,7 +108,7 @@ validation(Name, Checks, Overrides) ->
|
||||||
<<"topics">> => <<"t/+">>,
|
<<"topics">> => <<"t/+">>,
|
||||||
<<"strategy">> => <<"all_pass">>,
|
<<"strategy">> => <<"all_pass">>,
|
||||||
<<"failure_action">> => <<"drop">>,
|
<<"failure_action">> => <<"drop">>,
|
||||||
<<"log_failure_at">> => <<"warning">>,
|
<<"log_failure">> => #{<<"level">> => <<"warning">>},
|
||||||
<<"checks">> => Checks
|
<<"checks">> => Checks
|
||||||
},
|
},
|
||||||
emqx_utils_maps:deep_merge(Default, Overrides).
|
emqx_utils_maps:deep_merge(Default, Overrides).
|
||||||
|
|
|
@ -38,7 +38,7 @@ validation(Name, Checks, Overrides) ->
|
||||||
<<"topics">> => <<"t/+">>,
|
<<"topics">> => <<"t/+">>,
|
||||||
<<"strategy">> => <<"all_pass">>,
|
<<"strategy">> => <<"all_pass">>,
|
||||||
<<"failure_action">> => <<"drop">>,
|
<<"failure_action">> => <<"drop">>,
|
||||||
<<"log_failure_at">> => <<"warning">>,
|
<<"log_failure">> => #{<<"level">> => <<"warning">>},
|
||||||
<<"checks">> => Checks
|
<<"checks">> => Checks
|
||||||
},
|
},
|
||||||
emqx_utils_maps:deep_merge(Default, Overrides).
|
emqx_utils_maps:deep_merge(Default, Overrides).
|
||||||
|
@ -54,7 +54,7 @@ sql_check(SQL) ->
|
||||||
|
|
||||||
eval_sql(Message, SQL) ->
|
eval_sql(Message, SQL) ->
|
||||||
{ok, Check} = emqx_message_validation:parse_sql_check(SQL),
|
{ok, Check} = emqx_message_validation:parse_sql_check(SQL),
|
||||||
Validation = #{log_failure_at => warning, name => <<"validation">>},
|
Validation = #{log_failure => #{level => warning}, name => <<"validation">>},
|
||||||
emqx_message_validation:evaluate_sql_check(Check, Validation, Message).
|
emqx_message_validation:evaluate_sql_check(Check, Validation, Message).
|
||||||
|
|
||||||
message() ->
|
message() ->
|
||||||
|
|
Loading…
Reference in New Issue