Compare commits

..

No commits in common. "9ed80a8bea1c0a095c9f6cadc93c3d2f7b3d18fa" and "ce592d5cc153ebe1fa2189df26b25528eb09a155" have entirely different histories.

6 changed files with 38 additions and 26 deletions

View File

@ -1,4 +1,4 @@
FROM node:latest as builder
FROM node:20 as builder
WORKDIR /usr/src/app
COPY ./package*.json ./
COPY ./.npmrc ./

13
package-lock.json generated
View File

@ -21,6 +21,7 @@
"mongodb": "^4.13.0",
"nodemailer": "^6.9.1",
"pino": "^8.15.1",
"pino-http": "^8.5.0",
"redis": "^4.6.7",
"zlib": "^1.0.5"
},
@ -4365,7 +4366,6 @@
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
"integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
"dev": true,
"engines": {
"node": "6.* || 8.* || >= 10.*"
}
@ -6289,6 +6289,17 @@
"split2": "^4.0.0"
}
},
"node_modules/pino-http": {
"version": "8.5.0",
"resolved": "https://registry.npmjs.org/pino-http/-/pino-http-8.5.0.tgz",
"integrity": "sha512-kLGKNLyfWfdmrG1Ug0YdYpCTGbNcuD/YGC3g+elRU/Cm44UTs+tj/dZTxDN3bYauekxFxdLZhJuZdKKl0cml9w==",
"dependencies": {
"get-caller-file": "^2.0.5",
"pino": "^8.0.0",
"pino-std-serializers": "^6.0.0",
"process-warning": "^2.0.0"
}
},
"node_modules/pino-std-serializers": {
"version": "6.2.2",
"resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-6.2.2.tgz",

View File

@ -28,6 +28,7 @@
"mongodb": "^4.13.0",
"nodemailer": "^6.9.1",
"pino": "^8.15.1",
"pino-http": "^8.5.0",
"redis": "^4.6.7",
"zlib": "^1.0.5"
},

View File

@ -16,16 +16,16 @@ const db = client.db(dbName);
async function query(collection, query, returnId = false) {
await client.connect();
logger.logger.trace(`dbAccess.query: Connecting to collection: '${collection}'`)
logger.logger.debug(`dbAccess.query: Connecting to collection: '${collection}'`)
var qcoll = db.collection(collection);
var qcursor = qcoll.find(query);
if (!returnId) {
qcursor.project({ _id: 0 });
}
logger.logger.trace(query, "dbAccess.query: Runnung Query")
logger.logger.debug(query, "dbAccess.query: Runnung Query")
increment(collection);
let result = await qcursor.toArray();
logger.logger.trace(result, "dbAccess.query: Response");
logger.logger.debug(result, "dbAccess.query: Response");
return result;
}

View File

