UNPKG

@thatcompany/ts-tool

Version:

基于TypeScript编写的工具库

40 lines 1.4 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.FileLoggerTransport = void 0; const fs_1 = __importDefault(require("fs")); const path_1 = __importDefault(require("path")); const rotating_file_stream_1 = require("rotating-file-stream"); class FileLoggerTransport { stream; constructor(logFilePath = '_logs/that.log') { this.stream = (0, rotating_file_stream_1.createStream)(logFilePath, { size: '10M', interval: '1d', compress: 'gzip', }); const dir = path_1.default.dirname(logFilePath); if (!fs_1.default.existsSync(dir)) { fs_1.default.mkdirSync(dir, { recursive: true }); } } exec(logObj) { try { const log = { levelId: logObj._meta.logLevelId, date: logObj._meta.date, message: logObj[0], path: logObj._meta.path.fullFilePath, levelName: logObj._meta.logLevelName, }; this.stream.write(JSON.stringify(log) + '\n'); } catch (err) { console.error(err); } } } exports.FileLoggerTransport = FileLoggerTransport; //# sourceMappingURL=FileLoggerTransport.js.map