You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by ke...@apache.org on 2020/08/28 04:47:00 UTC
[skywalking] branch master updated: Optimize: truncate
parameterString (#5396)
This is an automated email from the ASF dual-hosted git repository.
kezhenxu94 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/skywalking.git
The following commit(s) were added to refs/heads/master by this push:
new f89ed0c Optimize: truncate parameterString (#5396)
f89ed0c is described below
commit f89ed0c3151f4637c8052fc9ddb00814badfd9ec
Author: novayoung <ja...@yahoo.cn>
AuthorDate: Fri Aug 28 12:46:41 2020 +0800
Optimize: truncate parameterString (#5396)
---
.../plugin/jdbc/PreparedStatementParameterBuilder.java | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/apm-sniffer/apm-sdk-plugin/jdbc-commons/src/main/java/org/apache/skywalking/apm/plugin/jdbc/PreparedStatementParameterBuilder.java b/apm-sniffer/apm-sdk-plugin/jdbc-commons/src/main/java/org/apache/skywalking/apm/plugin/jdbc/PreparedStatementParameterBuilder.java
index 1209b80..33bda28 100644
--- a/apm-sniffer/apm-sdk-plugin/jdbc-commons/src/main/java/org/apache/skywalking/apm/plugin/jdbc/PreparedStatementParameterBuilder.java
+++ b/apm-sniffer/apm-sdk-plugin/jdbc-commons/src/main/java/org/apache/skywalking/apm/plugin/jdbc/PreparedStatementParameterBuilder.java
@@ -44,8 +44,7 @@ public class PreparedStatementParameterBuilder {
return EMPTY_LIST;
}
- String parameterString = getParameterString();
- return truncate(parameterString);
+ return getParameterString();
}
private String getParameterString() {
@@ -58,8 +57,13 @@ public class PreparedStatementParameterBuilder {
}
stringBuilder.append(parameter);
first = false;
+
+ // cut the string as soon as it reached the length limitation
+ if (maxLength > 0 && (stringBuilder.length() + EMPTY_LIST.length()) > maxLength) {
+ return format(stringBuilder).substring(0, maxLength) + "...";
+ }
}
- return String.format("[%s]", stringBuilder.toString());
+ return format(stringBuilder);
}
private int getMaxIndex() {
@@ -67,12 +71,8 @@ public class PreparedStatementParameterBuilder {
return Math.min(maxIdx, parameters.length);
}
- private String truncate(String parameterString) {
- if (maxLength > 0 && parameterString.length() > maxLength) {
- parameterString = parameterString.substring(0, maxLength) + "...";
- }
-
- return parameterString;
+ private String format(StringBuilder stringBuilder) {
+ return String.format("[%s]", stringBuilder.toString());
}
}