From b9d51427295c14516fdeb6a111fa7a51a5eb659d Mon Sep 17 00:00:00 2001 From: mcodnjs Date: Fri, 3 Nov 2023 14:50:19 +0900 Subject: [PATCH 1/4] =?UTF-8?q?refactor:=20Hikari=20=EC=BB=A4=EB=84=A5?= =?UTF-8?q?=EC=85=98=EB=A7=8C=20=EC=B9=B4=EC=9A=B4=ED=8A=B8=ED=95=98?= =?UTF-8?q?=EB=8F=84=EB=A1=9D=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hanglog/global/detector/ConnectionProxyHandler.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/backend/src/main/java/hanglog/global/detector/ConnectionProxyHandler.java b/backend/src/main/java/hanglog/global/detector/ConnectionProxyHandler.java index 3c2d50009..3983c06c9 100644 --- a/backend/src/main/java/hanglog/global/detector/ConnectionProxyHandler.java +++ b/backend/src/main/java/hanglog/global/detector/ConnectionProxyHandler.java @@ -11,6 +11,7 @@ public class ConnectionProxyHandler implements MethodInterceptor { private static final String JDBC_PREPARE_STATEMENT_METHOD_NAME = "prepareStatement"; + private static final String HIKARI_CONNECTION_NAME = "HikariProxyConnection"; private final Object connection; private final LoggingForm loggingForm; @@ -30,7 +31,13 @@ public Object invoke(@Nonnull final MethodInvocation invocation) throws Throwabl } private boolean hasPreparedStatementInvoked(final MethodInvocation invocation) { - return invocation.getMethod().getName().equals(JDBC_PREPARE_STATEMENT_METHOD_NAME); + final Object targetObject = invocation.getThis(); + if (targetObject == null) { + return false; + } + final Class targetClass = targetObject.getClass(); + return targetClass.getName().contains(HIKARI_CONNECTION_NAME) && + invocation.getMethod().getName().equals(JDBC_PREPARE_STATEMENT_METHOD_NAME); } private boolean hasConnection(final Object result) { From 7cb2291049367b375b9061cac7c1f5546a5a1ebf Mon Sep 17 00:00:00 2001 From: mcodnjs Date: Fri, 3 Nov 2023 14:52:53 +0900 Subject: [PATCH 2/4] =?UTF-8?q?refactor:=20p6spy=20=EC=9D=98=EC=A1=B4?= =?UTF-8?q?=EC=84=B1=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/build.gradle | 1 + 1 file changed, 1 insertion(+) diff --git a/backend/build.gradle b/backend/build.gradle index 0d6c59415..74582f6c8 100644 --- a/backend/build.gradle +++ b/backend/build.gradle @@ -30,6 +30,7 @@ dependencies { implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'io.jsonwebtoken:jjwt-api:0.11.5' implementation 'com.amazonaws:aws-java-sdk-s3:1.12.528' + implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.9.0' testImplementation 'io.rest-assured:rest-assured:5.3.1' testImplementation 'org.springframework.restdocs:spring-restdocs-mockmvc' From c645fd0fbdeb9e05d9dccf213b1aee0d57dc98b1 Mon Sep 17 00:00:00 2001 From: mcodnjs Date: Fri, 3 Nov 2023 15:04:42 +0900 Subject: [PATCH 3/4] =?UTF-8?q?refactor:=20p6spy=20=EA=B4=80=EB=A0=A8=20?= =?UTF-8?q?=ED=99=98=EA=B2=BD=EC=84=A4=EC=A0=95=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/backend-submodule | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backend/backend-submodule b/backend/backend-submodule index c8ac913af..84b387b62 160000 --- a/backend/backend-submodule +++ b/backend/backend-submodule @@ -1 +1 @@ -Subproject commit c8ac913af608cbaffc233280c25923ff129bf317 +Subproject commit 84b387b6292af52ca799ca7b04fb43e549cc24c7 From 97f54f619881da4ee71252239392b62895ab6ce6 Mon Sep 17 00:00:00 2001 From: mcodnjs Date: Mon, 6 Nov 2023 14:05:08 +0900 Subject: [PATCH 4/4] =?UTF-8?q?refactor:=20targetMethod=20=EB=B3=80?= =?UTF-8?q?=EC=88=98=20=EC=B6=94=EC=B6=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/hanglog/global/detector/ConnectionProxyHandler.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/backend/src/main/java/hanglog/global/detector/ConnectionProxyHandler.java b/backend/src/main/java/hanglog/global/detector/ConnectionProxyHandler.java index 3983c06c9..e37ee55ed 100644 --- a/backend/src/main/java/hanglog/global/detector/ConnectionProxyHandler.java +++ b/backend/src/main/java/hanglog/global/detector/ConnectionProxyHandler.java @@ -2,6 +2,7 @@ import jakarta.annotation.Nonnull; import jakarta.annotation.Nullable; +import java.lang.reflect.Method; import lombok.RequiredArgsConstructor; import org.aopalliance.intercept.MethodInterceptor; import org.aopalliance.intercept.MethodInvocation; @@ -36,8 +37,9 @@ private boolean hasPreparedStatementInvoked(final MethodInvocation invocation) { return false; } final Class targetClass = targetObject.getClass(); + final Method targetMethod = invocation.getMethod(); return targetClass.getName().contains(HIKARI_CONNECTION_NAME) && - invocation.getMethod().getName().equals(JDBC_PREPARE_STATEMENT_METHOD_NAME); + targetMethod.getName().equals(JDBC_PREPARE_STATEMENT_METHOD_NAME); } private boolean hasConnection(final Object result) {