cc-mek-scada/scada-common/log.lua

44 lines
938 B
Lua

--
-- File System Logger
--
-- we use extra short abbreviations since computer craft screens are very small
-- underscores are used since some of these names are used elsewhere (e.g. 'debug' is a lua table)
local file_handle = fs.open("/log.txt", "a")
local _log = function (msg)
local stamped = os.date("[%c] ") .. msg
file_handle.writeLine(stamped)
file_handle.flush()
end
function _debug(msg, trace)
local dbg_info = ""
if trace then
local name = ""
if debug.getinfo(2).name ~= nil then
name = ":" .. debug.getinfo(2).name .. "():"
end
dbg_info = debug.getinfo(2).short_src .. ":" .. name ..
debug.getinfo(2).currentline .. " > "
end
_log("[DBG] " .. dbg_info .. msg)
end
function _warning(msg)
_log("[WRN] " .. msg)
end
function _error(msg)
_log("[ERR] " .. msg)
end
function _fatal(msg)
_log("[FTL] " .. msg)
end