UNPKG

logzilla

Version:

Node.js Logging Adapter for Devebot

155 lines (154 loc) 4.02 kB
'use strict'; const logzillaLevels = { levels: { debug: 4, info: 3, trace: 2, warn: 1, error: 0 }, colors: { debug: 'blue', info: 'green', trace: 'yellow', warn: 'cyan', error: 'red' } }; const level_enum = Object.keys(logzillaLevels.levels); let defaultLogLevel = level_enum[0]; if (process.env.NODE_ENV && process.env.NODE_ENV == 'production') { defaultLogLevel = level_enum[Math.floor((level_enum.length - 1) / 2)]; } const logzillaSchema = { "type": "object", "properties": { "logger": { "type": "object", "properties": { "transports": { "type": "array", "items": { "oneOf": [{ "type": "object", "properties": { "type": { "type": "string", "enum": ["console"] }, "level": { "type": "string" }, "enabled": { "type": "boolean" }, "name": { "type": "string" }, "json": { "type": "boolean" }, "colorize": { "type": "boolean" }, "timestamp": { "type": "boolean" } }, "required": ["type"] }, { "type": "object", "properties": { "type": { "type": "string", "enum": ["http"] }, "level": { "type": "string" }, "enabled": { "type": "boolean" }, "host": { "type": "string" }, "port": { "type": "integer" }, "auth": { "type": "object" }, "ssl": { "type": "boolean" } }, "required": ["type"] }, { "type": "object", "properties": { "type": { "type": "string", "enum": ["file"] }, "level": { "type": "string" }, "enabled": { "type": "boolean" }, "json": { "type": "boolean" }, "colorize": { "type": "boolean" }, "timestamp": { "type": "boolean" } }, "required": ["type"] }, { "type": "object", "properties": { "type": { "type": "string", "enum": ["dailyRotateFile"] }, "level": { "type": "string" }, "enabled": { "type": "boolean" }, "json": { "type": "boolean", "default": false }, "colorize": { "type": "boolean" }, "timestamp": { "type": "boolean" }, "datePattern": { "type": "string", "description": "Example: yyyy-MM-ddTHH" }, "filename": { "type": "string", "description": "Example: dailyfile.log" } }, "required": ["type", "filename", "datePattern"] }] } } } } } }; module.exports = { argumentSchema: logzillaSchema, levelDefs: logzillaLevels, defaultLevel: defaultLogLevel };