hi Все, я должен зарегистрировать весь запрос, ответ, исключение, Ошибки для моих услуг Spring. я искал о перехватчиков, фильтры, фильтры, лесозаготовительных Spring перехватчиков: HandlerInterceptorAdapter регистратор фильтров: AbstractRequestLoggingFilter.java и его подкомитетов классов (http://www.javawebdevelop.com/1704067/), CommonsRequestLoggingFilter.java фильтры: LoggerFilter.Запрос на регистрацию и ответ для службы весны mvc
может любое тело его отличие, и лучший подход, чтобы сделать так, я спутать или мне нужно выяснить библиотеку третьей стороны, чтобы сделать это ? ..
-2
A
ответ
0
Log4j является Java на основе утилита для ведения журнала с простой интеграцией с Spring MVC. Log4j поставляется с различными уровнями ведения журнала, чтобы обеспечить соответствующую регистрацию в соответствии с средой разработки.
Log4j 2 является преемником log4j и имеет лучшую производительность по сравнению с его предшественником.
Пожалуйста, обратитесь к следующей ссылке для интеграции Spring MVC + Log4j
http://www.codejava.net/frameworks/spring/how-to-use-log4j-in-spring-mvc
Edit: Как уже говорилось в комментарии, PFB код для регистрации как запрос и ответ.
@Aspect
@Component
public class ResponseLoggerAspect {
private static final Logger logger = Logger.getLogger("requestResponseLogger");
ExclusionStrategy excludeJsonAnnotation = new JsonIgnoreAnnotationExclusionStrategy();
Gson gson = new GsonBuilder().setExclusionStrategies(excludeJsonAnnotation).create();
@Pointcut("within(@org.springframework.stereotype.Controller *)")
public void controller() {}
@Pointcut("execution(* *(..))")
public void method() {}
@Pointcut("execution(@com.company.annotation.AddLog * *(..))")
public void Loggable() {}
//This will be caught for only those controller method where @AddLog annotation is written
@Before("Loggable()")
public void printRequestLog(JoinPoint joinPoint) {
try {
Object[] argsList = joinPoint.getArgs();
String str = "[";
for(Object arg : argsList) {
if(arg instanceof Object[]) {
str += Arrays.toString((Object[])arg) + ", ";
} else {
str += String.valueOf(arg) + ", ";
}
}
str += "]";
logger.info("Request args for " + joinPoint.getSignature().getName() + " are : " + str);
} catch(Exception ex) {
logger.info("Unable to log request args", ex);
}
}
//This will be called for all controller methods after returning
@AfterReturning(pointcut = "controller() && method()", returning="result")
public void afterReturning(JoinPoint joinPoint , Object result) {
long start = System.nanoTime();
try {
logger.info("Response sent by " + joinPoint.getSignature().getName() + " are : " + gson.toJson(result));
} catch(Exception ex) {
logger.error("Returned result cant be converted in JSON " , ex);
}
long end = System.nanoTime();
logger.info("elapsed time : " + (end - start));
}
}
0
Я использовал АОП нечто подобное в одном проекте. Я должен был написать класс, как это:!
@Component
@Aspect
public class RequestMonitor {
private static final Logger logger = LoggerFactory.getLogger(RequestMonitor.class);
@Around("@annotation(org.example.ToBeLogged)")
public Object wrap(ProceedingJoinPoint pjp) throws Throwable {
logger.info("Before controller method " + pjp.getSignature().getName() + ". Thread " + Thread.currentThread().getName());
Object retVal = pjp.proceed();
logger.info("Controller method " + pjp.getSignature().getName() + " execution successful");
return retVal;
}
}
Смежные вопросы
- 1. Ответ на регистрацию недействителен
- 2. Контроллер весны получить запрос/ответ
- 3. Угловое обслуживание службы отдыха и весны весны
- 4. запрос и ответ на регистрацию при использовании netsuite suitetalk
- 5. Разрешения на регистрацию и работу службы WCF
- 6. Запрос на регистрацию и настройку ручной обработки
- 7. Ответ на запрос веб-службы конвейеризации
- 8. Запись-ответ на запрос службы java
- 9. Запрос/ответ на регистрацию с Apache CXF как XML
- 10. Spring MVC, правильный ответ на запрос
- 11. Как получить запрос на мыло и ответ от веб-службы
- 12. Запрос и ответ на волейбол
- 13. Запрос на весну и масштаб весны
- 14. Многопользовательский ответ для веб-службы
- 15. Запрос на загрузку весны и распределение потоков
- 16. Исключения для обработки весны MVC
- 17. Запрос Mapping на Весны Javascript
- 18. Как сохранить запрос и ответ службы WCF в таблицу БД
- 19. JavaScript представить вернуть ответ объект с весны MVC
- 20. Руководство Цена запроса веб-службы запрос образца и ответ
- 21. Обработка формы весны MVC и весенние метки
- 22. Запрос и ответ XML SSH
- 23. Проверка весны mvc
- 24. Ответ на запрос AJAX
- 25. Контроллер весны MVC застрял и не ответил
- 26. Проверка весов MVC весны
- 27. HTTP-запрос и ответ
- 28. Ответ на запрос HttpPost
- 29. Запрос на регистрацию NGINX по конкретному URI
- 30. Как проверить запрос и ответ JSON на Java?
нет, я Ван войти как запрос и ответ на отдых .. все равно спасибо .. – ramki
Пожалуйста, смотрите редактирование выше. Надеюсь, я ответил на ваш запрос. – manu