From 0529c883f118fe9a98382abca3abd928b38d2e33 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Rafael=20L=C3=A1szl=C3=B3?= <rlacko99@gmail.com>
Date: Thu, 22 Oct 2020 17:39:00 +0200
Subject: [PATCH] add logging

---
 package-lock.json | 62 +++++++++++++++++++++++++++++++++++++++++++++++
 package.json      |  4 ++-
 src/index.ts      |  6 +++++
 3 files changed, 71 insertions(+), 1 deletion(-)

diff --git a/package-lock.json b/package-lock.json
index 52cd3429..7d734642 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -944,6 +944,15 @@
         "@types/node": "*"
       }
     },
+    "@types/morgan": {
+      "version": "1.9.1",
+      "resolved": "https://registry.npmjs.org/@types/morgan/-/morgan-1.9.1.tgz",
+      "integrity": "sha512-2j5IKrgJpEP6xw/uiVb2Xfga0W0sSVD9JP9t7EZLvpBENdB0OKgcnoKS8IsjNeNnZ/86robdZ61Orl0QCFGOXg==",
+      "dev": true,
+      "requires": {
+        "@types/node": "*"
+      }
+    },
     "@types/node": {
       "version": "13.7.1",
       "resolved": "https://registry.npmjs.org/@types/node/-/node-13.7.1.tgz",
@@ -1377,6 +1386,23 @@
         }
       }
     },
+    "basic-auth": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.1.tgz",
+      "integrity": "sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==",
+      "dev": true,
+      "requires": {
+        "safe-buffer": "5.1.2"
+      },
+      "dependencies": {
+        "safe-buffer": {
+          "version": "5.1.2",
+          "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+          "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
+          "dev": true
+        }
+      }
+    },
     "bcrypt-pbkdf": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz",
@@ -5071,6 +5097,42 @@
       "resolved": "https://registry.npmjs.org/mongoose-legacy-pluralize/-/mongoose-legacy-pluralize-1.0.2.tgz",
       "integrity": "sha512-Yo/7qQU4/EyIS8YDFSeenIvXxZN+ld7YdV9LqFVQJzTLye8unujAWPZ4NWKfFA+RNjh+wvTWKY9Z3E5XM6ZZiQ=="
     },
+    "morgan": {
+      "version": "1.10.0",
+      "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.10.0.tgz",
+      "integrity": "sha512-AbegBVI4sh6El+1gNwvD5YIck7nSA36weD7xvIxG4in80j/UoK8AEGaWnnz8v1GxonMCltmlNs5ZKbGvl9b1XQ==",
+      "dev": true,
+      "requires": {
+        "basic-auth": "~2.0.1",
+        "debug": "2.6.9",
+        "depd": "~2.0.0",
+        "on-finished": "~2.3.0",
+        "on-headers": "~1.0.2"
+      },
+      "dependencies": {
+        "debug": {
+          "version": "2.6.9",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+          "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+          "dev": true,
+          "requires": {
+            "ms": "2.0.0"
+          }
+        },
+        "depd": {
+          "version": "2.0.0",
+          "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
+          "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
+          "dev": true
+        },
+        "ms": {
+          "version": "2.0.0",
+          "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+          "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
+          "dev": true
+        }
+      }
+    },
     "mpath": {
       "version": "0.6.0",
       "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.6.0.tgz",
diff --git a/package.json b/package.json
index 26390e7a..06c4f3e1 100644
--- a/package.json
+++ b/package.json
@@ -8,7 +8,7 @@
     "start-dev": "nodemon --config \"./nodemon.json\"/",
     "build": "rm -rf ./build/ && tsc",
     "start": "node build/index.js",
-    "dev": "ts-node-dev --respawn src/index.ts"
+    "dev": "NODE_ENV=development ts-node-dev --respawn src/index.ts"
   },
   "author": "DevTeamSCH",
   "license": "GPL-3.0-or-later",
@@ -16,8 +16,10 @@
     "@types/express": "^4.17.2",
     "@types/jest": "^25.1.3",
     "@types/mongoose": "^5.7.1",
+    "@types/morgan": "^1.9.1",
     "@types/node": "^13.7.1",
     "jest": "^25.1.0",
+    "morgan": "^1.10.0",
     "nodemon": "^2.0.2",
     "ts-node": "^8.6.2",
     "tslint": "^6.0.0",
diff --git a/src/index.ts b/src/index.ts
index 3aea492c..c9c1b746 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -6,6 +6,7 @@ import authRoute from "./routes/auth";
 import bodyParser from "body-parser";
 import expressSession from "express-session";
 import mongoose from "mongoose";
+import morgan from "morgan";
 import newsRoute from "./routes/news";
 import usersRoute from "./routes/user";
 
@@ -29,6 +30,11 @@ const app: Application = express();
 
 app.use(bodyParser.json()); // for parsing application/json
 app.use(bodyParser.urlencoded({ extended: true })); // for parsing application/x-www-form-urlencoded
+
+if (process.env.NODE_ENV !== "production") {
+  app.use(morgan("dev"));
+}
+
 app.use(
   expressSession({
     secret: process.env.SESSION_SECRET || "secret",
-- 
GitLab