From d756ed3e582beb4db3090b4c1b8678a49867bcff Mon Sep 17 00:00:00 2001 From: suseendhiran17 <58357088+suseendhiran17@users.noreply.github.com> Date: Mon, 12 Sep 2022 10:03:06 +0530 Subject: [PATCH] suseendhiran --- app/controllers/test.controller.js | 30 ++++--- app/routes/routes.js | 1 - app/services/test.helper.js | 13 ++- app/views/status.ejs | 126 +++++++++++++++++++++-------- package-lock.json | 15 ++++ package.json | 1 + 6 files changed, 132 insertions(+), 54 deletions(-) diff --git a/app/controllers/test.controller.js b/app/controllers/test.controller.js index 26ce5d3..234632a 100644 --- a/app/controllers/test.controller.js +++ b/app/controllers/test.controller.js @@ -5,18 +5,20 @@ const request = require('request'); + // api status check Api exports.APIstatus = async (req, res) => { try { + token_data = await TestHelper.TokenAPI(); apiArr = [ ]; serverArr = [ ]; + dbArr = [ ]; StatusFailArr = [ ]; - ApiData = JSON.parse(process.env.STATUSARRAY); - token_data = await TestHelper.TokenAPI(); - if (token_data.status == 200) { apiArr.push({ "Api" : "Token Api" , "StatusCode" : token_data.status , "Status" : "Up"}); } - else { apiArr.push({ "Api" : "Token Api" , "StatusCode" : token_data.status , "Status" : "Down"}); StatusFailArr.push(token_data.status) } + ApiData = await JSON.parse(process.env.STATUSARRAY); + if (token_data.status == 200) { apiArr.push({ "Api" : "Token API" , "StatusCode" : token_data.status , "Status" : "Up"}); } + else { apiArr.push({ "Api" : "Token API" , "StatusCode" : token_data.status , "Status" : "Down"}); StatusFailArr.push(token_data.status) } for (const object of ApiData) { reqObj = { }; @@ -28,16 +30,18 @@ exports.APIstatus = async (req, res) => request(reqObj, async function (error, response, body) { if (response.statusCode == 200) { - if (object.type == "api") { apiArr.push({ "Api" : object.name , "StatusCode" : response.statusCode , "Status" : "Up"}); } - else { serverArr.push({ "Api" : object.name , "StatusCode" : response.statusCode , "Status" : "Up"}); } + if (object.type == "api") { apiArr.push({ "Api" : object.name , "StatusCode" : response.statusCode , "Status" : "Up"}); } + if (object.type == "server") { serverArr.push({ "Api" : object.name , "StatusCode" : response.statusCode , "Status" : "Up"}); } + if (object.type == "db") { dbArr.push({ "Api" : object.name , "StatusCode" : response.statusCode , "Status" : "Up"}); } } if (response.statusCode != 200) { - if (object.type == "api") { apiArr.push({ "Api" : object.name , "StatusCode" : response.statusCode , "Status" : "Down"}); StatusFailArr.push(token_data.status) } - else { serverArr.push({ "Api" : object.name , "StatusCode" : response.statusCode , "Status" : "Down"}); StatusFailArr.push(token_data.status) } + if (object.type == "api") { apiArr.push({ "Api" : object.name , "StatusCode" : response.statusCode , "Status" : "Down"}); StatusFailArr.push(response.statusCode) } + if (object.type == "server") { serverArr.push({ "Api" : object.name , "StatusCode" : response.statusCode , "Status" : "Down"}); StatusFailArr.push(response.statusCode) } + if (object.type == "db") { dbArr.push({ "Api" : object.name , "StatusCode" : response.statusCode , "Status" : "Down"}); StatusFailArr.push(response.statusCode) } } - if (ApiData.length + 1 == apiArr.length + serverArr.length) { - await TestHelper.HTML( req , res , apiArr , serverArr , StatusFailArr ); + if (ApiData.length + 1 == apiArr.length + serverArr.length + dbArr.length) { + await TestHelper.HTML( req , res , apiArr , serverArr , dbArr , StatusFailArr ); } }) }; @@ -60,10 +64,10 @@ exports.SingleApiStatus = async (req, res) => ApiName = req.body.api; ApiData = JSON.parse(process.env.STATUSARRAY); token_data = await TestHelper.TokenAPI(); - if (ApiName == "Token Api") + if (ApiName == "Token API") { - if (token_data.status == 200) { res.send({ "Api" : "Token Api" , "StatusCode" : token_data.status , "Status" : "Up" , "success" : true}) } - else { res.send({ "Api" : "Token Api" , "StatusCode" : token_data.status , "Status" : "Down" , "success" : true}) } + if (token_data.status == 200) { res.send({ "Api" : "Token API" , "StatusCode" : token_data.status , "Status" : "Up" , "success" : true}) } + else { res.send({ "Api" : "Token API" , "StatusCode" : token_data.status , "Status" : "Down" , "success" : true}) } } else { diff --git a/app/routes/routes.js b/app/routes/routes.js index cdd406d..3e4ec00 100644 --- a/app/routes/routes.js +++ b/app/routes/routes.js @@ -16,7 +16,6 @@ module.exports = app => { - // routes started here app.use('/api', router); diff --git a/app/services/test.helper.js b/app/services/test.helper.js index 8162d06..ded4129 100644 --- a/app/services/test.helper.js +++ b/app/services/test.helper.js @@ -23,33 +23,32 @@ function TokenAPI() } } -function HTML( req , res , apiStatusArr , serverStatusArr , apiFailStatusArr ) + +function HTML( req , res , apiStatusArr , serverStatusArr , dbStatusArr , apiFailStatusArr ) { try { date = new Date().toLocaleTimeString(); if (apiFailStatusArr.length == 0) { - res.render( 'status' , { data : apiStatusArr , data1 : serverStatusArr , down : 0 , date : date } , function (err, html ) { + res.render( 'status' , { data : apiStatusArr , data1 : serverStatusArr , data2 : dbStatusArr , down : 0 , date : date } , function (err, html ) { res.send(html) }) } else { - res.render( 'status' , { data : apiStatusArr , data1 : serverStatusArr , down : 1 , date : date } , function (err, html ) { + res.render( 'status' , { data : apiStatusArr , data1 : serverStatusArr , data2 : dbStatusArr , down : 1 , date : date } , function (err, html ) { res.send(html) }) - } + } } catch (error) { console.log(error); } } - module.exports = { TokenAPI : TokenAPI, - HTML : HTML - + HTML : HTML } \ No newline at end of file diff --git a/app/views/status.ejs b/app/views/status.ejs index a20b3b8..a8dff8f 100644 --- a/app/views/status.ejs +++ b/app/views/status.ejs @@ -3,32 +3,25 @@ + + + + + + Status <% if ( down == 0) { %> @@ -220,7 +247,7 @@
-

