-- 写日志逻辑 local skynet = require "skynet" local c = require "skynet.core" local statLogger = class("statLogger") function statLogger:ctor(file) self.loggerDir = skynet.getenv("statistic_path") self.file = file self.fileHandle = nil self.lastWriteTime = nil self.filename = string.format("%s%s.log", self.loggerDir, file) end function statLogger:open() self.fileHandle = skynet.call(".logMgr", "lua", "open", self.filename) end function statLogger:write(message) if not self.fileHandle then -- 日志文件还没有打开 self:open() end c.send(self.fileHandle, 0, 0, message) -- 最后写入时间 self.lastWriteTime = os.time() end return statLogger