Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
forks
lager
Commits
52b52aac
Commit
52b52aac
authored
9 years ago
by
Mark Allen
Browse files
Options
Download
Plain Diff
Merge branch 'dz-groupleader-strategies' of
https://github.com/DeadZen/lager
into intg
parents
d40ddd01
d5e78433
master
basho/fix-async_threshold_test
basho/separate-test-directory
borshop-integration-312-close-file-after-timebased-rotation
borshop-integration-334-issue-332
borshop-integration-335-issue-329
bugfix/improper-io-list-support
bugfix_jrd_watcher-test
develop-2.2
enable_thumbs
feature/rebar3
feature/riak-2903/rebar3
fix_18_tests
fix_otp15_undef
gh286
gh287
gh291
killer_poll
mra/gh315
rebar3
upstream-master
3.9.2
3.9.1
3.9.0
3.8.2
3.8.1
3.8.0
3.7.0
3.6.10
3.6.9
3.6.8
3.6.7
3.6.6
3.6.5
3.6.4
3.6.3
3.6.2
3.6.1
3.6.0
3.5.2
3.5.1
3.5.0
3.4.2
3.4.1
3.4.0
3.3.0
3.2.4
3.2.3
3.2.2
3.2.1
3.2.0
3.1.0
3.0.3
3.0.2
3.0.1
3.0.0
3.0.0-RC2
3.0.0-RC1
oktell/3.2.4
No related merge requests found
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
src/error_logger_lager_h.erl
+17
-4
src/error_logger_lager_h.erl
src/lager_app.erl
+16
-1
src/lager_app.erl
with
33 additions
and
5 deletions
+33
-5
src/error_logger_lager_h.erl
View file @
52b52aac
...
...
@@ -41,7 +41,9 @@
%% the current second
lasttime
=
os
:
timestamp
()
::
erlang
:
timestamp
(),
%% count of dropped messages this second
dropped
=
0
::
non_neg_integer
()
dropped
=
0
::
non_neg_integer
(),
%% group leader strategy
groupleader_strategy
::
handle
|
ignore
|
mirror
}).
-
define
(
LOGMSG
(
Level
,
Pid
,
Msg
),
...
...
@@ -74,16 +76,27 @@ set_high_water(N) ->
gen_event
:
call
(
error_logger
,
?
MODULE
,
{
set_high_water
,
N
},
infinity
).
-
spec
init
(
any
())
->
{
ok
,
#state
{}}.
init
([
HighWaterMark
])
->
{
ok
,
#state
{
hwm
=
HighWaterMark
}}.
init
([
HighWaterMark
,
GlStrategy
])
->
{
ok
,
#state
{
hwm
=
HighWaterMark
,
groupleader_strategy
=
GlStrategy
}}.
handle_call
({
set_high_water
,
N
},
State
)
->
{
ok
,
ok
,
State
#state
{
hwm
=
N
}};
handle_call
(_
Request
,
State
)
->
{
ok
,
unknown_call
,
State
}.
handle_event
(
Event
,
State
)
->
handle_event
(
Event
,
#state
{
groupleader_strategy
=
GlStrategy0
}
=
State
)
->
case
check_hwm
(
State
)
of
{
true
,
NewState
}
when
is_pid
(
element
(
2
,
Event
))
->
case
element
(
2
,
Event
)
of
GL
when
node
(
GL
)
=/=
node
(),
GlStrategy0
=:=
ignore
->
gen_event
:
notify
({
error_logger
,
node
(
GL
)},
Event
),
{
ok
,
State
};
GL
when
node
(
GL
)
=/=
node
(),
GlStrategy0
=:=
mirror
->
gen_event
:
notify
({
error_logger
,
node
(
GL
)},
Event
),
log_event
(
Event
,
NewState
);
_
->
log_event
(
Event
,
NewState
)
end
;
{
true
,
NewState
}
->
log_event
(
Event
,
NewState
);
{
false
,
NewState
}
->
...
...
This diff is collapsed.
Click to expand it.
src/lager_app.erl
View file @
52b52aac
...
...
@@ -128,7 +128,22 @@ start_error_logger_handler({ok, false}, _HWM, _Whitelist) ->
start_error_logger_handler
(_,
HWM
,
undefined
)
->
start_error_logger_handler
(
ignore_me
,
HWM
,
{
ok
,
[]});
start_error_logger_handler
(_,
HWM
,
{
ok
,
WhiteList
})
->
case
supervisor
:
start_child
(
lager_handler_watcher_sup
,
[
error_logger
,
error_logger_lager_h
,
[
HWM
]])
of
GlStrategy
=
case
application
:
get_env
(
lager
,
error_logger_groupleader_strategy
)
of
undefined
->
handle
;
{
ok
,
GlStrategy0
}
when
GlStrategy0
=:=
handle
;
GlStrategy0
=:=
ignore
;
GlStrategy0
=:=
mirror
->
GlStrategy0
;
{
ok
,
BadGlStrategy
}
->
error_logger
:
error_msg
(
"Invalid value for 'error_logger_groupleader_strategy':
~p~n
"
,
[
BadGlStrategy
]),
throw
({
error
,
bad_config
})
end
,
case
supervisor
:
start_child
(
lager_handler_watcher_sup
,
[
error_logger
,
error_logger_lager_h
,
[
HWM
,
GlStrategy
]])
of
{
ok
,
_}
->
[
begin
error_logger
:
delete_report_handler
(
X
),
X
end
||
X
<-
gen_event
:
which_handlers
(
error_logger
)
--
[
error_logger_lager_h
|
WhiteList
]];
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment
Menu
Projects
Groups
Snippets
Help