-
Notifications
You must be signed in to change notification settings - Fork 847
Allow for long Http* error.log lines #8855
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
Conversation
|
[approve ci autest] |
1d214ec to
774a121
Compare
|
Thread local was actually slower in the benchmark I did. Benchmark results: Code: |
Thank you for doing the benchmark! I'll use an undecorated std::string. Either way, this isn't hot code. Might as well keep it more simple, especially if thread_local can pessimize performance. |
774a121 to
5383603
Compare
|
@cmcfarlen will review this |
Many URLs and log paths are long enough that the previous 256 byte error.log limit for HttpSM and HttpTransact made it so that the logs got truncated. Some of those logs had meaningful strings at the end which made them hard to interpret unless you had the source code in front of you to figure out what was truncated. This utilizes bwprint and local std::string buffers for arbitrarily long log lines.
5383603 to
79b5089
Compare
cmcfarlen
left a comment
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.
We talked about moving this libfmt style print into Log itself to support this directly, but this is a bit more work than intended for this PR. I'm going to make an issue to add better support for this if someone wants to work on it in the future.
bryancall
left a comment
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.
Based on @cmcfarlen review
Many URLs and log paths are long enough that the previous 256 byte error.log limit for HttpSM and HttpTransact made it so that the logs got truncated. Some of those logs had meaningful strings at the end which made them hard to interpret unless you had the source code in front of you to figure out what was truncated. This utilizes bwprint and local std::string buffers for arbitrarily long log lines. (cherry picked from commit d274b8f)
|
Cherry-picked to v9.2.x |
1 similar comment
|
Cherry-picked to v9.2.x |
* asf/9.2.x: Updated ChangeLog Add proxy.process.hostdb.total_serve_stale (apache#8873) Allow for long Http* error.log lines (apache#8855) mkdfa.c is not being used and doesn't compile with gcc 12.1.1 (apache#8838) Add compatibility define when building with OpenSSL3 (apache#8837) Make post-early-return Au test more robust. (apache#8832) Add support for caching complete responses to the cache range requests plugin (apache#8816) Fixes issues with the CRR plugin introduced in apache#8488 (apache#8828) slice and cache_range_requests: allow header override (apache#8666) (apache#8898) Removed references to the throttle option from the slice plugin. (apache#8373) (apache#8897) cache_range_requests plugin: don't require 206 Partial Content reason string (apache#8488) Improve option processing in cache promote (apache#8501) Change parent_select Init func to constructor (apache#8853) Fix "is is" typos. (apache#8866) Eliminate duplicate words. (apache#8870) money_trace: allow custom header, change span-id gen, opt to create if none (apache#8655) Update HostDBContinuation timeout handling to clear pending queue. (apache#8480) Upgrade to Proxy Verifier 2.4.0. (apache#8884) Change ats_scoped_obj to std::unique_ptr . (apache#8882)
Many URLs and log paths are long enough that the previous 256 byte
error.log limit for HttpSM and HttpTransact made it so that the logs got
truncated. Some of those logs had meaningful strings at the end which
made them hard to interpret unless you had the source code in front of
you to figure out what was truncated. This utilizes bwprint and local
std::string buffers for arbitrarily long log lines.