Cambiato log delle richieste
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
This commit is contained in:
@@ -4,10 +4,14 @@ import it.integry.ems.document.export.DocumentiExporter;
|
||||
import it.integry.ems.utility.UtilityDebug;
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
import org.springframework.http.HttpHeaders;
|
||||
import org.springframework.http.server.ServletServerHttpRequest;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.util.StringUtils;
|
||||
import org.springframework.web.filter.AbstractRequestLoggingFilter;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpSession;
|
||||
import java.util.Enumeration;
|
||||
|
||||
@Component
|
||||
@@ -18,14 +22,14 @@ public class RestLoggerBodyFilter extends AbstractRequestLoggingFilter {
|
||||
setIncludeClientInfo(true);
|
||||
setIncludeQueryString(true);
|
||||
setIncludePayload(true);
|
||||
setMaxPayloadLength(64000);
|
||||
// setMaxPayloadLength(64000);
|
||||
}
|
||||
|
||||
private final Logger logger = LogManager.getLogger();
|
||||
|
||||
@Override
|
||||
protected boolean shouldLog(HttpServletRequest request) {
|
||||
return logger.isWarnEnabled() && shouldRequestBeLogged(request);
|
||||
return logger.isDebugEnabled() && shouldRequestBeLogged(request);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -33,23 +37,8 @@ public class RestLoggerBodyFilter extends AbstractRequestLoggingFilter {
|
||||
*/
|
||||
@Override
|
||||
protected void beforeRequest(HttpServletRequest request, String message) {
|
||||
if (shouldRequestBeLogged(request)) {
|
||||
if (logger.isDebugEnabled()) {
|
||||
logger.trace(request.getMethod() + " " + request.getContextPath() + request.getServletPath());
|
||||
Enumeration<String> enums = request.getHeaderNames();
|
||||
while (enums.hasMoreElements()) {
|
||||
String key = enums.nextElement();
|
||||
logger.trace("[KEY] " + key + " [VALUE] " + request.getHeader(key));
|
||||
}
|
||||
|
||||
enums = request.getParameterNames();
|
||||
logger.trace("[PARAMS]");
|
||||
while (enums.hasMoreElements()) {
|
||||
String key = enums.nextElement();
|
||||
logger.trace("[KEY] " + key + " [VALUE] " + request.getParameter(key));
|
||||
}
|
||||
}
|
||||
}
|
||||
setIncludeHeaders(logger.isTraceEnabled());
|
||||
logger.debug("START " + message);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -57,9 +46,67 @@ public class RestLoggerBodyFilter extends AbstractRequestLoggingFilter {
|
||||
*/
|
||||
@Override
|
||||
protected void afterRequest(HttpServletRequest request, String message) {
|
||||
if (shouldRequestBeLogged(request)) {
|
||||
logger.debug("BODY REST CALL AFTER REQUEST: " + message);
|
||||
logger.debug("END " + message);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected String createMessage(HttpServletRequest request, String prefix, String suffix) {
|
||||
StringBuilder msg = new StringBuilder();
|
||||
// msg.append(prefix);
|
||||
msg.append("REQUEST [");
|
||||
msg.append(request.getMethod()).append(' ');
|
||||
msg.append(request.getRequestURI());
|
||||
if (this.isIncludeQueryString()) {
|
||||
String queryString = request.getQueryString();
|
||||
if (queryString != null) {
|
||||
msg.append('?').append(queryString);
|
||||
}
|
||||
}
|
||||
msg.append("]");
|
||||
|
||||
if (this.isIncludeClientInfo()) {
|
||||
String client = request.getRemoteAddr();
|
||||
if (StringUtils.hasLength(client)) {
|
||||
msg.append(" - Client: ").append(client);
|
||||
}
|
||||
|
||||
HttpSession session = request.getSession(false);
|
||||
if (session != null) {
|
||||
msg.append(" - Session: ").append(session.getId());
|
||||
}
|
||||
|
||||
String user = request.getRemoteUser();
|
||||
if (user != null) {
|
||||
msg.append(" - User: ").append(user);
|
||||
}
|
||||
}
|
||||
|
||||
if (this.isIncludeHeaders()) {
|
||||
HttpHeaders headers = (new ServletServerHttpRequest(request)).getHeaders();
|
||||
if (this.getHeaderPredicate() != null) {
|
||||
Enumeration<String> names = request.getHeaderNames();
|
||||
|
||||
while (names.hasMoreElements()) {
|
||||
String header = names.nextElement();
|
||||
if (!this.getHeaderPredicate().test(header)) {
|
||||
headers.set(header, "masked");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
msg.append("\n Headers: ").append(headers);
|
||||
}
|
||||
|
||||
String contentType = request.getContentType();
|
||||
if (this.isIncludePayload() && contentType.contains("application/json")) {
|
||||
String payload = this.getMessagePayload(request);
|
||||
if (payload != null) {
|
||||
msg.append("\n Body: ").append(payload);
|
||||
}
|
||||
}
|
||||
|
||||
// msg.append(suffix);
|
||||
return msg.toString();
|
||||
}
|
||||
|
||||
|
||||
@@ -93,7 +140,7 @@ public class RestLoggerBodyFilter extends AbstractRequestLoggingFilter {
|
||||
!serviceName.startsWith("variazioni-negozi/") &&
|
||||
!serviceName.startsWith("decodeUcs/") &&
|
||||
!(serviceName.startsWith("export") &&
|
||||
!request.getQueryString().contains(DocumentiExporter.Format.FATTURE_FPR.getText())) &&
|
||||
request.getQueryString().contains(DocumentiExporter.Format.FATTURE_FPR.getText())) &&
|
||||
(!serviceName.contains("processSql") || UtilityDebug.isDebugExecution());
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user