25 static bool LuaGetAr(
lua_State *L, lua_Debug *ar)
27 return lua_getstack(L, 1, ar) && lua_getinfo(L,
"nSl", ar);
32 const char *msg = luaL_checkstring(L, 1);
34 if (LuaGetAr(L, &ar)) {
35 const char *funcname = ar.name ? ar.name : ar.what;
36 SCLogInfoRaw(ar.short_src, funcname, ar.currentline,
"%s", msg);
45 const char *msg = luaL_checkstring(L, 1);
47 if (LuaGetAr(L, &ar)) {
48 const char *funcname = ar.name ? ar.name : ar.what;
59 const char *msg = luaL_checkstring(L, 1);
61 if (LuaGetAr(L, &ar)) {
62 const char *funcname = ar.name ? ar.name : ar.what;
72 const char *msg = luaL_checkstring(L, 1);
74 if (LuaGetAr(L, &ar)) {
75 const char *funcname = ar.name ? ar.name : ar.what;
76 SCLogErrorRaw(ar.short_src, funcname, ar.currentline,
"%s", msg);
86 const char *msg = luaL_checkstring(L, 1);
88 if (LuaGetAr(L, &ar)) {
89 const char *funcname = ar.name ? ar.name : ar.what;
90 SCLogDebugRaw(ar.short_src, funcname, ar.currentline,
"%s", msg);
100 const char *msg = luaL_checkstring(L, 1);
102 if (LuaGetAr(L, &ar)) {
103 const char *funcname = ar.name ? ar.name : ar.what;
104 SCLogConfigRaw(ar.short_src, funcname, ar.currentline,
"%s", msg);
113 const char *msg = luaL_checkstring(L, 1);
115 if (LuaGetAr(L, &ar)) {
116 const char *funcname = ar.name ? ar.name : ar.what;
117 SCLogPerfRaw(ar.short_src, funcname, ar.currentline,
"%s", msg);
124 static const struct luaL_Reg loglib[] = {
126 {
"info", LuaLogInfo },
127 {
"notice", LuaLogNotice },
128 {
"warning", LuaLogWarning },
129 {
"error", LuaLogError },
130 {
"debug", LuaLogDebug },
131 {
"config", LuaLogConfig },
132 {
"perf", LuaLogPerf },
139 luaL_newlib(L, loglib);