Information:

Environment

AppMon: 6.3

Symptoms

When the Webserver Agent is active in Apache 2.4 and request parameter capturing is enabled, Apache returns HTTP status code 413 instead of 200.

Solution

Update Apache. If this is not feasible, set the debug flag debugEnableInputFilterRemovalNative to true. Note however that this debug flag may cause request parameters to be omitted from capturing.

Root Cause

The Apache agent uses an input filter to capture request parameters. In previous versions this filter was removed from the filter chain after it was called once, this may cause request parameters not to be captured. Dynatrace fixed this but we alsso found out that our fix triggers an Apache 2.4 bug. This bug has already been fixed: https://bz.apache.org/bugzilla/show_bug.cgi?id=54435

  1. Anonymous (login to see details)

    Just as a note, the filter itself has nothing to do with this bug. The bug is in mod_proxy_http's request body file buffering code, and _anything_ that triggers that spooling into file would trigger the bug. One condition for this spooling is that the input filter chain for this request has changed from the default, which is why we trigger the bug when we don't remove the filter right away.

    1. Anonymous (login to see details)