Skip to content

Commit d0a720e

Browse files
committed
Added responseTime to the LoggingFilter
1 parent 220e805 commit d0a720e

File tree

1 file changed

+30
-30
lines changed

1 file changed

+30
-30
lines changed

api/src/main/java/com/capitalone/dashboard/logging/LoggingFilter.java

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,15 @@
11
package com.capitalone.dashboard.logging;
22

33

4-
import static org.springframework.http.MediaType.APPLICATION_JSON_VALUE;
5-
6-
import java.io.BufferedReader;
7-
import java.io.ByteArrayInputStream;
8-
import java.io.ByteArrayOutputStream;
9-
import java.io.IOException;
10-
import java.io.InputStream;
11-
import java.io.InputStreamReader;
12-
import java.io.OutputStream;
13-
import java.io.OutputStreamWriter;
14-
import java.io.PrintWriter;
15-
import java.util.Arrays;
16-
import java.util.Collection;
17-
import java.util.Enumeration;
18-
import java.util.HashMap;
19-
import java.util.List;
20-
import java.util.Locale;
21-
import java.util.Map;
4+
import com.capitalone.dashboard.model.RequestLog;
5+
import com.capitalone.dashboard.repository.RequestLogRepository;
6+
import com.capitalone.dashboard.settings.ApiSettings;
7+
import com.mongodb.util.JSON;
8+
import org.apache.commons.io.output.TeeOutputStream;
9+
import org.apache.commons.lang.StringUtils;
10+
import org.apache.log4j.Logger;
11+
import org.springframework.beans.factory.annotation.Autowired;
12+
import org.springframework.http.HttpMethod;
2213

2314
import javax.activation.MimeType;
2415
import javax.activation.MimeTypeParseException;
@@ -36,17 +27,24 @@
3627
import javax.servlet.http.HttpServletRequest;
3728
import javax.servlet.http.HttpServletRequestWrapper;
3829
import javax.servlet.http.HttpServletResponse;
30+
import java.io.BufferedReader;
31+
import java.io.ByteArrayInputStream;
32+
import java.io.ByteArrayOutputStream;
33+
import java.io.IOException;
34+
import java.io.InputStream;
35+
import java.io.InputStreamReader;
36+
import java.io.OutputStream;
37+
import java.io.OutputStreamWriter;
38+
import java.io.PrintWriter;
39+
import java.util.Arrays;
40+
import java.util.Collection;
41+
import java.util.Enumeration;
42+
import java.util.HashMap;
43+
import java.util.List;
44+
import java.util.Locale;
45+
import java.util.Map;
3946

40-
import org.apache.commons.io.output.TeeOutputStream;
41-
import org.apache.commons.lang.StringUtils;
42-
import org.apache.log4j.Logger;
43-
import org.springframework.beans.factory.annotation.Autowired;
44-
import org.springframework.http.HttpMethod;
45-
46-
import com.capitalone.dashboard.settings.ApiSettings;
47-
import com.capitalone.dashboard.model.RequestLog;
48-
import com.capitalone.dashboard.repository.RequestLogRepository;
49-
import com.mongodb.util.JSON;
47+
import static org.springframework.http.MediaType.APPLICATION_JSON_VALUE;
5048

5149
//import org.springframework.util.MimeType;
5250

@@ -81,7 +79,7 @@ public void doFilter(ServletRequest request, ServletResponse response, FilterCha
8179
BufferedRequestWrapper bufferedRequest = new BufferedRequestWrapper(httpServletRequest);
8280
BufferedResponseWrapper bufferedResponse = new BufferedResponseWrapper(httpServletResponse);
8381

84-
82+
long startTime = System.currentTimeMillis();
8583
RequestLog requestLog = new RequestLog();
8684
requestLog.setClient(httpServletRequest.getRemoteAddr());
8785
requestLog.setEndpoint(httpServletRequest.getRequestURI());
@@ -105,7 +103,9 @@ public void doFilter(ServletRequest request, ServletResponse response, FilterCha
105103
requestLog.setResponseSize(bufferedResponse.getContent().length());
106104

107105
requestLog.setResponseCode(bufferedResponse.getStatus());
108-
requestLog.setTimestamp(System.currentTimeMillis());
106+
long endTime = System.currentTimeMillis();
107+
requestLog.setResponseTime(endTime - startTime);
108+
requestLog.setTimestamp(endTime);
109109
try {
110110
requestLogRepository.save(requestLog);
111111
} catch (RuntimeException re) {

0 commit comments

Comments
 (0)