SysLoggerAspect.java 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. package com.diagbot.aop;
  2. import com.diagbot.log.entity.SysLog;
  3. import com.diagbot.enums.SysTypeEnum;
  4. import com.diagbot.rabbit.MySender;
  5. import com.diagbot.util.AopUtil;
  6. import org.aspectj.lang.JoinPoint;
  7. import org.aspectj.lang.annotation.Aspect;
  8. import org.aspectj.lang.annotation.Before;
  9. import org.aspectj.lang.annotation.Pointcut;
  10. import org.springframework.beans.factory.annotation.Autowired;
  11. import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
  12. import org.springframework.stereotype.Component;
  13. /**
  14. * @Description: 日志拦截切面
  15. * @author: gaodm
  16. * @time: 2018/8/2 13:36
  17. */
  18. @Aspect
  19. @Component
  20. @ConditionalOnProperty(prefix = "syslog", value = { "enable" }, havingValue = "true")
  21. public class SysLoggerAspect {
  22. @Autowired
  23. private MySender mySender;
  24. @Pointcut("@annotation(com.diagbot.annotation.SysLogger)")
  25. public void loggerPointCut() {
  26. }
  27. @Before("loggerPointCut()")
  28. public void saveSysLog(JoinPoint joinPoint) {
  29. //入参设置
  30. SysLog sysLog = AopUtil.sysLoggerAspect(joinPoint, SysTypeEnum.DIAGBOTMAN_SERVICE.getKey());
  31. //保存系统日志
  32. mySender.outputLogSend(sysLog);
  33. }
  34. }