-- 不能使用 debug 命名模块,会冲突, -- 要使用其余名字比如 loghelper local log = {} io.stdout:setvbuf("no") 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 print(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