@ -1,12 +1,11 @@
// Parse and return an LDB Request
const log = require("../utils/logs.utils"); // Log Helper
const ldb = require("ldbs-json");
const util = require("../utils/ldb.utils");
const san = require("../utils/sanitizer.utils");
const db = require("../services/dbAccess.services");
import { logger } from "../utils/logger.utils";
import { transform as staffStationTransform } from "../utils/translators/ldb/staffStation";
import { msgCodes } from "../configs/errorCodes.configs";
@ -18,7 +17,7 @@ async function get(id, staff = false) {
const obj = await util.checkCrs(cleanId);
try {
const crs = obj[0]["3ALPHA"];
logger.debug(`ldbService.get: Determined CRS for lookup to be: ${crs}`)
log.out(`ldbService.get: Determined CRS for lookup to be: ${crs}`, "info");
if (staff) {
const data = arrDepBoardStaff(crs);
db.increment("ldbsvws");
@ -29,7 +28,7 @@ async function get(id, staff = false) {
return await data;
}
} catch (err) {
logger.error(err, "ldbService.get: Error, Unable to find CRS")
log.out(`ldbService.get: Error, Unable to find CRS: ${err}`, "info");
return {
obStatus: "LOC_NOT_FOUND",
obMsg: "UNABLE TO FIND MESSAGE",
@ -38,7 +37,7 @@ async function get(id, staff = false) {
}
async function arrDepBoard(CRS) {
logger.trace(`ldbService.arrDepBoard: Trying to fetch board for ${CRS}`)
log.out(`ldbService.arrDepBoard: Trying to fetch board for ${CRS}`, "info");
try {
const options = {
numRows: 10,
@ -48,7 +47,7 @@ async function arrDepBoard(CRS) {
let d = await api.call("GetArrDepBoardWithDetails", options, false, false);
return await util.cleanData(d);
} catch (err) {
logger.error(err, "ldbService.arrDepBoard: Lookup Failed")
log.out(`ldbService.arrDepBoard: Lookup Failed for: ${CRS}`, "warn");
return {
GetStationBoardResult: "not available",
Reason: `The CRS code ${CRS} is not valid`,
@ -57,7 +56,7 @@ async function arrDepBoard(CRS) {
}
async function arrDepBoardStaff(CRS) {
logger.debug(`ldbService.arrDepBoardStaff: Try to fetch board for ${CRS}`)
log.out(`ldbService.arrDepBoardStaff: Try to fetch board for ${CRS}`, "dbug");
try {
const options = {
numRows: 40,
@ -75,24 +74,23 @@ async function arrDepBoardStaff(CRS) {
false,
false
);
console.log("\n\n\nORIGINAL DATA")
console.log("\n" + JSON.stringify(result) + "\n\n\n")
console.timeEnd(`Fetch Staff LDB for ${CRS.toUpperCase()}`);
try {
const _staffLdb = staffStationTransform(result);
logger.debug("StaffLDB Transformed")
logger.trace(_staffLdb, "StaffLDB Transformed")
console.log("Transformation Test Successful");
console.log(JSON.stringify(_staffLdb));
return {
obStatus: "OK",
obMsg: "OK",
data: _staffLdb,
};
} catch (err) {
logger.error(err, "Transformation Error")
console.log("Transformation Test Failed: " + err);
}
return result;
} catch (err) {
logger.error(err, "ldbService.arrDepBoardStaff error")
log.out(`ldbService.arrDepBoardStaff: Lookup Failed for: ${CRS}`, "warn");
log.out(`ldbService.arrDepBoardStaff: ${err}`);
return {
GetStationBoardResult: "not available",
Reason: `The CRS code ${CRS} is not valid`,
@ -101,7 +99,7 @@ async function arrDepBoardStaff(CRS) {
}
async function getServiceByRID(rid) {
logger.debug(`ldbService.getServiceByRID: Finding RID: ${rid}`);
log.out(`ldbService.getServiceByRID: Finding RID: ${rid}`, "dbug");
try {
const options = {
rid: String(rid),
@ -109,12 +107,12 @@ async function getServiceByRID(rid) {
const api = new ldb(ldbsvKey, true);
return await api.call("GetServiceDetailsByRID", options, false, false);
} catch (err) {
logger.error(err, `ldbService.queryService`);
log.out(`ldbService.queryService: ${err}`, "EROR");
}
}
async function getServicesByOther(id) {
logger.debug(`ldbService.getServiceByOther: Finding services: ${id}`);
log.out(`ldbService.getServiceByOther: Finding services: ${id}`, "dbug");
try {
const options = {
serviceID: id,
@ -123,30 +121,30 @@ async function getServicesByOther(id) {
const api = new ldb(ldbsvKey, true);
return await api.call("QueryServices", options, false, false);
} catch (err) {
logger.error(err, "ldbService.getServiceByOther")
log.out(`ldbService.getServiceByOther: Error: ${err}`, "EROR");
return false;
}
}
async function getReasonCodeList() {
logger.debug("ldbService.getReasonCodeList: Fetching reason code list")
log.out("ldbService.getReasonCodeList: Fetching reason code list", "eror");
try {
const dbFilter = {};
return await db.query("reasonCodes", dbFilter, false);
} catch (err) {
logger.error(err, "ldbService.getReasonCodeList")
log.out(`ldbService.getReasonCodeList: ${err}`, "eror");
}
}
async function getReasonCode(code) {
logger.debug(`ldbService.getReasonCode: Fetching reason code ${code}`);
log.out(`ldbService.getReasonCode: Fetching reason code ${code}`, "dbug");
try {
const dbFilter = {
code: code,
};
return await db.query("reasonCodes", dbFilter, false);
} catch (err) {
logger.error(err, "ldbService.getReasonCode")
log.out(`ldbService.getReasonCode: ${err}`, "eror");
}
}

View File

@ -8,6 +8,8 @@ let level: string
level = "debug"
}
console.log(`Runtime mode: ${runtime || "dev"}, Log Level: ${level}`)
export const logger = pino({
level: level,
formatters: {