in collector/jetty/src/main/java/org/apache/karaf/decanter/collector/jetty/DecanterCollectorJettyHandler.java [111:163]
public void handle(String s, Request request, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws IOException, ServletException {
Map<String, Object> data = new HashMap<>();
data.put("type", "jetty");
data.put("request.method", httpServletRequest.getMethod());
data.put("request.requestURI", httpServletRequest.getRequestURI());
try {
if (httpServletRequest.getSession() != null) {
data.put("request.session.id", httpServletRequest.getSession().getId());
}
} catch (Exception e) {
// nothing to do
}
data.put("request.contentType", httpServletRequest.getContentType());
data.put("request.authType", httpServletRequest.getAuthType());
data.put("request.contextPath", httpServletRequest.getContextPath());
data.put("request.pathInfo", httpServletRequest.getPathInfo());
data.put("request.pathTranslated", httpServletRequest.getPathTranslated());
data.put("request.queryString", httpServletRequest.getQueryString());
data.put("request.remoteUser", httpServletRequest.getRemoteUser());
data.put("request.requestedSessionId", httpServletRequest.getRequestedSessionId());
data.put("request.requestURL", httpServletRequest.getRequestURL());
data.put("request.servletPath", httpServletRequest.getServletPath());
data.put("request.localAddr", httpServletRequest.getLocalAddr());
Enumeration<String> attributeNames = httpServletRequest.getAttributeNames();
while (attributeNames.hasMoreElements()) {
String name = attributeNames.nextElement();
data.put("request.attribute." + name, httpServletRequest.getAttribute(name));
}
Enumeration<String> parameterNames = httpServletRequest.getParameterNames();
while (parameterNames.hasMoreElements()) {
String name = parameterNames.nextElement();
data.put("request.parameter." + name, httpServletRequest.getParameter(name));
}
Enumeration<String> requestHeaders = httpServletRequest.getHeaderNames();
while (requestHeaders.hasMoreElements()) {
String name = requestHeaders.nextElement();
data.put("request.header." + name, httpServletRequest.getHeader(name));
}
data.put("response.status", httpServletResponse.getStatus());
for (String headerName : httpServletResponse.getHeaderNames()) {
data.put("response.header." + headerName, httpServletResponse.getHeader(headerName));
}
data.put("response.contentType", httpServletResponse.getContentType());
data.put("response.characterEncoding", httpServletResponse.getCharacterEncoding());
try {
PropertiesPreparator.prepare(data, properties);
} catch (Exception e) {
// nothing to do
}
String topic = (properties.get(EventConstants.EVENT_TOPIC) != null) ? (String) properties.get(EventConstants.EVENT_TOPIC) : "decanter/collect/jetty";
Event event = new Event(topic, data);
dispatcher.postEvent(event);
}