implemented new logging system in first iteration

This commit is contained in:
2025-12-31 11:26:44 -05:00
parent 46988f1921
commit d101bf9686
9 changed files with 56 additions and 49 deletions

View File

@@ -1,9 +1,11 @@
import dotenv = require('dotenv');
dotenv.config();
dotenv.config({ quiet: true });
import express = require('express');
import cors = require('cors');
import morgan = require('morgan');
import { logger, LogHeader, LogPayload } from './services/logging/logger';
const app = express()
app.use(morgan((tokens: morgan.TokenIndexer, req: express.Request, res: express.Response) => {
@@ -29,26 +31,10 @@ app.use(morgan((tokens: morgan.TokenIndexer, req: express.Request, res: express.
}
logger.log(head.level, head.type, payload.message, payload.data, head.depth)
// {
// type: 'http',
// timestamp: new Date().toISOString(),
// method: tokens.method(req, res),
// path: tokens.url(req, res),
// status: Number(tokens.status(req, res)),
// response_time_ms: Number(tokens['response-time'](req, res)),
// ip: req.ip,
// user_agent: req.headers['user-agent'],
// user: req.user
// ? { id: req.user.id, name: req.user.name }
// : null,
// }
return '';
}, {
skip: (req: express.Request) => {
return req.originalUrl === '/members/me';
return req.originalUrl === '/members/me' || req.originalUrl === '/ping';
}
}))
@@ -66,14 +52,13 @@ const port = process.env.SERVER_PORT;
//glitchtip setup
import sentry = require('@sentry/node');
if (process.env.DISABLE_GLITCHTIP === "true") {
console.log("Glitchtip disabled")
logger.info('app', 'Glitchtip disabled', null, 'normal')
} else {
let dsn = process.env.GLITCHTIP_DSN;
let release = process.env.APPLICATION_VERSION;
let environment = process.env.APPLICATION_ENVIRONMENT;
console.log(release, environment)
sentry.init({ dsn: dsn, release: release, environment: environment, integrations: [sentry.captureConsoleIntegration({ levels: ['error'] })] });
console.log("Glitchtip initialized");
logger.info('app', 'Glitchtip initialized', null, 'normal')
}
//session setup
@@ -112,7 +97,6 @@ import { roles, memberRoles } from './routes/roles';
import { courseRouter, eventRouter } from './routes/course';
import { calendarRouter } from './routes/calendar';
import { docsRouter } from './routes/docs';
import { logger, LogHeader, LogPayload } from './services/logging/logger';
app.use('/application', applicationRouter);
app.use('/ranks', ranks);
@@ -134,5 +118,5 @@ app.get('/ping', (req, res) => {
});
app.listen(port, () => {
console.log(`Example app listening on port ${port} `)
logger.info('app', `Example app listening on port ${port} `)
})