提交 a1355cf19957160a8249563a4d89ab70f8297e02

作者 Nick Baugh
1 个父辈 ff3c5eee

Release 0.0.4-rc.6

1 1
2 // # boot - error handler 2 // # boot - error handler
3 3
  4 +var mergeDefaults = require('merge-defaults')
4 var _ = require('underscore') 5 var _ = require('underscore')
5 var util = require('util') 6 var util = require('util')
6 7
@@ -67,13 +68,6 @@ exports = module.exports = function(logger, settings) { @@ -67,13 +68,6 @@ exports = module.exports = function(logger, settings) {
67 68
68 // set error level 69 // set error level
69 var level = (res.statusCode < 500) ? 'warn' : 'error' 70 var level = (res.statusCode < 500) ? 'warn' : 'error'
70 - logger[level](error)  
71 -  
72 - // set error back to warning if it was warn  
73 - // logger level type = "warn"  
74 - // req.flash messages type = "warning"  
75 - if (level === 'warn')  
76 - level = 'warning'  
77 71
78 // if we have a mongoose validation err 72 // if we have a mongoose validation err
79 // then we know to output all the errors 73 // then we know to output all the errors
@@ -92,7 +86,10 @@ exports = module.exports = function(logger, settings) { @@ -92,7 +86,10 @@ exports = module.exports = function(logger, settings) {
92 res.send(error.message) 86 res.send(error.message)
93 }, 87 },
94 html: function() { 88 html: function() {
95 - req.flash(level, error.message) 89 + // set error back to warning if it was warn
  90 + // logger level type = "warn"
  91 + // req.flash messages type = "warning"
  92 + req.flash(level === 'warn' ? 'warning' : level, error.message)
96 res.redirect('back') 93 res.redirect('back')
97 }, 94 },
98 json: function() { 95 json: function() {
@@ -100,6 +97,17 @@ exports = module.exports = function(logger, settings) { @@ -100,6 +97,17 @@ exports = module.exports = function(logger, settings) {
100 } 97 }
101 }) 98 })
102 99
  100 + if (_.isObject(req.log)) {
  101 + req.log.response_time = new Date().getTime() - req.log.response_time
  102 + req.log.status = res.statusCode
  103 + req.log.response_type = res.get('Content-Type')
  104 + req.log.response_body = error
  105 + } else {
  106 + req.log = error
  107 + }
  108 +
  109 + logger[level](req.log)
  110 +
103 }) 111 })
104 112
105 } 113 }
1 { 1 {
2 "name": "igloo", 2 "name": "igloo",
3 - "version": "0.0.4-rc.5", 3 + "version": "0.0.4-rc.6",
4 "description": "Igloo is a lightweight, fast, and minimal framework for rapid development", 4 "description": "Igloo is a lightweight, fast, and minimal framework for rapid development",
5 "main": "./lib", 5 "main": "./lib",
6 "repository": { 6 "repository": {
注册登录 后发表评论