This is an automated email from the ASF dual-hosted git repository.
wankai 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 8b6cd1c241 Add more attrs for Service metrics (#12728)
8b6cd1c241 is described below
commit 8b6cd1c241bee88deb0eacbca0be596434389656
Author: Wan Kai <[email protected]>
AuthorDate: Tue Oct 29 15:07:53 2024 +0800
Add more attrs for Service metrics (#12728)
---
docs/en/api/metrics-query-expression.md | 4 ++--
docs/en/concepts-and-designs/metrics-additional-attributes.md | 2 +-
.../main/antlr4/org/apache/skywalking/mqe/rt/grammar/MQELexer.g4 | 1 +
.../antlr4/org/apache/skywalking/mqe/rt/grammar/MQEParser.g4 | 2 +-
.../org/apache/skywalking/oal/rt/parser/DeepAnalysisTest.java | 2 +-
.../apache/skywalking/oap/server/core/analysis/meter/Meter.java | 7 +++++++
.../skywalking/oap/server/core/analysis/meter/MeterEntity.java | 2 ++
.../oap/server/core/analysis/meter/function/avg/AvgFunction.java | 9 +++++++++
.../core/analysis/meter/function/latest/LatestFunction.java | 9 +++++++++
.../oap/server/core/analysis/meter/function/max/MaxFunction.java | 9 +++++++++
.../oap/server/core/analysis/meter/function/min/MinFunction.java | 9 +++++++++
.../oap/server/core/analysis/meter/function/sum/SumFunction.java | 9 +++++++++
.../analysis/meter/function/sumpermin/SumPerMinFunction.java | 9 +++++++++
.../org/apache/skywalking/oap/server/core/source/K8SService.java | 4 ++++
.../org/apache/skywalking/oap/server/core/source/Service.java | 4 ++++
.../apache/skywalking/oap/query/graphql/mqe/rt/MQEVisitor.java | 2 +-
16 files changed, 78 insertions(+), 6 deletions(-)
diff --git a/docs/en/api/metrics-query-expression.md
b/docs/en/api/metrics-query-expression.md
index 8e7833b931..0a734c7aa1 100644
--- a/docs/en/api/metrics-query-expression.md
+++ b/docs/en/api/metrics-query-expression.md
@@ -235,8 +235,8 @@ top_n(<metric_name>, <top_number>, <order>, <attrs>)
- `top_number` is the number of the top results, should be a positive integer.
- `order` is the order of the top results. The value of `order` can be `asc`
or `des`.
- `attrs` optional, attrs is the attributes of the metrics, could be used to
filter the topN results.
- SkyWalking supports 5 attrs: `attr0`, `attr1`, `attr2`, `attr3`, `attr4`.
- The format is `attr0='value', attr1='value'...attr4='value4'`, could use
one or multiple attrs to filter the topN results.
+ SkyWalking supports 6 attrs: `attr0`, `attr1`, `attr2`, `attr3`, `attr4`,
`attr5`.
+ The format is `attr0='value', attr1='value'...attr5='value5'`, could use
one or multiple attrs to filter the topN results.
**Notice**: The `attrs` only support Service metrics for now and should be
added in the metrics first, see [Metrics Additional
Attributes](../concepts-and-designs/metrics-additional-attributes.md).
For example:
diff --git a/docs/en/concepts-and-designs/metrics-additional-attributes.md
b/docs/en/concepts-and-designs/metrics-additional-attributes.md
index 2a5ad7e459..50de232684 100644
--- a/docs/en/concepts-and-designs/metrics-additional-attributes.md
+++ b/docs/en/concepts-and-designs/metrics-additional-attributes.md
@@ -6,7 +6,7 @@ A typical case is the `topN` query, when we query the top N
services by the metr
If we want to filter the services by `Layer` or `Group` or other specific
conditions, it is impossible to do this with the current metrics fields.
Since 10.2.0, SkyWalking supports the metrics attributes through source
decorate.
-SkyWalking provides additional attributes(`attr0...attr4`) fields to the
metrics and source.
+SkyWalking provides additional attributes(`attr0...attr5`) fields to the
metrics and source.
By default, these fields are empty, we can fill them by set a specific
decorate logic for source.
According to the difference between the `OAL` and `MAL`, the usage of decorate
is different.
diff --git
a/oap-server/mqe-grammar/src/main/antlr4/org/apache/skywalking/mqe/rt/grammar/MQELexer.g4
b/oap-server/mqe-grammar/src/main/antlr4/org/apache/skywalking/mqe/rt/grammar/MQELexer.g4
index 3fc984fd03..0ea98355b1 100644
---
a/oap-server/mqe-grammar/src/main/antlr4/org/apache/skywalking/mqe/rt/grammar/MQELexer.g4
+++
b/oap-server/mqe-grammar/src/main/antlr4/org/apache/skywalking/mqe/rt/grammar/MQELexer.g4
@@ -91,6 +91,7 @@ ATTR1: 'attr1';
ATTR2: 'attr2';
ATTR3: 'attr3';
ATTR4: 'attr4';
+ATTR5: 'attr5';
// Literals
INTEGER: Digit+;
diff --git
a/oap-server/mqe-grammar/src/main/antlr4/org/apache/skywalking/mqe/rt/grammar/MQEParser.g4
b/oap-server/mqe-grammar/src/main/antlr4/org/apache/skywalking/mqe/rt/grammar/MQEParser.g4
index 1d421e9d7d..92440b3097 100644
---
a/oap-server/mqe-grammar/src/main/antlr4/org/apache/skywalking/mqe/rt/grammar/MQEParser.g4
+++
b/oap-server/mqe-grammar/src/main/antlr4/org/apache/skywalking/mqe/rt/grammar/MQEParser.g4
@@ -101,6 +101,6 @@ sort_label_values:
SORT_LABEL_VALUES;
attributeName:
- ATTR0 | ATTR1 | ATTR2 | ATTR3 | ATTR4;
+ ATTR0 | ATTR1 | ATTR2 | ATTR3 | ATTR4 | ATTR5;
attribute: attributeName EQ VALUE_STRING;
attributeList: attribute (COMMA attribute)*;
diff --git
a/oap-server/oal-rt/src/test/java/org/apache/skywalking/oal/rt/parser/DeepAnalysisTest.java
b/oap-server/oal-rt/src/test/java/org/apache/skywalking/oal/rt/parser/DeepAnalysisTest.java
index d4b7b1d4a9..30408c40ef 100644
---
a/oap-server/oal-rt/src/test/java/org/apache/skywalking/oal/rt/parser/DeepAnalysisTest.java
+++
b/oap-server/oal-rt/src/test/java/org/apache/skywalking/oal/rt/parser/DeepAnalysisTest.java
@@ -66,7 +66,7 @@ public class DeepAnalysisTest {
Assertions.assertEquals("(long)(1)",
method.getArgsExpressions().get(1));
List<SourceColumn> source = result.getFieldsFromSource();
- Assertions.assertEquals(6, source.size());
+ Assertions.assertEquals(7, source.size());
List<DataColumn> persistentFields = result.getPersistentFields();
Assertions.assertEquals(4, persistentFields.size());
diff --git
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/Meter.java
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/Meter.java
index 8ba6878204..f503abae4c 100644
---
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/Meter.java
+++
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/Meter.java
@@ -38,6 +38,7 @@ public abstract class Meter extends Metrics implements
WithMetadata {
protected static final String ATTR2 = "attr2";
protected static final String ATTR3 = "attr3";
protected static final String ATTR4 = "attr4";
+ protected static final String ATTR5 = "attr5";
private MetricsMetaInfo metadata = new MetricsMetaInfo("UNKNOWN",
DefaultScopeDefine.UNKNOWN);
@@ -66,6 +67,11 @@ public abstract class Meter extends Metrics implements
WithMetadata {
@Column(name = ATTR4)
private String attr4;
+ @Setter
+ @Getter
+ @Column(name = ATTR5)
+ private String attr5;
+
/**
* @return entity ID to represent this metric object. Typically, meter
function should have a String type field, named entityId.
* See {@link
org.apache.skywalking.oap.server.core.analysis.meter.function.avg.AvgFunction#getEntityId()}
as an example.
@@ -101,5 +107,6 @@ public abstract class Meter extends Metrics implements
WithMetadata {
attr2 = entity.getAttr2();
attr3 = entity.getAttr3();
attr4 = entity.getAttr4();
+ attr5 = entity.getAttr5();
}
}
diff --git
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/MeterEntity.java
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/MeterEntity.java
index 073981d36a..1489ff3a5a 100644
---
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/MeterEntity.java
+++
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/MeterEntity.java
@@ -61,6 +61,8 @@ public class MeterEntity {
private String attr3;
@Setter
private String attr4;
+ @Setter
+ private String attr5;
private MeterEntity() {
diff --git
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/avg/AvgFunction.java
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/avg/AvgFunction.java
index 3f96cf79e5..4228c8e63f 100644
---
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/avg/AvgFunction.java
+++
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/avg/AvgFunction.java
@@ -110,6 +110,7 @@ public abstract class AvgFunction extends Meter implements
AcceptableValue<Long>
metrics.setAttr2(getAttr2());
metrics.setAttr3(getAttr3());
metrics.setAttr4(getAttr4());
+ metrics.setAttr5(getAttr5());
return metrics;
}
@@ -127,6 +128,7 @@ public abstract class AvgFunction extends Meter implements
AcceptableValue<Long>
metrics.setAttr2(getAttr2());
metrics.setAttr3(getAttr3());
metrics.setAttr4(getAttr4());
+ metrics.setAttr5(getAttr5());
return metrics;
}
@@ -163,6 +165,10 @@ public abstract class AvgFunction extends Meter implements
AcceptableValue<Long>
if (StringUtil.isNotEmpty(remoteData.getDataStrings(6))) {
setAttr4(remoteData.getDataStrings(6));
}
+
+ if (StringUtil.isNotEmpty(remoteData.getDataStrings(7))) {
+ setAttr5(remoteData.getDataStrings(7));
+ }
}
@Override
@@ -180,6 +186,7 @@ public abstract class AvgFunction extends Meter implements
AcceptableValue<Long>
remoteBuilder.addDataStrings(getAttr2() == null ? Const.EMPTY_STRING :
getAttr2());
remoteBuilder.addDataStrings(getAttr3() == null ? Const.EMPTY_STRING :
getAttr3());
remoteBuilder.addDataStrings(getAttr4() == null ? Const.EMPTY_STRING :
getAttr4());
+ remoteBuilder.addDataStrings(getAttr5() == null ? Const.EMPTY_STRING :
getAttr5());
return remoteBuilder;
}
@@ -225,6 +232,7 @@ public abstract class AvgFunction extends Meter implements
AcceptableValue<Long>
metrics.setAttr2((String) converter.get(ATTR2));
metrics.setAttr3((String) converter.get(ATTR3));
metrics.setAttr4((String) converter.get(ATTR4));
+ metrics.setAttr5((String) converter.get(ATTR5));
return metrics;
}
@@ -242,6 +250,7 @@ public abstract class AvgFunction extends Meter implements
AcceptableValue<Long>
converter.accept(ATTR2, storageData.getAttr2());
converter.accept(ATTR3, storageData.getAttr3());
converter.accept(ATTR4, storageData.getAttr4());
+ converter.accept(ATTR5, storageData.getAttr5());
}
}
diff --git
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/latest/LatestFunction.java
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/latest/LatestFunction.java
index 7bf887378b..b741220e89 100644
---
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/latest/LatestFunction.java
+++
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/latest/LatestFunction.java
@@ -98,6 +98,7 @@ public abstract class LatestFunction extends Meter implements
AcceptableValue<Lo
metrics.setAttr2(getAttr2());
metrics.setAttr3(getAttr3());
metrics.setAttr4(getAttr4());
+ metrics.setAttr5(getAttr5());
return metrics;
}
@@ -114,6 +115,7 @@ public abstract class LatestFunction extends Meter
implements AcceptableValue<Lo
metrics.setAttr2(getAttr2());
metrics.setAttr3(getAttr3());
metrics.setAttr4(getAttr4());
+ metrics.setAttr5(getAttr5());
return metrics;
}
@@ -149,6 +151,10 @@ public abstract class LatestFunction extends Meter
implements AcceptableValue<Lo
if (StringUtil.isNotEmpty(remoteData.getDataStrings(6))) {
setAttr4(remoteData.getDataStrings(6));
}
+
+ if (StringUtil.isNotEmpty(remoteData.getDataStrings(7))) {
+ setAttr5(remoteData.getDataStrings(7));
+ }
}
@Override
@@ -165,6 +171,7 @@ public abstract class LatestFunction extends Meter
implements AcceptableValue<Lo
remoteBuilder.addDataStrings(getAttr2() == null ? Const.EMPTY_STRING :
getAttr2());
remoteBuilder.addDataStrings(getAttr3() == null ? Const.EMPTY_STRING :
getAttr3());
remoteBuilder.addDataStrings(getAttr4() == null ? Const.EMPTY_STRING :
getAttr4());
+ remoteBuilder.addDataStrings(getAttr5() == null ? Const.EMPTY_STRING :
getAttr5());
return remoteBuilder;
}
@@ -199,6 +206,7 @@ public abstract class LatestFunction extends Meter
implements AcceptableValue<Lo
metrics.setAttr2((String) converter.get(ATTR2));
metrics.setAttr3((String) converter.get(ATTR3));
metrics.setAttr4((String) converter.get(ATTR4));
+ metrics.setAttr5((String) converter.get(ATTR5));
return metrics;
}
@@ -214,6 +222,7 @@ public abstract class LatestFunction extends Meter
implements AcceptableValue<Lo
converter.accept(ATTR2, storageData.getAttr2());
converter.accept(ATTR3, storageData.getAttr3());
converter.accept(ATTR4, storageData.getAttr4());
+ converter.accept(ATTR5, storageData.getAttr5());
}
}
diff --git
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/max/MaxFunction.java
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/max/MaxFunction.java
index ff04af66ef..c30b5d5065 100644
---
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/max/MaxFunction.java
+++
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/max/MaxFunction.java
@@ -104,6 +104,7 @@ public abstract class MaxFunction extends Meter implements
AcceptableValue<Long>
metrics.setAttr2(getAttr2());
metrics.setAttr3(getAttr3());
metrics.setAttr4(getAttr4());
+ metrics.setAttr5(getAttr5());
return metrics;
}
@@ -120,6 +121,7 @@ public abstract class MaxFunction extends Meter implements
AcceptableValue<Long>
metrics.setAttr2(getAttr2());
metrics.setAttr3(getAttr3());
metrics.setAttr4(getAttr4());
+ metrics.setAttr5(getAttr5());
return metrics;
}
@@ -154,6 +156,10 @@ public abstract class MaxFunction extends Meter implements
AcceptableValue<Long>
if (StringUtil.isNotEmpty(remoteData.getDataStrings(6))) {
setAttr4(remoteData.getDataStrings(6));
}
+
+ if (StringUtil.isNotEmpty(remoteData.getDataStrings(7))) {
+ setAttr5(remoteData.getDataStrings(7));
+ }
}
@Override
@@ -169,6 +175,7 @@ public abstract class MaxFunction extends Meter implements
AcceptableValue<Long>
remoteBuilder.addDataStrings(getAttr2() == null ? Const.EMPTY_STRING :
getAttr2());
remoteBuilder.addDataStrings(getAttr3() == null ? Const.EMPTY_STRING :
getAttr3());
remoteBuilder.addDataStrings(getAttr4() == null ? Const.EMPTY_STRING :
getAttr4());
+ remoteBuilder.addDataStrings(getAttr5() == null ? Const.EMPTY_STRING :
getAttr5());
return remoteBuilder;
}
@@ -204,6 +211,7 @@ public abstract class MaxFunction extends Meter implements
AcceptableValue<Long>
metrics.setAttr2((String) converter.get(ATTR2));
metrics.setAttr3((String) converter.get(ATTR3));
metrics.setAttr4((String) converter.get(ATTR4));
+ metrics.setAttr5((String) converter.get(ATTR5));
return metrics;
}
@@ -219,6 +227,7 @@ public abstract class MaxFunction extends Meter implements
AcceptableValue<Long>
converter.accept(ATTR2, storageData.getAttr2());
converter.accept(ATTR3, storageData.getAttr3());
converter.accept(ATTR4, storageData.getAttr4());
+ converter.accept(ATTR5, storageData.getAttr5());
}
}
diff --git
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/min/MinFunction.java
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/min/MinFunction.java
index edbae2b9d2..b4379dfddb 100644
---
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/min/MinFunction.java
+++
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/min/MinFunction.java
@@ -105,6 +105,7 @@ public abstract class MinFunction extends Meter implements
AcceptableValue<Long>
metrics.setAttr2(getAttr2());
metrics.setAttr3(getAttr3());
metrics.setAttr4(getAttr4());
+ metrics.setAttr5(getAttr5());
return metrics;
}
@@ -121,6 +122,7 @@ public abstract class MinFunction extends Meter implements
AcceptableValue<Long>
metrics.setAttr2(getAttr2());
metrics.setAttr3(getAttr3());
metrics.setAttr4(getAttr4());
+ metrics.setAttr5(getAttr5());
return metrics;
}
@@ -155,6 +157,10 @@ public abstract class MinFunction extends Meter implements
AcceptableValue<Long>
if (StringUtil.isNotEmpty(remoteData.getDataStrings(6))) {
setAttr4(remoteData.getDataStrings(6));
}
+
+ if (StringUtil.isNotEmpty(remoteData.getDataStrings(7))) {
+ setAttr5(remoteData.getDataStrings(7));
+ }
}
@Override
@@ -170,6 +176,7 @@ public abstract class MinFunction extends Meter implements
AcceptableValue<Long>
remoteBuilder.addDataStrings(getAttr2() == null ? Const.EMPTY_STRING :
getAttr2());
remoteBuilder.addDataStrings(getAttr3() == null ? Const.EMPTY_STRING :
getAttr3());
remoteBuilder.addDataStrings(getAttr4() == null ? Const.EMPTY_STRING :
getAttr4());
+ remoteBuilder.addDataStrings(getAttr5() == null ? Const.EMPTY_STRING :
getAttr5());
return remoteBuilder;
}
@@ -205,6 +212,7 @@ public abstract class MinFunction extends Meter implements
AcceptableValue<Long>
metrics.setAttr2((String) converter.get(ATTR2));
metrics.setAttr3((String) converter.get(ATTR3));
metrics.setAttr4((String) converter.get(ATTR4));
+ metrics.setAttr5((String) converter.get(ATTR5));
return metrics;
}
@@ -220,6 +228,7 @@ public abstract class MinFunction extends Meter implements
AcceptableValue<Long>
converter.accept(ATTR2, storageData.getAttr2());
converter.accept(ATTR3, storageData.getAttr3());
converter.accept(ATTR4, storageData.getAttr4());
+ converter.accept(ATTR5, storageData.getAttr5());
}
}
diff --git
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/sum/SumFunction.java
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/sum/SumFunction.java
index e3004af6f4..ff67146d93 100644
---
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/sum/SumFunction.java
+++
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/sum/SumFunction.java
@@ -86,6 +86,7 @@ public abstract class SumFunction extends Meter implements
AcceptableValue<Long>
metrics.setAttr2(getAttr2());
metrics.setAttr3(getAttr3());
metrics.setAttr4(getAttr4());
+ metrics.setAttr5(getAttr5());
return metrics;
}
@@ -102,6 +103,7 @@ public abstract class SumFunction extends Meter implements
AcceptableValue<Long>
metrics.setAttr2(getAttr2());
metrics.setAttr3(getAttr3());
metrics.setAttr4(getAttr4());
+ metrics.setAttr5(getAttr5());
return metrics;
}
@@ -137,6 +139,10 @@ public abstract class SumFunction extends Meter implements
AcceptableValue<Long>
if (StringUtil.isNotEmpty(remoteData.getDataStrings(6))) {
setAttr4(remoteData.getDataStrings(6));
}
+
+ if (StringUtil.isNotEmpty(remoteData.getDataStrings(7))) {
+ setAttr5(remoteData.getDataStrings(7));
+ }
}
@Override
@@ -154,6 +160,7 @@ public abstract class SumFunction extends Meter implements
AcceptableValue<Long>
remoteBuilder.addDataStrings(getAttr2() == null ? Const.EMPTY_STRING :
getAttr2());
remoteBuilder.addDataStrings(getAttr3() == null ? Const.EMPTY_STRING :
getAttr3());
remoteBuilder.addDataStrings(getAttr4() == null ? Const.EMPTY_STRING :
getAttr4());
+ remoteBuilder.addDataStrings(getAttr5() == null ? Const.EMPTY_STRING :
getAttr5());
return remoteBuilder;
}
@@ -196,6 +203,7 @@ public abstract class SumFunction extends Meter implements
AcceptableValue<Long>
metrics.setAttr2((String) converter.get(ATTR2));
metrics.setAttr3((String) converter.get(ATTR3));
metrics.setAttr4((String) converter.get(ATTR4));
+ metrics.setAttr5((String) converter.get(ATTR5));
return metrics;
}
@@ -211,6 +219,7 @@ public abstract class SumFunction extends Meter implements
AcceptableValue<Long>
converter.accept(ATTR2, storageData.getAttr2());
converter.accept(ATTR3, storageData.getAttr3());
converter.accept(ATTR4, storageData.getAttr4());
+ converter.accept(ATTR5, storageData.getAttr5());
}
}
diff --git
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/sumpermin/SumPerMinFunction.java
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/sumpermin/SumPerMinFunction.java
index 8a7e278187..ddd5b56af2 100644
---
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/sumpermin/SumPerMinFunction.java
+++
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/meter/function/sumpermin/SumPerMinFunction.java
@@ -94,6 +94,7 @@ public abstract class SumPerMinFunction extends Meter
implements AcceptableValue
metrics.setAttr2(getAttr2());
metrics.setAttr3(getAttr3());
metrics.setAttr4(getAttr4());
+ metrics.setAttr5(getAttr5());
return metrics;
}
@@ -110,6 +111,7 @@ public abstract class SumPerMinFunction extends Meter
implements AcceptableValue
metrics.setAttr2(getAttr2());
metrics.setAttr3(getAttr3());
metrics.setAttr4(getAttr4());
+ metrics.setAttr5(getAttr5());
return metrics;
}
@@ -145,6 +147,10 @@ public abstract class SumPerMinFunction extends Meter
implements AcceptableValue
if (StringUtil.isNotEmpty(remoteData.getDataStrings(6))) {
setAttr4(remoteData.getDataStrings(6));
}
+
+ if (StringUtil.isNotEmpty(remoteData.getDataStrings(7))) {
+ setAttr5(remoteData.getDataStrings(7));
+ }
}
@Override
@@ -162,6 +168,7 @@ public abstract class SumPerMinFunction extends Meter
implements AcceptableValue
remoteBuilder.addDataStrings(getAttr2() == null ? Const.EMPTY_STRING :
getAttr2());
remoteBuilder.addDataStrings(getAttr3() == null ? Const.EMPTY_STRING :
getAttr3());
remoteBuilder.addDataStrings(getAttr4() == null ? Const.EMPTY_STRING :
getAttr4());
+ remoteBuilder.addDataStrings(getAttr5() == null ? Const.EMPTY_STRING :
getAttr5());
return remoteBuilder;
}
@@ -205,6 +212,7 @@ public abstract class SumPerMinFunction extends Meter
implements AcceptableValue
metrics.setAttr2((String) converter.get(ATTR2));
metrics.setAttr3((String) converter.get(ATTR3));
metrics.setAttr4((String) converter.get(ATTR4));
+ metrics.setAttr5((String) converter.get(ATTR5));
return metrics;
}
@@ -221,6 +229,7 @@ public abstract class SumPerMinFunction extends Meter
implements AcceptableValue
converter.accept(ATTR2, storageData.getAttr2());
converter.accept(ATTR3, storageData.getAttr3());
converter.accept(ATTR4, storageData.getAttr4());
+ converter.accept(ATTR5, storageData.getAttr5());
}
}
diff --git
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/K8SService.java
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/K8SService.java
index 74b1071ded..44a205dd9b 100644
---
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/K8SService.java
+++
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/K8SService.java
@@ -62,6 +62,10 @@ public class K8SService extends K8SMetrics {
@Setter
@ScopeDefaultColumn.DefinedByField(columnName = "attr4", isAttribute =
true)
private String attr4;
+ @Getter
+ @Setter
+ @ScopeDefaultColumn.DefinedByField(columnName = "attr5", isAttribute =
true)
+ private String attr5;
@Override
public int scope() {
diff --git
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/Service.java
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/Service.java
index 0160c997f3..f4ceea1bc8 100644
---
a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/Service.java
+++
b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/Service.java
@@ -104,6 +104,10 @@ public class Service extends Source {
@Setter
@ScopeDefaultColumn.DefinedByField(columnName = "attr4", isAttribute =
true)
private String attr4;
+ @Getter
+ @Setter
+ @ScopeDefaultColumn.DefinedByField(columnName = "attr5", isAttribute =
true)
+ private String attr5;
public String getTag(String key) {
return originalTags.get(key);
diff --git
a/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/mqe/rt/MQEVisitor.java
b/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/mqe/rt/MQEVisitor.java
index b354f2edd6..5368f3cb8f 100644
---
a/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/mqe/rt/MQEVisitor.java
+++
b/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/mqe/rt/MQEVisitor.java
@@ -129,7 +129,7 @@ public class MQEVisitor extends MQEVisitorBase {
if (topN <= 0) {
throw new IllegalExpressionException("TopN value
must be > 0.");
}
- String[] attrsCondition = new String[5];
+ String[] attrsCondition = new String[6];
if (parent.attributeList() != null) {
for (MQEParser.AttributeContext attributeContext :
parent.attributeList().attribute()) {
String attrName =
attributeContext.attributeName().getText();