-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Log error once in nested long calls #38
Conversation
Useful for distinguising reports from the parallel tasks for example Sadly, MongooseIM does not report pid in logs
Log only first time when having nested long tasks Remove long from the task tags to not to confuse with actually long tasks (though, progress logging would still say "long")
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #38 +/- ##
==========================================
+ Coverage 97.46% 97.95% +0.49%
==========================================
Files 9 9
Lines 630 637 +7
==========================================
+ Hits 614 624 +10
+ Misses 16 13 -3
☔ View full report in Codecov by Sentry. |
And to check that logging actually works there
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks 👌
We use the latest version of debug_log_handler, which has fixes for race conditions in the Logger
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good 👍
Includes Log error once in nested long calls esl/cets#38 Includes Fix never returning gen_server:call(Server, sync) call esl/cets#37 Use ping_all instead of cets:sync (it has been renamed)
The PR reduces the amount of noise reported in "MIM-2073 Multiple errors in the logs on cluster startup with CETS" issue.
Before the same error was reported 3 times from 3 different places (we do over-reporting):
Once inside
cets
call and 2 times inside thecets_join
module.Changes:
cets
module.cets_join
would remain silent.task_failed
wrapping when we re-throw the error, to avoid it being reported by the nested long (call fromcets_long
module) call.global:transaction
when adding log handlers in our tests).