@falsy/logger
Advanced tools
Comparing version
| export {}; |
@@ -34,3 +34,7 @@ "use strict"; | ||
| }; | ||
| var __importDefault = (this && this.__importDefault) || function (mod) { | ||
| return (mod && mod.__esModule) ? mod : { "default": mod }; | ||
| }; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| const dgram_1 = __importDefault(require("dgram")); | ||
| const fputils_1 = require("fputils"); | ||
@@ -161,2 +165,26 @@ const fs = __importStar(require("fs")); | ||
| })); | ||
| /** This test cannot be used now, because winston syslogger does not close its UDP connection after logger use.*/ | ||
| xit('successfully sends logs to syslog when syslog config provided.', () => __awaiter(void 0, void 0, void 0, function* () { | ||
| const logger = () => (0, index_1.getLogger)({ hostname: 'hostname', directory: tmpFolder, serviceName: 'test-app', level: 'info', environment: 'test', syslogServer: 'localhost', syslogPort: 10514 }); | ||
| let socketHasStarted = false; | ||
| const socket = dgram_1.default.createSocket('udp4'); | ||
| let syslogMessage = ''; | ||
| socket.on('message', (msg) => { | ||
| syslogMessage = msg.toString(); | ||
| }); | ||
| socket.on('listening', () => { | ||
| socketHasStarted = true; | ||
| logger().audit('trace2', 'user', 'syslog-message', 'message to syslog', {}); | ||
| }); | ||
| socket.bind(10514); | ||
| while (!socketHasStarted) { | ||
| yield delay(); | ||
| } | ||
| socket.close(); | ||
| const [timestamp, ...rest] = yield readLog(); | ||
| expect(timestamp.startsWith(today())).toBe(true); | ||
| expect(rest).toEqual(['test', 'hostname', '0', 'trace2', 'test-app', 'audit', 'user', 'syslog-message', 'message to syslog', `{}${os_1.EOL}`]); | ||
| const [syslogTimestamp, ...syslogRest] = syslogMessage.split('|'); | ||
| expect(syslogRest).toEqual(['test', 'hostname', '0', 'trace2', 'test-app', 'audit', 'user', 'syslog-message', 'message to syslog', `{}`]); | ||
| })); | ||
| }); |
| export {}; |
@@ -0,0 +0,0 @@ "use strict"; |
@@ -0,0 +0,0 @@ import { IConfig, ILogger } from './interfaces'; |
@@ -28,2 +28,3 @@ "use strict"; | ||
| __exportStar(require("./utils"), exports); | ||
| const winston_syslog_1 = require("winston-syslog"); | ||
| const auditFormat = (props) => { | ||
@@ -38,3 +39,3 @@ var _a; | ||
| props.service, | ||
| props.level, | ||
| 'audit', | ||
| props.user, | ||
@@ -69,3 +70,3 @@ props.displayName, | ||
| */ | ||
| const isAuditLevel = (level) => level.includes('audit'); | ||
| const isAuditLevel = (level) => level.includes('notice'); | ||
| const customFormat = winston_1.format.printf((props) => (isAuditLevel(props.level) ? auditFormat(props) : commonFormat(props))); | ||
@@ -76,3 +77,3 @@ const customLevels = { | ||
| warn: 1, | ||
| audit: 2, | ||
| notice: 2, | ||
| info: 3, | ||
@@ -84,3 +85,3 @@ debug: 4, | ||
| warn: 'yellow', | ||
| audit: 'blue', | ||
| notice: 'blue', | ||
| info: 'green', | ||
@@ -110,3 +111,10 @@ debug: 'grey', | ||
| handleExceptions: true, | ||
| }), config.directory)); | ||
| }), config.directory), (0, utils_1.appendWhen)(() => new winston_syslog_1.Syslog({ | ||
| host: config.syslogServer, | ||
| port: config.syslogPort, | ||
| protocol: 'udp', | ||
| type: '5424', | ||
| level: config.level || 'info', | ||
| handleExceptions: true, | ||
| }), config.syslogServer && config.syslogPort)); | ||
| /** | ||
@@ -141,5 +149,5 @@ * Vrátí logger modul | ||
| error: (0, fputils_1.curry)((traceId, functionName, message, error) => logger.log('error', message, { traceId, functionName, error })), | ||
| audit: (0, fputils_1.curry)((traceId, user, displayName, message, data) => logger.log('audit', message, { traceId, user, data, displayName })), | ||
| audit: (0, fputils_1.curry)((traceId, user, displayName, message, data) => logger.log('notice', message, { traceId, user, data, displayName })), | ||
| }; | ||
| }; | ||
| exports.getLogger = getLogger; |
@@ -95,2 +95,10 @@ import { Optional } from 'fputils'; | ||
| buildVersion?: string; | ||
| /** | ||
| * Adresa syslog serveru | ||
| */ | ||
| syslogServer?: string; | ||
| /** | ||
| * Port syslog serveru | ||
| */ | ||
| syslogPort?: number; | ||
| } |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); |
| import { ILogger } from './interfaces'; | ||
| export declare const loggerMocked: ILogger; |
@@ -0,0 +0,0 @@ "use strict"; |
@@ -0,0 +0,0 @@ import { Optional } from 'fputils'; |
@@ -0,0 +0,0 @@ "use strict"; |
| { | ||
| "name": "@falsy/logger", | ||
| "version": "3.0.4", | ||
| "version": "3.0.5", | ||
| "packageManager": "yarn@3.0.1", | ||
@@ -17,3 +17,3 @@ "main": "build/index.js", | ||
| "build": "yarn build:code && yarn build:docs", | ||
| "test": "jest", | ||
| "test": "jest --runInBand", | ||
| "testWithCoverage": "jest --ci --reporters=default --reporters=jest-junit --coverage --coverageReporters=cobertura" | ||
@@ -26,2 +26,3 @@ }, | ||
| "@types/winston": "^2.4.4", | ||
| "@types/winston-syslog": "^2.4.0", | ||
| "jest": "^27.5.1", | ||
@@ -37,4 +38,5 @@ "jest-junit": "^13.0.0", | ||
| "winston": "^3.8.1", | ||
| "winston-daily-rotate-file": "^4.7.1" | ||
| "winston-daily-rotate-file": "^4.7.1", | ||
| "winston-syslog": "^2.6.0" | ||
| } | ||
| } |
Network access
Supply chain riskThis module accesses the network.
Found 1 instance in 1 package
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
27298
11.28%556
8.59%5
25%10
11.11%2
Infinity%+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added