diff options
Diffstat (limited to 'log/init.lua')
-rw-r--r-- | log/init.lua | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/log/init.lua b/log/init.lua new file mode 100644 index 0000000..bfa2e4e --- /dev/null +++ b/log/init.lua @@ -0,0 +1,55 @@ +-- 不能使用 debug 命名模块,会冲突, +-- 要使用其余名字比如 loghelper +local log = {} +io.stdout:setvbuf("no") + +local _format = "%c" +log.dateFormat = function(fmt) + _format = fmt +end + +log.LEVEL = { + INFO = 4, + DEBUG = 3, + WARN = 2, + ERROR = 1, + NONE = 0 +} + +local logTag = { + [log.LEVEL.INFO] = "[Info]", + [log.LEVEL.DEBUG] = "[Debug]", + [log.LEVEL.WARN] = "[Warn]", + [log.LEVEL.ERROR] = "[Error]", +} + +log.level = log.LEVEL.INFO + +log.strict = function(level) + log.level = level +end + +log.log = function(level, msg) + if level <= log.level then + local time = os.date(_format, os.time()) + print(time .. logTag[level] .. ":" .. msg) + end +end + +log.info = function(msg) + log.log(log.LEVEL.INFO, msg) +end + +log.debug = function(msg) + log.log(log.LEVEL.DEBUG, msg) +end + +log.warn = function(msg) + log.log(log.LEVEL.WARN, msg) +end + +log.error = function(msg) + log.log(log.LEVEL.ERROR, msg) +end + +return log
\ No newline at end of file |