mirror of
https://github.com/processone/ejabberd.git
synced 2024-12-24 17:29:28 +01:00
ejabberd_stun: Filter info/debug messages
Update 'stun' dependency, and drop the info/debug messages now logged by the 'stun' application if OTP's new logging API is used.
This commit is contained in:
parent
0ff5b44d15
commit
3bf7fbc117
2
mix.exs
2
mix.exs
@ -90,7 +90,7 @@ defmodule Ejabberd.Mixfile do
|
||||
{:stringprep, "~> 1.0"},
|
||||
{:fast_yaml, "~> 1.0"},
|
||||
{:fast_tls, "~> 1.1"},
|
||||
{:stun, git: "https://github.com/processone/stun", ref: "35cdef8b0ae35daa797a292c57dbd5ee62b45876", override: true},
|
||||
{:stun, git: "https://github.com/processone/stun", ref: "1599d55aee3a520893aff27746281c70cda65822", override: true},
|
||||
{:esip, "~> 1.0.32"},
|
||||
{:p1_mysql, "~> 1.0"},
|
||||
{:mqtree, "~> 1.0"},
|
||||
|
@ -36,7 +36,7 @@
|
||||
{mqtree, ".*", {git, "https://github.com/processone/mqtree", {tag, "1.0.8"}}},
|
||||
{p1_acme, ".*", {git, "https://github.com/processone/p1_acme.git", {tag, "1.0.6"}}},
|
||||
{base64url, ".*", {git, "https://github.com/dvv/base64url.git", {tag, "v1.0"}}},
|
||||
{if_var_true, stun, {stun, ".*", {git, "https://github.com/processone/stun", {tag, "1.0.33"}}}},
|
||||
{if_var_true, stun, {stun, ".*", {git, "https://github.com/processone/stun", "1599d55aee3a520893aff27746281c70cda65822"}}},
|
||||
{if_var_true, sip, {esip, ".*", {git, "https://github.com/processone/esip", {tag, "1.0.34"}}}},
|
||||
{if_var_true, mysql, {p1_mysql, ".*", {git, "https://github.com/processone/p1_mysql",
|
||||
{tag, "1.0.15"}}}},
|
||||
|
@ -50,16 +50,22 @@ start_link(_, _, _) ->
|
||||
get_password/2]).
|
||||
|
||||
-include("logger.hrl").
|
||||
-ifndef(LAGER).
|
||||
-export([stun_filter/2]).
|
||||
-define(STUN_MAX_LOG_LEVEL, notice). % Drop STUN/TURN info/debug messages.
|
||||
-endif.
|
||||
|
||||
%%%===================================================================
|
||||
%%% API
|
||||
%%%===================================================================
|
||||
tcp_init(Socket, Opts) ->
|
||||
init_logger(),
|
||||
ejabberd:start_app(stun),
|
||||
stun:tcp_init(Socket, prepare_turn_opts(Opts)).
|
||||
|
||||
-dialyzer({nowarn_function, udp_init/2}).
|
||||
udp_init(Socket, Opts) ->
|
||||
init_logger(),
|
||||
ejabberd:start_app(stun),
|
||||
stun:udp_init(Socket, prepare_turn_opts(Opts)).
|
||||
|
||||
@ -199,4 +205,32 @@ listen_options() ->
|
||||
{turn_max_permissions, 10},
|
||||
{turn_blacklist, [<<"2001::/32">>, <<"2002::/16">>]}, % Teredo, 6to4.
|
||||
{server_name, <<"ejabberd">>}].
|
||||
|
||||
-spec init_logger() -> ok.
|
||||
-ifdef(LAGER).
|
||||
init_logger() ->
|
||||
ok.
|
||||
-else.
|
||||
init_logger() ->
|
||||
case logger:add_primary_filter(stun, {fun ?MODULE:stun_filter/2,
|
||||
?STUN_MAX_LOG_LEVEL}) of
|
||||
ok ->
|
||||
ok;
|
||||
{error, {already_exist, _}} ->
|
||||
ok
|
||||
end.
|
||||
|
||||
-spec stun_filter(logger:log_event(), logger:level() | term())
|
||||
-> logger:filter_return().
|
||||
stun_filter(#{meta := #{domain := [stun | _]}, level := Level}, MaxLevel) ->
|
||||
case logger:compare_levels(Level, MaxLevel) of
|
||||
lt ->
|
||||
stop;
|
||||
_ ->
|
||||
ignore
|
||||
end;
|
||||
stun_filter(Event, _Extra) ->
|
||||
Event.
|
||||
-endif.
|
||||
|
||||
-endif.
|
||||
|
Loading…
Reference in New Issue
Block a user