Преглед изворни кода

Log requests that don't have a route property

The v1 history service has its routes set up via swagger-tools, which
doesn't write a route property on the request. This prevents us to send
request metrics based on the route, but we can still log the request.
Eric Mc Sween пре 6 година
родитељ
комит
d69195eaa9
1 измењених фајлова са 32 додато и 32 уклоњено
  1. 32 32
      libraries/metrics/http.coffee

+ 32 - 32
libraries/metrics/http.coffee

@@ -18,36 +18,36 @@ module.exports.monitor = (logger) ->
 				Metrics.timing("http_request", responseTimeMs, null, {method:req.method, status_code: res.statusCode, path:routePath})
 				Metrics.timing("http_request", responseTimeMs, null, {method:req.method, status_code: res.statusCode, path:routePath})
 				if requestSize
 				if requestSize
 					Metrics.summary("http_request_size_bytes", requestSize, {method:req.method, status_code: res.statusCode, path:routePath})
 					Metrics.summary("http_request_size_bytes", requestSize, {method:req.method, status_code: res.statusCode, path:routePath})
-				remoteIp = req.ip || req.socket?.socket?.remoteAddress || req.socket?.remoteAddress
-				reqUrl = req.originalUrl || req.url
-				referrer = req.headers['referer'] || req.headers['referrer']
-				if STACKDRIVER_LOGGING
-					info =
-						httpRequest:
-							requestMethod: req.method
-							requestUrl: reqUrl
-							requestSize: requestSize
-							status: res.statusCode
-							responseSize: res._headers?["content-length"]
-							userAgent: req.headers["user-agent"]
-							remoteIp: remoteIp
-							referer: referrer
-							latency:
-								seconds: responseTime[0]
-								nanos: responseTime[1]
-							protocol: req.protocol
-				else
-					info =
-						req:
-							url: reqUrl
-							method: req.method
-							referrer: referrer
-							"remote-addr": remoteIp
-							"user-agent": req.headers["user-agent"]
-							"content-length": req.headers["content-length"]
-						res:
-							"content-length": res._headers?["content-length"]
-							statusCode: res.statusCode
-						"response-time": responseTimeMs
-				logger.info(info, "%s %s", req.method, reqUrl)
+			remoteIp = req.ip || req.socket?.socket?.remoteAddress || req.socket?.remoteAddress
+			reqUrl = req.originalUrl || req.url
+			referrer = req.headers['referer'] || req.headers['referrer']
+			if STACKDRIVER_LOGGING
+				info =
+					httpRequest:
+						requestMethod: req.method
+						requestUrl: reqUrl
+						requestSize: requestSize
+						status: res.statusCode
+						responseSize: res._headers?["content-length"]
+						userAgent: req.headers["user-agent"]
+						remoteIp: remoteIp
+						referer: referrer
+						latency:
+							seconds: responseTime[0]
+							nanos: responseTime[1]
+						protocol: req.protocol
+			else
+				info =
+					req:
+						url: reqUrl
+						method: req.method
+						referrer: referrer
+						"remote-addr": remoteIp
+						"user-agent": req.headers["user-agent"]
+						"content-length": req.headers["content-length"]
+					res:
+						"content-length": res._headers?["content-length"]
+						statusCode: res.statusCode
+					"response-time": responseTimeMs
+			logger.info(info, "%s %s", req.method, reqUrl)
 		next()
 		next()