mirror of
https://github.com/PowerJob/PowerJob.git
synced 2025-07-17 00:00:04 +08:00
feat: finished jpa base monitor
This commit is contained in:
parent
e23825c399
commit
cca9c5421e
@ -2,6 +2,7 @@ package tech.powerjob.server.common.utils;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.exception.ExceptionUtils;
|
||||
import org.aspectj.lang.JoinPoint;
|
||||
import org.aspectj.lang.ProceedingJoinPoint;
|
||||
import org.aspectj.lang.Signature;
|
||||
import org.aspectj.lang.reflect.MethodSignature;
|
||||
@ -27,6 +28,10 @@ public class AOPUtils {
|
||||
private static final ExpressionParser parser = new SpelExpressionParser();
|
||||
private static final ParameterNameDiscoverer discoverer = new LocalVariableTableParameterNameDiscoverer();
|
||||
|
||||
public static String parseRealClassName(JoinPoint joinPoint) {
|
||||
return joinPoint.getSignature().getDeclaringType().getSimpleName();
|
||||
}
|
||||
|
||||
public static Method parseMethod(ProceedingJoinPoint joinPoint) {
|
||||
Signature pointSignature = joinPoint.getSignature();
|
||||
if (!(pointSignature instanceof MethodSignature)) {
|
||||
|
@ -4,7 +4,9 @@ import lombok.extern.slf4j.Slf4j;
|
||||
import org.aspectj.lang.ProceedingJoinPoint;
|
||||
import org.aspectj.lang.annotation.Around;
|
||||
import org.aspectj.lang.annotation.Aspect;
|
||||
import org.springframework.aop.support.AopUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
import tech.powerjob.server.common.utils.AOPUtils;
|
||||
import tech.powerjob.server.monitor.monitors.ServerMonitor;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
@ -34,11 +36,11 @@ public class DatabaseMonitorAspect {
|
||||
}
|
||||
|
||||
private Object wrapperMonitor(ProceedingJoinPoint point, DatabaseType type) throws Throwable {
|
||||
final String className = point.getTarget().getClass().getSimpleName();
|
||||
String classNameMini = AOPUtils.parseRealClassName(point);
|
||||
final String methodName = point.getSignature().getName();
|
||||
|
||||
DatabaseEvent event = new DatabaseEvent().setType(type)
|
||||
.setServiceName(className)
|
||||
.setServiceName(classNameMini)
|
||||
.setMethodName(methodName)
|
||||
.setStatus(DatabaseEvent.Status.SUCCESS);
|
||||
|
||||
|
@ -13,6 +13,7 @@ import org.springframework.stereotype.Component;
|
||||
import org.springframework.web.context.request.RequestContextHolder;
|
||||
import org.springframework.web.context.request.ServletRequestAttributes;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
import tech.powerjob.server.common.utils.AOPUtils;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
@ -60,8 +61,8 @@ public class WebLogAspect {
|
||||
}
|
||||
HttpServletRequest request = requestAttributes.getRequest();
|
||||
|
||||
String[] classNameSplit = joinPoint.getSignature().getDeclaringTypeName().split("\\.");
|
||||
String classNameMini = classNameSplit[classNameSplit.length - 1];
|
||||
|
||||
String classNameMini = AOPUtils.parseRealClassName(joinPoint);
|
||||
String classMethod = classNameMini + "." + joinPoint.getSignature().getName();
|
||||
|
||||
// 排除特殊类
|
||||
|
Loading…
x
Reference in New Issue
Block a user