You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by wu...@apache.org on 2019/02/24 01:54:04 UTC
[incubator-skywalking] branch scope-refactor updated: Step 3,
make compile pass.
This is an automated email from the ASF dual-hosted git repository.
wusheng pushed a commit to branch scope-refactor
in repository https://gitbox.apache.org/repos/asf/incubator-skywalking.git
The following commit(s) were added to refs/heads/scope-refactor by this push:
new c9388bf Step 3, make compile pass.
c9388bf is described below
commit c9388bf035e94dfb86e1c48a50e19e6b06959407
Author: Wu Sheng <wu...@foxmail.com>
AuthorDate: Sun Feb 24 09:53:55 2019 +0800
Step 3, make compile pass.
---
.../src/main/java/org/apache/skywalking/oal/tool/Main.java | 6 ++++++
.../apache/skywalking/oal/tool/parser/AnalysisResult.java | 4 +++-
.../org/apache/skywalking/oal/tool/parser/DeepAnalysis.java | 12 ++++++------
.../org/apache/skywalking/oal/tool/parser/OALListener.java | 2 ++
.../main/resources/code-templates/IndicatorImplementor.ftl | 4 ++--
.../apache/skywalking/oal/tool/output/FileGeneratorTest.java | 5 +++--
.../expectedFiles/IndicatorImplementorExpected.java | 4 ++--
.../oap/server/core/source/DefaultScopeDefine.java | 10 +++++-----
.../skywalking/oap/server/core/source/ScopeDeclaration.java | 2 +-
.../skywalking/oap/server/core/source/ScopeDeclarations.java | 2 +-
.../oap/server/core/source/ServiceInstanceJVMMemoryPool.java | 2 +-
.../skywalking/oap/query/graphql/resolver/AlarmQuery.java | 1 -
.../istio/telemetry/provider/IstioTelemetryGRPCHandler.java | 2 +-
13 files changed, 33 insertions(+), 23 deletions(-)
diff --git a/oap-server/generate-tool/src/main/java/org/apache/skywalking/oal/tool/Main.java b/oap-server/generate-tool/src/main/java/org/apache/skywalking/oal/tool/Main.java
index 2036398..3c960d7 100644
--- a/oap-server/generate-tool/src/main/java/org/apache/skywalking/oal/tool/Main.java
+++ b/oap-server/generate-tool/src/main/java/org/apache/skywalking/oal/tool/Main.java
@@ -25,10 +25,16 @@ import org.apache.skywalking.apm.util.StringUtil;
import org.apache.skywalking.oal.tool.meta.*;
import org.apache.skywalking.oal.tool.output.FileGenerator;
import org.apache.skywalking.oal.tool.parser.*;
+import org.apache.skywalking.oap.server.core.annotation.AnnotationScan;
+import org.apache.skywalking.oap.server.core.source.DefaultScopeDefine;
public class Main {
public static void main(String[] args) throws IOException, TemplateException {
+ AnnotationScan scopeScan = new AnnotationScan();
+ scopeScan.registerListener(new DefaultScopeDefine.Listener());
+ scopeScan.scan(null);
+
String modulePath = args[0];
String scriptFilePath = StringUtil.join(File.separatorChar, modulePath, "src", "main", "resources", "official_analysis.oal");
diff --git a/oap-server/generate-tool/src/main/java/org/apache/skywalking/oal/tool/parser/AnalysisResult.java b/oap-server/generate-tool/src/main/java/org/apache/skywalking/oal/tool/parser/AnalysisResult.java
index e9165ca..716594c 100644
--- a/oap-server/generate-tool/src/main/java/org/apache/skywalking/oal/tool/parser/AnalysisResult.java
+++ b/oap-server/generate-tool/src/main/java/org/apache/skywalking/oal/tool/parser/AnalysisResult.java
@@ -34,6 +34,8 @@ public class AnalysisResult {
private String sourceName;
+ private int sourceScopeId;
+
private String sourceAttribute;
private String aggregationFunctionName;
@@ -115,7 +117,7 @@ public class AnalysisResult {
serializeFields.addLongField(sourceColumn.getFieldName());
break;
default:
- throw new IllegalStateException("Unexpected field type [" + type + "] of sourceScopeId sourceColumn [" + sourceColumn.getFieldName() + "]");
+ throw new IllegalStateException("Unexpected field type [" + type + "] of source sourceColumn [" + sourceColumn.getFieldName() + "]");
}
}
diff --git a/oap-server/generate-tool/src/main/java/org/apache/skywalking/oal/tool/parser/DeepAnalysis.java b/oap-server/generate-tool/src/main/java/org/apache/skywalking/oal/tool/parser/DeepAnalysis.java
index 4b645b8..6d479a8 100644
--- a/oap-server/generate-tool/src/main/java/org/apache/skywalking/oal/tool/parser/DeepAnalysis.java
+++ b/oap-server/generate-tool/src/main/java/org/apache/skywalking/oal/tool/parser/DeepAnalysis.java
@@ -28,7 +28,7 @@ import org.apache.skywalking.oap.server.core.storage.annotation.Column;
public class DeepAnalysis {
public AnalysisResult analysis(AnalysisResult result) {
- // 1. Set sub package name by sourceScopeId.metric
+ // 1. Set sub package name by source.metric
result.setPackageName(result.getSourceName().toLowerCase());
Class<? extends Indicator> indicatorClass = Indicators.find(result.getAggregationFunctionName());
@@ -43,12 +43,12 @@ public class DeepAnalysis {
FilterExpression filterExpression = new FilterExpression();
if ("booleanMatch".equals(expression.getExpressionType())) {
filterExpression.setExpressionObject("EqualMatch");
- filterExpression.setLeft("sourceScopeId." + ClassMethodUtil.toIsMethod(expression.getAttribute()) + "()");
+ filterExpression.setLeft("source." + ClassMethodUtil.toIsMethod(expression.getAttribute()) + "()");
filterExpression.setRight(expression.getValue());
result.addFilterExpressions(filterExpression);
} else if ("stringMatch".equals(expression.getExpressionType())) {
filterExpression.setExpressionObject("EqualMatch");
- filterExpression.setLeft("sourceScopeId." + ClassMethodUtil.toGetMethod(expression.getAttribute()) + "()");
+ filterExpression.setLeft("source." + ClassMethodUtil.toGetMethod(expression.getAttribute()) + "()");
filterExpression.setRight(expression.getValue());
result.addFilterExpressions(filterExpression);
} else {
@@ -86,7 +86,7 @@ public class DeepAnalysis {
}
Annotation annotation = parameterAnnotations[0];
if (annotation instanceof SourceFrom) {
- entryMethod.addArg("sourceScopeId." + ClassMethodUtil.toGetMethod(result.getSourceAttribute()) + "()");
+ entryMethod.addArg("source." + ClassMethodUtil.toGetMethod(result.getSourceAttribute()) + "()");
} else if (annotation instanceof ConstOne) {
entryMethod.addArg("1");
} else if (annotation instanceof Expression) {
@@ -95,9 +95,9 @@ public class DeepAnalysis {
if (result.getFuncConditionExpressions().size() == 1) {
ConditionExpression conditionExpression = result.getFuncConditionExpressions().get(0);
if ("booleanMatch".equals(conditionExpression.getExpressionType())) {
- entryMethod.addArg("sourceScopeId." + ClassMethodUtil.toIsMethod(conditionExpression.getAttribute()) + "()");
+ entryMethod.addArg("source." + ClassMethodUtil.toIsMethod(conditionExpression.getAttribute()) + "()");
} else if ("stringMatch".equals(conditionExpression.getExpressionType())) {
- entryMethod.addArg("sourceScopeId." + ClassMethodUtil.toGetMethod(conditionExpression.getAttribute()) + "()");
+ entryMethod.addArg("source." + ClassMethodUtil.toGetMethod(conditionExpression.getAttribute()) + "()");
} else {
throw new IllegalArgumentException("Entrance method:" + entranceMethod + " argument has @ExpressionArg0, but expression type is not supported");
}
diff --git a/oap-server/generate-tool/src/main/java/org/apache/skywalking/oal/tool/parser/OALListener.java b/oap-server/generate-tool/src/main/java/org/apache/skywalking/oal/tool/parser/OALListener.java
index 590ecd6..2e585a3 100644
--- a/oap-server/generate-tool/src/main/java/org/apache/skywalking/oal/tool/parser/OALListener.java
+++ b/oap-server/generate-tool/src/main/java/org/apache/skywalking/oal/tool/parser/OALListener.java
@@ -21,6 +21,7 @@ package org.apache.skywalking.oal.tool.parser;
import java.util.List;
import org.antlr.v4.runtime.misc.NotNull;
import org.apache.skywalking.oal.tool.grammar.*;
+import org.apache.skywalking.oap.server.core.source.DefaultScopeDefine;
public class OALListener extends OALParserBaseListener {
private List<AnalysisResult> results;
@@ -46,6 +47,7 @@ public class OALListener extends OALParserBaseListener {
@Override public void enterSource(OALParser.SourceContext ctx) {
current.setSourceName(ctx.getText());
+ current.setSourceScopeId(DefaultScopeDefine.valueOf(metricNameFormat(ctx.getText())));
}
@Override
diff --git a/oap-server/generate-tool/src/main/resources/code-templates/IndicatorImplementor.ftl b/oap-server/generate-tool/src/main/resources/code-templates/IndicatorImplementor.ftl
index c3b64b3..0af3768 100644
--- a/oap-server/generate-tool/src/main/resources/code-templates/IndicatorImplementor.ftl
+++ b/oap-server/generate-tool/src/main/resources/code-templates/IndicatorImplementor.ftl
@@ -45,7 +45,7 @@ import org.apache.skywalking.oap.server.core.source.DefaultScopeDefine;
*/
@IndicatorType
@StreamData
-@StorageEntity(name = "${tableName}", builder = ${metricName}Indicator.Builder.class, source = Scope.${sourceName})
+@StorageEntity(name = "${tableName}", builder = ${metricName}Indicator.Builder.class, sourceScopeId = ${sourceScopeId})
public class ${metricName}Indicator extends ${indicatorClassName} implements AlarmSupported {
<#list fieldsFromSource as sourceField>
@@ -172,7 +172,7 @@ public class ${metricName}Indicator extends ${indicatorClassName} implements Ala
}
@Override public AlarmMeta getAlarmMeta() {
- return new AlarmMeta("${varName}", Scope.${sourceName}<#if (fieldsFromSource?size>0) ><#list fieldsFromSource as field><#if field.isID()>, ${field.fieldName}</#if></#list></#if>);
+ return new AlarmMeta("${varName}", ${sourceScopeId}<#if (fieldsFromSource?size>0) ><#list fieldsFromSource as field><#if field.isID()>, ${field.fieldName}</#if></#list></#if>);
}
@Override
diff --git a/oap-server/generate-tool/src/test/java/org/apache/skywalking/oal/tool/output/FileGeneratorTest.java b/oap-server/generate-tool/src/test/java/org/apache/skywalking/oal/tool/output/FileGeneratorTest.java
index 25f16b9..cd7847d 100644
--- a/oap-server/generate-tool/src/test/java/org/apache/skywalking/oal/tool/output/FileGeneratorTest.java
+++ b/oap-server/generate-tool/src/test/java/org/apache/skywalking/oal/tool/output/FileGeneratorTest.java
@@ -38,6 +38,7 @@ public class FileGeneratorTest {
AnalysisResult result = new AnalysisResult();
result.setVarName("generate_indicator");
result.setSourceName("Service");
+ result.setSourceScopeId(1);
result.setPackageName("service.serviceavg");
result.setTableName("service_avg");
result.setSourceAttribute("latency");
@@ -47,14 +48,14 @@ public class FileGeneratorTest {
FilterExpression expression = new FilterExpression();
expression.setExpressionObject("EqualMatch");
- expression.setLeft("sourceScopeId.getName()");
+ expression.setLeft("source.getName()");
expression.setRight("\"/service/prod/save\"");
result.addFilterExpressions(expression);
EntryMethod method = new EntryMethod();
method.setMethodName("combine");
method.setArgsExpressions(new LinkedList<>());
- method.getArgsExpressions().add("sourceScopeId.getLatency()");
+ method.getArgsExpressions().add("source.getLatency()");
method.getArgsExpressions().add("1");
result.setEntryMethod(method);
result.addPersistentField("summation", "summation", long.class);
diff --git a/oap-server/generate-tool/src/test/resources/expectedFiles/IndicatorImplementorExpected.java b/oap-server/generate-tool/src/test/resources/expectedFiles/IndicatorImplementorExpected.java
index f496826..4f825c8 100644
--- a/oap-server/generate-tool/src/test/resources/expectedFiles/IndicatorImplementorExpected.java
+++ b/oap-server/generate-tool/src/test/resources/expectedFiles/IndicatorImplementorExpected.java
@@ -38,7 +38,7 @@ import org.apache.skywalking.oap.server.core.source.DefaultScopeDefine;
*/
@IndicatorType
@StreamData
-@StorageEntity(name = "service_avg", builder = ServiceAvgIndicator.Builder.class, sourceScopeId = DefaultScopeDefine.Service)
+@StorageEntity(name = "service_avg", builder = ServiceAvgIndicator.Builder.class, sourceScopeId = 1)
public class ServiceAvgIndicator extends LongAvgIndicator implements AlarmSupported {
@Setter @Getter @Column(columnName = "entity_id") @IDColumn private java.lang.String entityId;
@@ -110,7 +110,7 @@ public class ServiceAvgIndicator extends LongAvgIndicator implements AlarmSuppor
}
@Override public AlarmMeta getAlarmMeta() {
- return new AlarmMeta("generate_indicator", DefaultScopeDefine.Service, entityId);
+ return new AlarmMeta("generate_indicator", 1, entityId);
}
@Override
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/DefaultScopeDefine.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/DefaultScopeDefine.java
index 4f40128..69257aa 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/DefaultScopeDefine.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/DefaultScopeDefine.java
@@ -38,7 +38,7 @@ import static org.apache.skywalking.oap.server.core.source.DefaultScopeDefine.*;
@ScopeDeclaration(id = NETWORK_ADDRESS, name = "NetworkAddress")
@ScopeDeclaration(id = SERVICE_INSTANCE_JVM_CPU, name = "ServiceInstanceJVMCPU")
@ScopeDeclaration(id = SERVICE_INSTANCE_JVM_MEMORY, name = "ServiceInstanceJVMMemory")
-@ScopeDeclaration(id = SERVICE_INSTANCE_JVM_MEMORYPOOL, name = "ServiceInstanceJVMMemoryPool")
+@ScopeDeclaration(id = SERVICE_INSTANCE_JVM_MEMORY_POOL, name = "ServiceInstanceJVMMemoryPool")
@ScopeDeclaration(id = SERVICE_INSTANCE_JVM_GC, name = "ServiceInstanceJVMGC")
@ScopeDeclaration(id = SEGMENT, name = "Segment")
@ScopeDeclaration(id = ALARM, name = "Alarm")
@@ -61,7 +61,7 @@ public class DefaultScopeDefine {
public static final int NETWORK_ADDRESS = 7;
public static final int SERVICE_INSTANCE_JVM_CPU = 8;
public static final int SERVICE_INSTANCE_JVM_MEMORY = 9;
- public static final int SERVICE_INSTANCE_JVM_MEMORYPOOL = 10;
+ public static final int SERVICE_INSTANCE_JVM_MEMORY_POOL = 10;
public static final int SERVICE_INSTANCE_JVM_GC = 11;
public static final int SEGMENT = 12;
public static final int ALARM = 13;
@@ -74,7 +74,7 @@ public class DefaultScopeDefine {
public static class Listener implements AnnotationListener {
@Override public Class<? extends Annotation> annotation() {
- return ScopeDeclaration.class;
+ return ScopeDeclarations.class;
}
@Override public void notify(Class originalClass) {
@@ -106,7 +106,7 @@ public class DefaultScopeDefine {
public static String nameOf(int id) {
String name = ID_2_NAME.get(id);
if (name == null) {
- throw new UnexpectedException("DefaultScopeDefine id = " + id + " not found.");
+ throw new UnexpectedException("ScopeDefine id = " + id + " not found.");
}
return name;
}
@@ -114,7 +114,7 @@ public class DefaultScopeDefine {
public static int valueOf(String name) {
Integer id = NAME_2_ID.get(name);
if (id == null) {
- throw new UnexpectedException("DefaultScopeDefine name = " + name + " not found.");
+ throw new UnexpectedException("ScopeDefine name = " + name + " not found.");
}
return id;
}
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ScopeDeclaration.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ScopeDeclaration.java
index d1889b4..40be762 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ScopeDeclaration.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ScopeDeclaration.java
@@ -26,7 +26,7 @@ import java.lang.annotation.*;
* @author wusheng
*/
@Target({ElementType.TYPE})
-@Retention(RetentionPolicy.SOURCE)
+@Retention(RetentionPolicy.RUNTIME)
@Repeatable(ScopeDeclarations.class)
public @interface ScopeDeclaration {
int id();
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ScopeDeclarations.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ScopeDeclarations.java
index 4fb706f..6f16f5a 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ScopeDeclarations.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ScopeDeclarations.java
@@ -24,7 +24,7 @@ import java.lang.annotation.*;
* @author wusheng
*/
@Target({ElementType.TYPE})
-@Retention(RetentionPolicy.SOURCE)
+@Retention(RetentionPolicy.RUNTIME)
public @interface ScopeDeclarations {
ScopeDeclaration[] value();
}
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMMemoryPool.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMMemoryPool.java
index 5b8aa4d..877c922 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMMemoryPool.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMMemoryPool.java
@@ -25,7 +25,7 @@ import lombok.*;
*/
public class ServiceInstanceJVMMemoryPool extends Source {
@Override public int scope() {
- return DefaultScopeDefine.SERVICE_INSTANCE_JVM_MEMORYPOOL;
+ return DefaultScopeDefine.SERVICE_INSTANCE_JVM_MEMORY_POOL;
}
@Override public String getEntityId() {
diff --git a/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/resolver/AlarmQuery.java b/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/resolver/AlarmQuery.java
index e0f8278..0fc3fc6 100644
--- a/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/resolver/AlarmQuery.java
+++ b/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/resolver/AlarmQuery.java
@@ -24,7 +24,6 @@ import org.apache.skywalking.oap.query.graphql.type.*;
import org.apache.skywalking.oap.server.core.CoreModule;
import org.apache.skywalking.oap.server.core.query.*;
import org.apache.skywalking.oap.server.core.query.entity.*;
-import org.apache.skywalking.oap.server.core.source.DefaultScopeDefine;
import org.apache.skywalking.oap.server.library.module.ModuleManager;
/**
diff --git a/oap-server/server-receiver-plugin/skywalking-istio-telemetry-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/istio/telemetry/provider/IstioTelemetryGRPCHandler.java b/oap-server/server-receiver-plugin/skywalking-istio-telemetry-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/istio/telemetry/provider/IstioTelemetryGRPCHandler.java
index 7590046..668698c 100644
--- a/oap-server/server-receiver-plugin/skywalking-istio-telemetry-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/istio/telemetry/provider/IstioTelemetryGRPCHandler.java
+++ b/oap-server/server-receiver-plugin/skywalking-istio-telemetry-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/istio/telemetry/provider/IstioTelemetryGRPCHandler.java
@@ -90,7 +90,7 @@ public class IstioTelemetryGRPCHandler extends HandleMetricServiceGrpc.HandleMet
int latency = Math.toIntExact(Duration.between(requestTime, responseTime).toMillis());
DetectPoint detectPoint;
- if (reporter.equals("sourceScopeId")) {
+ if (reporter.equals("source")) {
detectPoint = DetectPoint.client;
} else {
detectPoint = DetectPoint.server;