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

Log process duration for failures and store relavant environment timeout values in diagnostics file #7303

Open
ramonsmits opened this issue Feb 19, 2025 · 0 comments

Comments

@ramonsmits
Copy link
Member

Describe the suggested improvement

Is your improvement related to a problem? Please describe.

When timeout related errors occurs it helps to know how long a message was being processed.

Take the following TransactionAbortedException / TimeoutException, having the processing duration helps diagnose what the timeout value is:

Log showing immediate retry due to TransactionAbortedException

Describe the suggested solution

  1. Log duration as part of the error. NServiceBus already has OpenTelemetry and a stopwatch running.
  2. Have Core and Transports add environment values for detected timeouts into the diagnostics file
  • Core: TransactionScope enabled? -> Log default timeout duration
  • Transport: SQLT -> Command Timeout, and other values, if not detectable write "default" or "unknown"

Additional Context

No response

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant