node.js健壮性问题及打印错误日志

xiaoxiao2021-02-28  101

var moment = require('moment'); var express = require('express'); var bodyparser = require('body-parser'); var app = express(); //var router = express.Router(); var mysql = require('mysql'); var querystring = require('querystring'); var port = process.env.PORT || 8080; var domain = require('domain'); var d = domain.create(); app.use(bodyparser.urlencoded({ extended: true })); //本地请求跨域 app.all('*', function(req, res, next) { res.header("Access-Control-Allow-Origin", "*"); res.header("Access-Control-Allow-Headers", "X-Requested-With"); res.header("Access-Control-Allow-Methods", "PUT,POST,GET,DELETE,OPTIONS"); res.header("X-Powered-By", ' 3.2.1') res.header("Content-Type", "application/json;charset=utf-8"); next(); }); var mysql = require('mysql'); //打印错误日志 var log4js = require('log4js'); //注意log4js的module位置引用是否正确 //log the cheese logger messages to a file, and the console ones as well. //通过configure()配置log4js log4js.configure({ appenders: { cheeseLogs: { type: 'file', filename: 'cheese.log' }, console: { type: 'console' } }, categories: { cheese: { appenders: ['cheeseLogs'], level: 'error' }, another: { appenders: ['console'], level: 'info' }, default: { appenders: ['console', 'cheeseLogs'], level: 'trace' } } }); const logger = log4js.getLogger('anotner'); //应用级路由 //--------------------------------------新版WIFI运营监控-------------------------------------- d.on('error', function(err) { console.log("68行" + err); }); d.run(function() { app.post("/newwifi", function(req, res) { var connection = mysql.createConnection({ host: '10.1.0.25', user: 'mysql', password: 'mysql123', port: '3306', database: 'wifi20dw' }); d.on('error', function(err) { console.log("80行" + err); }); d.run(function() { connection.connect(); }); var begintime = moment(req.body.begintime, "MM/DD/YYYY").format('YYYY-MM-DD'); var endtime = moment(req.body.endtime, "MM/DD/YYYY").format('YYYY-MM-DD'); let getList = "select WIFINO,DATE_FORMAT(min(mindaytime),'%Y-%m-%d %T') as `MIN TIME`,DATE_FORMAT(max(maxdaytime),'%Y-%m-%d %T') as `MAX TIME` from wifi20dw.wifidaystatic where recday between '" + begintime + "' and '" + endtime + "' group by wifino"; connection.query(getList, function(err, rows, fields) { if(err) { logger.info("90行" + err); } logger.info(rows); var a = rows; var obj = { data: [], cols: [] } var ending = false; a.forEach(function(v, i) { var arr = [] for(var i in v) { arr.push(v[i]); if(ending == false) { obj.cols.push({ title: i }); } } ending = true; obj.data.push(arr); }); res.send(obj); }); connection.end(function(err) { if(err) { console.log("118行"+err); } else { console.log("断开连接"); } }); }); }); //var newwifi = require('../../routes/newwifi'); //app.use('/newwifi', newwifi); //--------------------------------------新版路由器功能监控-------------------------------------- d.on('error', function(err) { console.log(err); }); d.run(function() { app.post("/newroutermon", function(req, res) { var connection = mysql.createConnection({ host: '10.1.0.25', user: 'mysql', password: 'mysql123', port: '3306', database: 'wifi20dw' }); d.on('error', function(err) { console.log("145行" + err); }); d.run(function() { connection.connect(); }); let getList = "select wifino,DATE_FORMAT(maxdaytime,'%Y-%m-%d %T')as maxdaytime,TIMESTAMPDIFF(DAY,now(),maxdaytime) as DIFFDAYS from wifi20dw.wifidaystatic group by wifino order by DIFFDAYS desc;"; connection.query(getList, function(err, rows, fields) { if(err) { logger.info(err); } logger.info(rows); var a = rows; var obj = { data: [], cols: [] } var ending = false; a.forEach(function(v, i) { var arr = [] for(var i in v) { arr.push(v[i]); if(ending == false) { obj.cols.push({ title: i }); } } ending = true; obj.data.push(arr); }); res.send(obj); }); connection.end(function(err) { if(err) { console.log("180行"+err); } else { console.log("断开连接"); } }); }); }); //--------------------------------------旧版WIFI运营监控-------------------------------------- d.on('error', function(err) { console.log(err); }); d.run(function() { app.post("/oldwifi", function(req, res) { var connection = mysql.createConnection({ host: '10.1.0.25', user: 'mysql', password: 'mysql123', port: '3306', database: 'wifi20dw' }); d.on('error', function(err) { console.log("203行" + err); }); d.run(function() { connection.connect(); }); var begintime = moment(req.body.begintime, "MM/DD/YYYY").format('YYYY-MM-DD'); var endtime = moment(req.body.endtime, "MM/DD/YYYY").format('YYYY-MM-DD'); let getList = "select WIFINO,DATE_FORMAT(min(mindaytime),'%Y-%m-%d %T') as `MIN TIME`,DATE_FORMAT(max(maxdaytime),'%Y-%m-%d %T') as `MAX TIME` from wifi20dw.wifidaystatv1 where recday between '" + begintime + "' and '" + endtime + "' group by wifino"; connection.query(getList, function(err, rows, fields) { if(err) { logger.info(err); } logger.info(rows); var a = rows; var obj = { data: [], cols: [] } var ending = false; a.forEach(function(v, i) { var arr = [] for(var i in v) { arr.push(v[i]); if(ending == false) { obj.cols.push({ title: i }); } } ending = true; obj.data.push(arr); }); res.send(obj); }); connection.end(function(err) { if(err) { console.log("242行"+err); } else { console.log("断开连接"); } }); }); }); //--------------------------------------旧版路由器功能监控-------------------------------------- d.on('error', function(err) { console.log(err); }); d.run(function() { app.post("/oldroutermon", function(req, res) { var connection = mysql.createConnection({ host: '10.1.0.25', user: 'mysql', password: 'mysql123', port: '3306', database: 'wifi20dw' }); d.on('error', function(err) { console.log("145行" + err); }); d.run(function() { connection.connect(); }); let getList = "select wifino,DATE_FORMAT(maxdaytime,'%Y-%m-%d %T')as maxdaytime,TIMESTAMPDIFF(DAY,now(),maxdaytime) as DIFFDAYS from wifi20dw.wifidaystatv1 group by wifino order by DIFFDAYS desc;"; connection.query(getList, function(err, rows, fields) { if(err) { logger.info(err); } logger.info(rows); var a = rows; var obj = { data: [], cols: [] } var ending = false; a.forEach(function(v, i) { var arr = [] for(var i in v) { arr.push(v[i]); if(ending == false) { obj.cols.push({ title: i }); } } ending = true; obj.data.push(arr); }); res.send(obj); }); connection.end(function(err) { if(err) { console.log("180行"+err); } else { console.log("断开连接"); } }); }); }); //端口监听 app.listen(8282);
转载请注明原文地址: https://www.6miu.com/read-51564.html

最新回复(0)