Service status

+

Service Status

Last updated <%=date %>
@@ -236,12 +263,12 @@ <% } %>
-

Api Services

+

API Services

- + @@ -249,8 +276,8 @@ <% data.forEach(function(status , index ) { %> - - + + - + <% }) %> @@ -279,8 +306,8 @@ <% data1.forEach(function(status , index ) { %> - - + + - + + + + <% }) %> +
ApiAPI StatusCode Status Refresh
<%=status.Api %>
<%=status.Api %>
<%=status.StatusCode %> <% if( status.Status == "Up") { %> @@ -260,7 +287,7 @@ <%=status.Status %> <% } %> RefreshRefresh
<%=status.Api %>
<%=status.Api %>
<%=status.StatusCode %> <% if( status.Status == "Up") { %> @@ -290,7 +317,37 @@ <%=status.Status %> <% } %> RefreshRefresh
+
+

Database Services

+
+ + + + + + + + + + <% data2.forEach(function(status , index ) { %> + + + + + + <% }) %> @@ -309,7 +366,10 @@ success: function(response) { if (response.success == true) { - alert(response.Api+" called"); + alertify.alert(response.Api+" called", () => { + // alertify.message('OK'); + }).set('title', 'Status') + // alert(response.Api+" called"); if (response.Status == "Up") { var success = ''+response.Status+'' diff --git a/package-lock.json b/package-lock.json index 6ad0e64..129327a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -22,6 +22,7 @@ "sequelize": "^6.6.5", "swagger-jsdoc": "^6.1.0", "swagger-ui-express": "^4.1.6", + "sweetalert2": "^11.4.32", "winston": "^3.3.3", "winston-daily-rotate-file": "^4.5.5" }, @@ -10676,6 +10677,15 @@ "express": ">=4.0.0" } }, + "node_modules/sweetalert2": { + "version": "11.4.32", + "resolved": "https://registry.npmjs.org/sweetalert2/-/sweetalert2-11.4.32.tgz", + "integrity": "sha512-fcXWPzWjqYoLqlfPLL4GHpZDZr4Lm7opkaADKAD1LDM4KHJ5ZHN/8/Les5HWP7+yl+0mrqHHkbsSxjXdvDHHlg==", + "funding": { + "type": "individual", + "url": "https://sweetalert2.github.io/#donations" + } + }, "node_modules/tapable": { "version": "0.2.9", "resolved": "https://registry.npmjs.org/tapable/-/tapable-0.2.9.tgz", @@ -21473,6 +21483,11 @@ "swagger-ui-dist": ">=4.1.3" } }, + "sweetalert2": { + "version": "11.4.32", + "resolved": "https://registry.npmjs.org/sweetalert2/-/sweetalert2-11.4.32.tgz", + "integrity": "sha512-fcXWPzWjqYoLqlfPLL4GHpZDZr4Lm7opkaADKAD1LDM4KHJ5ZHN/8/Les5HWP7+yl+0mrqHHkbsSxjXdvDHHlg==" + }, "tapable": { "version": "0.2.9", "resolved": "https://registry.npmjs.org/tapable/-/tapable-0.2.9.tgz", diff --git a/package.json b/package.json index b7bb52c..f442424 100644 --- a/package.json +++ b/package.json @@ -22,6 +22,7 @@ "sequelize": "^6.6.5", "swagger-jsdoc": "^6.1.0", "swagger-ui-express": "^4.1.6", + "sweetalert2": "^11.4.32", "winston": "^3.3.3", "winston-daily-rotate-file": "^4.5.5" },
DatabaseStatusCodeStatusRefresh
<%=status.Api %>
<%=status.StatusCode %> + <% if( status.Status == "Up") { %> + <%=status.Status %> + <% } %> + <% if( status.Status == "Down") { %> + <%=status.Status %> + <% } %> + Refresh