add logger + logger api

This commit is contained in:
lucaspalomodevelop 2022-03-10 18:04:02 +01:00
parent 686982b207
commit 9af4b6e223
7 changed files with 62 additions and 12 deletions

View File

@ -13,6 +13,7 @@
"cookie-parser": "^1.4.6",
"cors": "^2.8.5",
"express": "^4.17.3",
"mocha": "^9.2.1"
"mocha": "^9.2.1",
"moment": "^2.29.1"
}
}

28
src/helper/logger.js Normal file
View File

@ -0,0 +1,28 @@
var fs = require("fs");
var util = require("util");
var moment = require("moment");
let name;
var log_file;
updateData();
var log_stdout = process.stdout;
function updateData() {
name = "log_" + moment().format("YYYY-MM-DD") + ".txt";
log_file = fs.createWriteStream(__dirname + "/../../logs/" + name, {
flags: "a",
});
}
console.log = function (d) {
name = "log_" + moment().format("YYYY-MM-DD") + ".txt";
d = `[ ${moment().format("YYYY-MM-DD HH:mm:ss")}] ${util.format(d)} \n`;
log_file.write(d);
log_stdout.write(d);
};
function getCurrentlog() {
return fs.readFileSync(__dirname + "/../../logs/" + name, "utf8").toString();
// .replace(/\n/g, "<br>");
}
module.exports = { getCurrentlog };

7
src/helper/states.js Normal file
View File

@ -0,0 +1,7 @@
let JssteState = { statusMSG: "could not started JSSTE", status: 1 };
let WebsrvState = { port: undefined, status: undefined };
module.exports = {
JssteState,
WebsrvState,
};

View File

@ -1,3 +1,4 @@
require("./helper/logger");
let conf = require("./helper/conf")();
let websrv = require("./websrv")(conf);

View File

@ -6,6 +6,7 @@ module.exports = function (conf) {
const cookieParser = require("cookie-parser");
const cors = require("cors");
const fs = require("fs");
let State = require("../helper/states").WebsrvState;
const internalRouter = require("./routes/internalRouter");
@ -16,13 +17,18 @@ module.exports = function (conf) {
app.use("/api", internalRouter);
app.slisten = function (cb) {
app.ServerInstance = app.listen(
websrvConfig.port,
websrvConfig.host,
() => {
app.ServerInstance = app
.listen(websrvConfig.port, websrvConfig.host, () => {
State.status = 0;
State.statusMSG = "webserver is running";
State.port = websrvConfig.port;
cb(websrvConfig.host, websrvConfig.port);
}
);
})
.on("error", (err) => {
State.status = 1;
State.statusMSG = "webserver could not started";
console.log(err);
});
};
/**

View File

@ -1,9 +1,8 @@
const conf = require("../../helper/conf")();
const express = require("express");
const router = express.Router();
const jssteState = { statusMSG: "could not started JSSTE", status: 1 };
const websrvState = { port: 5000, status: 1 };
const States = require("../../helper/states");
const logger = require("../../helper/logger");
router.get("/conf", (req, res) => {
console.log(conf);
@ -11,10 +10,13 @@ router.get("/conf", (req, res) => {
});
router.get("/jsste/status", (req, res) => {
res.json(jssteState);
res.json(States.JssteState);
});
router.get("/websrv/status", (req, res) => {
res.json(websrvState);
res.json(States.WebsrvState);
});
router.get("/logs", (req, res) => {
res.json(logger.getCurrentlog());
});
module.exports = router;

View File

@ -615,6 +615,11 @@ mocha@^9.2.1:
yargs-parser "20.2.4"
yargs-unparser "2.0.0"
moment@^2.29.1:
version "2.29.1"
resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.1.tgz#b2be769fa31940be9eeea6469c075e35006fa3d3"
integrity sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==
ms@2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"