Hi Joe,
On Wed, Aug 10, 2016 at 07:11:44AM -0700, Joe Williams wrote:
> Hello list,
>
> Adding on to Theirry's work (
> http://git.haproxy.org/?p=haproxy.git;a=commit;h=6310bef51148b747f9019bd0bd67fd285eff0ae3)
> I have added a few more fetchers for counters based on the tcp_info struct
> maintained by the kernel.
Thanks for this! As I told you initially I thought we wouldn't need
the extra metrics, but you proved me wrong :-)
I've merged it and added your comment as the commit message. However
I was having a doubt about the presence of older fields on older kernels,
so I gave it a try with linux-2.6.32 and glibc 2.3.6 and it failed on me
like this :
src/proto_tcp.c: In function `get_tcp_info':
src/proto_tcp.c:2407: error: structure has no member named `tcpi_rcv_rtt'
src/proto_tcp.c:2408: error: structure has no member named `tcpi_total_retrans'
make: *** [src/proto_tcp.o] Error 1
make: *** Waiting for unfinished jobs....
So I'm seeing two possibilities :
- either you don't need these ones and we simply drop them from the patch
(the most likely solution given that total_retrans is meaningless in HTTP
since it applies to the whole connection)
- or we find a way to detect them and disable them at build time (I'm
looking at this now).
Please let me know, I've not pushed the commit yet, and I'd admit that
the first option still seems the easiest to me :-/
Thanks,
Willy