mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2025-02-08 14:27:30 +00:00
MINOR: lua: add "now" time function
This function returns the current time in the Lua.
This commit is contained in:
parent
fb0b5467ca
commit
b1f46561a0
@ -270,6 +270,20 @@ Core class
|
||||
:param string filename: the filename that reference the map entries.
|
||||
:param string key: the key which will be deleted.
|
||||
|
||||
.. js:function:: core.now()
|
||||
|
||||
**context**: body, init, task, action
|
||||
|
||||
This function returns the current time. The time returned is fixed by the
|
||||
HAProxy core and assures than the hour will be monotnic and that the system
|
||||
call 'gettimeofday' will not be called too. The time is refreshed between each
|
||||
Lua execution or resume, so two consecutive call to the function "now" will
|
||||
probably returns the same result.
|
||||
|
||||
:returns: an array which contains two entries "sec" and "usec". "sec"
|
||||
contains the current at the epoch format, and "usec" contains the
|
||||
current microseconds.
|
||||
|
||||
.. js:function:: core.msleep(milliseconds)
|
||||
|
||||
**context**: body, init, task, action
|
||||
|
@ -7,6 +7,21 @@
|
||||
#include <lua.h>
|
||||
#include <lualib.h>
|
||||
|
||||
#include <common/time.h>
|
||||
|
||||
/* This function return the current date at epoch format in milliseconds. */
|
||||
int hlua_now(lua_State *L)
|
||||
{
|
||||
lua_newtable(L);
|
||||
lua_pushstring(L, "sec");
|
||||
lua_pushinteger(L, now.tv_sec);
|
||||
lua_rawset(L, -3);
|
||||
lua_pushstring(L, "usec");
|
||||
lua_pushinteger(L, now.tv_usec);
|
||||
lua_rawset(L, -3);
|
||||
return 1;
|
||||
}
|
||||
|
||||
static void hlua_array_add_fcn(lua_State *L, const char *name,
|
||||
int (*function)(lua_State *L))
|
||||
{
|
||||
@ -17,5 +32,6 @@ static void hlua_array_add_fcn(lua_State *L, const char *name,
|
||||
|
||||
int hlua_fcn_reg_core_fcn(lua_State *L)
|
||||
{
|
||||
return 0;
|
||||
hlua_array_add_fcn(L, "now", hlua_now);
|
||||
return 1;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user