UNPKG

nestjs-security-module

Version:

A plug-and-play NestJS security module with CORS, Helmet, rate limiting, audit logging, CSP, XSS sanitization, and more.

36 lines (31 loc) 926 B
import * as morgan from 'morgan'; import * as fs from 'fs'; import * as path from 'path'; import { RequestHandler } from 'express'; // logs klasörünü oluştur const logDirectory = path.join(process.cwd(), 'logs'); if (!fs.existsSync(logDirectory)) { fs.mkdirSync(logDirectory); } // log dosyasını hazırla const accessLogStream = fs.createWriteStream( path.join(logDirectory, 'access.log'), { flags: 'a' }, ); // log formatı (IP + method + path + status + süre) const logFormat = '[:date[iso]] :remote-addr :method :url :status - :response-time ms'; export function createAuditLogMiddleware(): RequestHandler { return morgan(logFormat, { stream: { write: (message) => { accessLogStream.write(message); if (process.env.NODE_ENV === 'test') { console.log('[AuditLog]', message); } else { process.stdout.write(message); } }, }, }); }