Skip to content
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

Exceptions: include Timer.ActiveCount in .NET Core stats #2500

Merged
merged 2 commits into from
Jul 5, 2023

Conversation

NickCraver
Copy link
Collaborator

@NickCraver NickCraver commented Jul 2, 2023

We're seeing some instances of quite delayed timeouts and at least in two deeper investigations it was due to a huge number of timers firing and the backlog timeout assessment timer not triggering for an extended period of time. To help users diagnose this, adding the cheap counter to the .NET Core pool stats where Timer.ActiveCount is readily available.

This is available in all the .NET (non-Framework) versions we support.

Before:

...POOL: (Threads=25,QueuedItems=0,CompletedItems=1066)

After:

...POOL: (Threads=25,QueuedItems=0,CompletedItems=1066,Timers=46)

See #2477 for another possible instance of this.

We're seeing some instances of quite delayed timeouts and at least in two deeper investigations it was due to a huge number of timers firing and the backlog timeout assessment timer not triggering for an extended period of time. To help users diagnose this, adding the cheap counter to the .NET Core pool stats where Timer.ActiveCount is readily available.
@NickCraver NickCraver merged commit cd2dbb4 into main Jul 5, 2023
@NickCraver NickCraver deleted the craver/exception-message-timers branch July 5, 2023 12:36
rifhanakram added a commit to rifhanakram/StackExchange.Redis that referenced this pull request Oct 3, 2023
With this change StackExchange#2500 active Timers count is part of the log
NickCraver pushed a commit that referenced this pull request Oct 30, 2023
…og (#2568)

With this change #2500 active Timers count is now part of the log
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants