On 08/23/2018 09:47 AM, Thierry Fournier wrote:


On 22 Aug 2018, at 06:00, Patrick Hemmer <hapr...@stormcloud9.net> wrote:



On 2018/7/18 09:03, Frederic Lecaille wrote:
Hello Patrick,

On 07/17/2018 03:59 PM, Patrick Hemmer wrote:
Ping?

-Patrick

On 2018/6/22 15:10, Patrick Hemmer wrote:
When using core.msleep in lua, the %Tw metric is a negative value.

For example with the following config:
haproxy.cfg:
         global
             lua-load /tmp/haproxy.lua

         frontend f1
             mode http
             bind :8000
             default_backend b1
             log 127.0.0.1:1234 daemon
             log-format Ta=%Ta\ Tc=%Tc\ Td=%Td\ Th=%Th\ Ti=%Ti\ Tq=%Tq\ TR=%TR\ 
Tr=%Tr\ Tt=%Tt\ Tw=%Tw

         backend b1
             mode http
             http-request use-service lua.foo

haproxy.lua:
         core.register_service("foo", "http", function(applet)
             core.msleep(100)
             applet:set_status(200)
             applet:start_response()
         end)

The log contains:
     Ta=104 Tc=0 Td=0 Th=0 Ti=0 Tq=104 TR=104 Tr=104 Tt=104 Tw=-104

^ TR also looks wrong, as it did not take 104ms to receive the full request.

This is built from the commit before current master: d8fd2af

-Patrick


The patch attached to this mail fixes this issue at least for %TR field.

But I am not sure at all it is correct or if there is no remaining issues. For 
instance the LUA tcp callback also updates the tv_request log field.

So, let's wait for Thierry's validation.


Hi,

Applets should be considered as server independent from HAProxy, so applet 
should not
change HAProxy information like log times.

I guess that your patch works, and the function hlua_applet_tcp_fct() should 
follow
the same way.

unfortunately I do not have free time to test all of this changes.

Ok thank you for replying Thierry. I am going to have a look at how to reproduce the same issue with hlua_applet_tcp_fct().

Fred.

Reply via email to