Hi Dennis,

On Fri, Oct 31, 2014 at 04:35:59PM +0100, Dennis Jacobfeuerborn wrote:
> On 31.10.2014 10:05, Willy Tarreau wrote:
> > Hi Dennis,
> > 
> > On Fri, Oct 31, 2014 at 12:51:21AM +0100, Dennis Jacobfeuerborn wrote:
> >> On 30.10.2014 19:01, Dennis Jacobfeuerborn wrote:
> >> ...
> >>>
> >>> [30/Oct/2014:18:46:36.035] front-http front-http/<NOSRV>
> >>> -1/-1/-1/-1/19117 400 187 - - CR-- 49/49/0/0/0 0/0 "<BADREQ>"
> >> ...
> >>
> >> So after a bit more googling I found the following mail thread that
> >> mentions this as some sort of tcp pre-connect behaviour by browsers:
> >>
> >> http://comments.gmane.org/gmane.comp.web.haproxy/10426
> >>
> >> Has anyone come of the idea to be able to not count a connection that
> >> gets opened but never used before it times out as an error?
> >> Right now the problem is that while technically these are errors
> >> according to the specs they kind of aren't given the real-world behavior
> >> of browsers these days.
> > 
> > In the case above, you had no traffic over the connection so
> > "option dontlognull" will silently hide this case.
> 
> This will hide the log entries but not deal with the error count. What I
> would like to do is to monitor the error count in order to detect when
> errors begin to show up more frequently but with the current behavior
> this isn't really possible.
> What I was hoping for is something like "option donterrornull" so these
> connections are not counted as errors.
> I realize that this might hide legitimate "null" requests in the error
> count but for this particular frontend the benefit of not counting these
> connections as errors would outweigh the downsides.
> 
> In short with such an option some legitimate errors might get hidden but
> without it the error count becomes just noise effectively hiding *all*
> legitimate errors.

That was something I was thinking about yesterday before the 1.5.7
release, in fact something like "silent-probes" which would have the
following effects :
  - not sending 400 bad req to sender on close
  - not sending 408 timeout to sender on timeout
  - not increasing error counters
  - not logging

This should be backportable to 1.5 as well as I think it can make a lot
of people's life easier.

What do others think ?

Willy


Reply via email to