Skip to content

perf: optimize 404/405 handling with pre-encoded responses and lazy l…#81

Merged
alexferl merged 5 commits intomasterfrom
perf_router
Mar 11, 2026
Merged

perf: optimize 404/405 handling with pre-encoded responses and lazy l…#81
alexferl merged 5 commits intomasterfrom
perf_router

Conversation

@alexferl
Copy link
Copy Markdown
Owner

…ogging

  • Pre-encode JSON error responses at init time to avoid repeated encoding
  • Add lazy request ID generation - only generated when logging is enabled
  • Use pre-encoded plain text for default 404/405 handlers (faster than ProblemDetail)
  • Add shouldLogRequest() helper to respect DisableDefaultMiddlewares setting

Also fixes RequestLogger.Enabled to use *bool so users can explicitly disable logging with config.Bool(false).

…ogging

- Pre-encode JSON error responses at init time to avoid repeated encoding
- Add lazy request ID generation - only generated when logging is enabled
- Use pre-encoded plain text for default 404/405 handlers (faster than ProblemDetail)
- Add shouldLogRequest() helper to respect DisableDefaultMiddlewares setting

Also fixes RequestLogger.Enabled to use *bool so users can explicitly
disable logging with config.Bool(false).

Signed-off-by: alexferl <me@alexferl.com>
@coveralls
Copy link
Copy Markdown

coveralls commented Mar 11, 2026

Pull Request Test Coverage Report for Build 22976467627

Details

  • 70 of 72 (97.22%) changed or added relevant lines in 2 files are covered.
  • 5 unchanged lines in 1 file lost coverage.
  • Overall coverage increased (+0.01%) to 93.44%

Changes Missing Coverage Covered Lines Changed/Added Lines %
router.go 67 69 97.1%
Files with Coverage Reduction New Missed Lines %
server_tls.go 5 87.63%
Totals Coverage Status
Change from base Build 22936107910: 0.01%
Covered Lines: 8361
Relevant Lines: 8948

💛 - Coveralls

Signed-off-by: alexferl <me@alexferl.com>
Signed-off-by: alexferl <me@alexferl.com>
Signed-off-by: alexferl <me@alexferl.com>
Signed-off-by: alexferl <me@alexferl.com>
@alexferl alexferl merged commit b1e0a4b into master Mar 11, 2026
9 checks passed
@alexferl alexferl deleted the perf_router branch March 11, 2026 22:01
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