提交 e12ddf32 编写于 作者: P peng-yongsheng

Application metric pyramid aggregate test successful.

上级 7e84aedd
......@@ -59,7 +59,7 @@ public class ApplicationMetricAlarmGraph {
.addNext(new ApplicationMetricAlarmToListNodeProcessor())
.addNext(new ApplicationMetricAlarmListPersistenceWorker.Factory(moduleManager).create(workerCreateListener));
link(graph);
// link(graph);
}
private void link(Graph<ApplicationMetric> graph) {
......
......@@ -59,7 +59,7 @@ public class InstanceMetricAlarmGraph {
.addNext(new InstanceMetricAlarmToListNodeProcessor())
.addNext(new InstanceMetricAlarmListPersistenceWorker.Factory(moduleManager).create(workerCreateListener));
link(graph);
// link(graph);
}
private void link(Graph<InstanceMetric> graph) {
......
......@@ -37,9 +37,10 @@ public class ApplicationDayMetricTransformNode implements NodeProcessor<Applicat
@Override
public void process(ApplicationMetric applicationMetric, Next<ApplicationMetric> next) {
long timeBucket = TimeBucketUtils.INSTANCE.minuteToDay(applicationMetric.getTimeBucket());
applicationMetric.setId(String.valueOf(timeBucket) + Const.ID_SPLIT + applicationMetric.getMetricId());
applicationMetric.setTimeBucket(timeBucket);
next.execute(applicationMetric);
ApplicationMetric newApplicationMetric = ApplicationMetricCopy.copy(applicationMetric);
newApplicationMetric.setId(String.valueOf(timeBucket) + Const.ID_SPLIT + applicationMetric.getMetricId());
newApplicationMetric.setTimeBucket(timeBucket);
next.execute(newApplicationMetric);
}
}
......@@ -37,9 +37,10 @@ public class ApplicationHourMetricTransformNode implements NodeProcessor<Applica
@Override
public void process(ApplicationMetric applicationMetric, Next<ApplicationMetric> next) {
long timeBucket = TimeBucketUtils.INSTANCE.minuteToHour(applicationMetric.getTimeBucket());
applicationMetric.setId(String.valueOf(timeBucket) + Const.ID_SPLIT + applicationMetric.getMetricId());
applicationMetric.setTimeBucket(timeBucket);
next.execute(applicationMetric);
ApplicationMetric newApplicationMetric = ApplicationMetricCopy.copy(applicationMetric);
newApplicationMetric.setId(String.valueOf(timeBucket) + Const.ID_SPLIT + applicationMetric.getMetricId());
newApplicationMetric.setTimeBucket(timeBucket);
next.execute(newApplicationMetric);
}
}
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*/
package org.apache.skywalking.apm.collector.analysis.metric.provider.worker.application.metric;
import org.apache.skywalking.apm.collector.storage.table.application.ApplicationMetric;
/**
* @author peng-yongsheng
*/
public class ApplicationMetricCopy {
public static ApplicationMetric copy(ApplicationMetric applicationMetric) {
ApplicationMetric newApplicationMetric = new ApplicationMetric();
newApplicationMetric.setId(applicationMetric.getId());
newApplicationMetric.setMetricId(applicationMetric.getMetricId());
newApplicationMetric.setSourceValue(applicationMetric.getSourceValue());
newApplicationMetric.setApplicationId(applicationMetric.getApplicationId());
newApplicationMetric.setTransactionCalls(applicationMetric.getTransactionCalls());
newApplicationMetric.setTransactionDurationSum(applicationMetric.getTransactionDurationSum());
newApplicationMetric.setTransactionErrorCalls(applicationMetric.getTransactionErrorCalls());
newApplicationMetric.setTransactionErrorDurationSum(applicationMetric.getTransactionErrorDurationSum());
newApplicationMetric.setBusinessTransactionCalls(applicationMetric.getBusinessTransactionCalls());
newApplicationMetric.setBusinessTransactionDurationSum(applicationMetric.getBusinessTransactionDurationSum());
newApplicationMetric.setBusinessTransactionErrorCalls(applicationMetric.getBusinessTransactionErrorCalls());
newApplicationMetric.setBusinessTransactionErrorDurationSum(applicationMetric.getBusinessTransactionErrorDurationSum());
newApplicationMetric.setMqTransactionCalls(applicationMetric.getMqTransactionCalls());
newApplicationMetric.setMqTransactionDurationSum(applicationMetric.getMqTransactionDurationSum());
newApplicationMetric.setMqTransactionErrorCalls(applicationMetric.getMqTransactionErrorCalls());
newApplicationMetric.setMqTransactionErrorDurationSum(applicationMetric.getMqTransactionErrorDurationSum());
newApplicationMetric.setSatisfiedCount(applicationMetric.getSatisfiedCount());
newApplicationMetric.setToleratingCount(applicationMetric.getToleratingCount());
newApplicationMetric.setFrustratedCount(applicationMetric.getFrustratedCount());
newApplicationMetric.setTimeBucket(applicationMetric.getTimeBucket());
return newApplicationMetric;
}
}
......@@ -50,8 +50,8 @@ public class ApplicationMetricGraph {
Graph<ApplicationReferenceMetric> graph = GraphManager.INSTANCE.createIfAbsent(MetricGraphIdDefine.APPLICATION_METRIC_GRAPH_ID, ApplicationReferenceMetric.class);
Node<ApplicationMetric, ApplicationMetric> remoteNode = graph.addNode(new ApplicationMetricAggregationWorker.Factory(moduleManager).create(workerCreateListener))
.addNext(new ApplicationMetricRemoteWorker.Factory(moduleManager, remoteSenderService, MetricGraphIdDefine.APPLICATION_METRIC_GRAPH_ID).create(workerCreateListener));
Node<ApplicationMetric, ApplicationMetric> remoteNode = graph.addNode(new ApplicationMinuteMetricAggregationWorker.Factory(moduleManager).create(workerCreateListener))
.addNext(new ApplicationMinuteMetricRemoteWorker.Factory(moduleManager, remoteSenderService, MetricGraphIdDefine.APPLICATION_METRIC_GRAPH_ID).create(workerCreateListener));
remoteNode.addNext(new ApplicationMinuteMetricPersistenceWorker.Factory(moduleManager).create(workerCreateListener));
......@@ -64,7 +64,7 @@ public class ApplicationMetricGraph {
remoteNode.addNext(new ApplicationMonthMetricTransformNode())
.addNext(new ApplicationMonthMetricPersistenceWorker.Factory(moduleManager).create(workerCreateListener));
// link(graph);
link(graph);
}
private void link(Graph<ApplicationReferenceMetric> graph) {
......
......@@ -29,9 +29,9 @@ import org.apache.skywalking.apm.collector.storage.table.application.Application
/**
* @author peng-yongsheng
*/
public class ApplicationMetricAggregationWorker extends AggregationWorker<ApplicationReferenceMetric, ApplicationMetric> {
public class ApplicationMinuteMetricAggregationWorker extends AggregationWorker<ApplicationReferenceMetric, ApplicationMetric> {
public ApplicationMetricAggregationWorker(ModuleManager moduleManager) {
public ApplicationMinuteMetricAggregationWorker(ModuleManager moduleManager) {
super(moduleManager);
}
......@@ -80,14 +80,14 @@ public class ApplicationMetricAggregationWorker extends AggregationWorker<Applic
return applicationMetric;
}
public static class Factory extends AbstractLocalAsyncWorkerProvider<ApplicationReferenceMetric, ApplicationMetric, ApplicationMetricAggregationWorker> {
public static class Factory extends AbstractLocalAsyncWorkerProvider<ApplicationReferenceMetric, ApplicationMetric, ApplicationMinuteMetricAggregationWorker> {
public Factory(ModuleManager moduleManager) {
super(moduleManager);
}
@Override public ApplicationMetricAggregationWorker workerInstance(ModuleManager moduleManager) {
return new ApplicationMetricAggregationWorker(moduleManager);
@Override public ApplicationMinuteMetricAggregationWorker workerInstance(ModuleManager moduleManager) {
return new ApplicationMinuteMetricAggregationWorker(moduleManager);
}
@Override public int queueSize() {
......
......@@ -30,9 +30,9 @@ import org.apache.skywalking.apm.collector.storage.table.application.Application
/**
* @author peng-yongsheng
*/
public class ApplicationMetricRemoteWorker extends AbstractRemoteWorker<ApplicationMetric, ApplicationMetric> {
public class ApplicationMinuteMetricRemoteWorker extends AbstractRemoteWorker<ApplicationMetric, ApplicationMetric> {
public ApplicationMetricRemoteWorker(ModuleManager moduleManager) {
public ApplicationMinuteMetricRemoteWorker(ModuleManager moduleManager) {
super(moduleManager);
}
......@@ -48,13 +48,13 @@ public class ApplicationMetricRemoteWorker extends AbstractRemoteWorker<Applicat
return Selector.HashCode;
}
public static class Factory extends AbstractRemoteWorkerProvider<ApplicationMetric, ApplicationMetric, ApplicationMetricRemoteWorker> {
public static class Factory extends AbstractRemoteWorkerProvider<ApplicationMetric, ApplicationMetric, ApplicationMinuteMetricRemoteWorker> {
public Factory(ModuleManager moduleManager, RemoteSenderService remoteSenderService, int graphId) {
super(moduleManager, remoteSenderService, graphId);
}
@Override public ApplicationMetricRemoteWorker workerInstance(ModuleManager moduleManager) {
return new ApplicationMetricRemoteWorker(moduleManager);
@Override public ApplicationMinuteMetricRemoteWorker workerInstance(ModuleManager moduleManager) {
return new ApplicationMinuteMetricRemoteWorker(moduleManager);
}
}
}
......@@ -37,9 +37,10 @@ public class ApplicationMonthMetricTransformNode implements NodeProcessor<Applic
@Override
public void process(ApplicationMetric applicationMetric, Next<ApplicationMetric> next) {
long timeBucket = TimeBucketUtils.INSTANCE.minuteToMonth(applicationMetric.getTimeBucket());
applicationMetric.setId(String.valueOf(timeBucket) + Const.ID_SPLIT + applicationMetric.getMetricId());
applicationMetric.setTimeBucket(timeBucket);
next.execute(applicationMetric);
ApplicationMetric newApplicationMetric = ApplicationMetricCopy.copy(applicationMetric);
newApplicationMetric.setId(String.valueOf(timeBucket) + Const.ID_SPLIT + applicationMetric.getMetricId());
newApplicationMetric.setTimeBucket(timeBucket);
next.execute(newApplicationMetric);
}
}
......@@ -59,7 +59,10 @@ import org.apache.skywalking.apm.collector.storage.dao.acp.IApplicationComponent
import org.apache.skywalking.apm.collector.storage.dao.acp.IApplicationComponentHourPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.dao.acp.IApplicationComponentMinutePersistenceDAO;
import org.apache.skywalking.apm.collector.storage.dao.acp.IApplicationComponentMonthPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.dao.amp.IApplicationDayMetricPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.dao.amp.IApplicationHourMetricPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.dao.amp.IApplicationMinuteMetricPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.dao.amp.IApplicationMonthMetricPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.dao.ampp.IApplicationMappingDayPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.dao.ampp.IApplicationMappingHourPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.dao.ampp.IApplicationMappingMinutePersistenceDAO;
......@@ -157,7 +160,11 @@ public class StorageModule extends Module {
classes.add(IInstanceMappingMonthPersistenceDAO.class);
classes.add(IGlobalTracePersistenceDAO.class);
classes.add(IApplicationMinuteMetricPersistenceDAO.class);
classes.add(IApplicationHourMetricPersistenceDAO.class);
classes.add(IApplicationDayMetricPersistenceDAO.class);
classes.add(IApplicationMonthMetricPersistenceDAO.class);
classes.add(IApplicationReferenceMinuteMetricPersistenceDAO.class);
classes.add(IApplicationReferenceHourMetricPersistenceDAO.class);
......
......@@ -61,7 +61,7 @@ public class InstanceMetric extends StreamData implements Metric {
};
private static final Column[] BOOLEAN_COLUMNS = {};
private static final Column[] BYTE_COLUMNS = {};
public InstanceMetric() {
......
......@@ -68,7 +68,10 @@ import org.apache.skywalking.apm.collector.storage.dao.acp.IApplicationComponent
import org.apache.skywalking.apm.collector.storage.dao.acp.IApplicationComponentHourPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.dao.acp.IApplicationComponentMinutePersistenceDAO;
import org.apache.skywalking.apm.collector.storage.dao.acp.IApplicationComponentMonthPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.dao.amp.IApplicationDayMetricPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.dao.amp.IApplicationHourMetricPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.dao.amp.IApplicationMinuteMetricPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.dao.amp.IApplicationMonthMetricPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.dao.ampp.IApplicationMappingDayPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.dao.ampp.IApplicationMappingHourPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.dao.ampp.IApplicationMappingMinutePersistenceDAO;
......@@ -144,7 +147,10 @@ import org.apache.skywalking.apm.collector.storage.es.dao.acp.ApplicationCompone
import org.apache.skywalking.apm.collector.storage.es.dao.acp.ApplicationComponentHourEsPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.es.dao.acp.ApplicationComponentMinuteEsPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.es.dao.acp.ApplicationComponentMonthEsPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.es.dao.amp.ApplicationDayMetricEsPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.es.dao.amp.ApplicationHourMetricEsPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.es.dao.amp.ApplicationMinuteMetricEsPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.es.dao.amp.ApplicationMonthMetricEsPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.es.dao.ampp.ApplicationMappingDayEsPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.es.dao.ampp.ApplicationMappingHourEsPersistenceDAO;
import org.apache.skywalking.apm.collector.storage.es.dao.ampp.ApplicationMappingMinuteEsPersistenceDAO;
......@@ -292,7 +298,11 @@ public class StorageModuleEsProvider extends ModuleProvider {
this.registerServiceImplementation(IInstanceMappingMonthPersistenceDAO.class, new InstanceMappingMonthEsPersistenceDAO(elasticSearchClient));
this.registerServiceImplementation(IGlobalTracePersistenceDAO.class, new GlobalTraceEsPersistenceDAO(elasticSearchClient));
this.registerServiceImplementation(IApplicationMinuteMetricPersistenceDAO.class, new ApplicationMinuteMetricEsPersistenceDAO(elasticSearchClient));
this.registerServiceImplementation(IApplicationHourMetricPersistenceDAO.class, new ApplicationHourMetricEsPersistenceDAO(elasticSearchClient));
this.registerServiceImplementation(IApplicationDayMetricPersistenceDAO.class, new ApplicationDayMetricEsPersistenceDAO(elasticSearchClient));
this.registerServiceImplementation(IApplicationMonthMetricPersistenceDAO.class, new ApplicationMonthMetricEsPersistenceDAO(elasticSearchClient));
this.registerServiceImplementation(IApplicationReferenceMinuteMetricPersistenceDAO.class, new ApplicationReferenceMinuteMetricEsPersistenceDAO(elasticSearchClient));
this.registerServiceImplementation(IApplicationReferenceHourMetricPersistenceDAO.class, new ApplicationReferenceHourMetricEsPersistenceDAO(elasticSearchClient));
......
......@@ -16,7 +16,7 @@
*
*/
package org.apache.skywalking.apm.collector.storage.es.define;
package org.apache.skywalking.apm.collector.storage.es.define.amp;
import org.apache.skywalking.apm.collector.storage.es.base.define.ElasticSearchColumnDefine;
import org.apache.skywalking.apm.collector.storage.es.base.define.ElasticSearchTableDefine;
......@@ -25,18 +25,17 @@ import org.apache.skywalking.apm.collector.storage.table.application.Application
/**
* @author peng-yongsheng
*/
public class ApplicationMetricEsTableDefine extends ElasticSearchTableDefine {
public abstract class AbstractApplicationMetricEsTableDefine extends ElasticSearchTableDefine {
public ApplicationMetricEsTableDefine() {
super(ApplicationMetricTable.TABLE);
public AbstractApplicationMetricEsTableDefine(String name) {
super(name);
}
@Override public int refreshInterval() {
return 2;
}
@Override public void initialize() {
@Override public final void initialize() {
addColumn(new ElasticSearchColumnDefine(ApplicationMetricTable.COLUMN_ID, ElasticSearchColumnDefine.Type.Keyword.name()));
addColumn(new ElasticSearchColumnDefine(ApplicationMetricTable.COLUMN_METRIC_ID, ElasticSearchColumnDefine.Type.Keyword.name()));
addColumn(new ElasticSearchColumnDefine(ApplicationMetricTable.COLUMN_APPLICATION_ID, ElasticSearchColumnDefine.Type.Integer.name()));
addColumn(new ElasticSearchColumnDefine(ApplicationMetricTable.COLUMN_SOURCE_VALUE, ElasticSearchColumnDefine.Type.Integer.name()));
addColumn(new ElasticSearchColumnDefine(ApplicationMetricTable.COLUMN_TRANSACTION_CALLS, ElasticSearchColumnDefine.Type.Long.name()));
addColumn(new ElasticSearchColumnDefine(ApplicationMetricTable.COLUMN_TRANSACTION_ERROR_CALLS, ElasticSearchColumnDefine.Type.Long.name()));
......@@ -58,6 +57,5 @@ public class ApplicationMetricEsTableDefine extends ElasticSearchTableDefine {
addColumn(new ElasticSearchColumnDefine(ApplicationMetricTable.COLUMN_FRUSTRATED_COUNT, ElasticSearchColumnDefine.Type.Long.name()));
addColumn(new ElasticSearchColumnDefine(ApplicationMetricTable.COLUMN_TIME_BUCKET, ElasticSearchColumnDefine.Type.Long.name()));
addColumn(new ElasticSearchColumnDefine(ApplicationMetricTable.COLUMN_SOURCE_VALUE, ElasticSearchColumnDefine.Type.Integer.name()));
}
}
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*/
package org.apache.skywalking.apm.collector.storage.es.define.amp;
import org.apache.skywalking.apm.collector.core.storage.TimePyramid;
import org.apache.skywalking.apm.collector.core.util.Const;
import org.apache.skywalking.apm.collector.storage.table.application.ApplicationMetricTable;
/**
* @author peng-yongsheng
*/
public class ApplicationDayMetricEsTableDefine extends AbstractApplicationMetricEsTableDefine {
public ApplicationDayMetricEsTableDefine() {
super(ApplicationMetricTable.TABLE + Const.ID_SPLIT + TimePyramid.Day.getName());
}
@Override public int refreshInterval() {
return 2;
}
}
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*/
package org.apache.skywalking.apm.collector.storage.es.define.amp;
import org.apache.skywalking.apm.collector.core.storage.TimePyramid;
import org.apache.skywalking.apm.collector.core.util.Const;
import org.apache.skywalking.apm.collector.storage.table.application.ApplicationMetricTable;
/**
* @author peng-yongsheng
*/
public class ApplicationHourMetricEsTableDefine extends AbstractApplicationMetricEsTableDefine {
public ApplicationHourMetricEsTableDefine() {
super(ApplicationMetricTable.TABLE + Const.ID_SPLIT + TimePyramid.Hour.getName());
}
@Override public int refreshInterval() {
return 2;
}
}
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*/
package org.apache.skywalking.apm.collector.storage.es.define.amp;
import org.apache.skywalking.apm.collector.core.storage.TimePyramid;
import org.apache.skywalking.apm.collector.core.util.Const;
import org.apache.skywalking.apm.collector.storage.table.application.ApplicationMetricTable;
/**
* @author peng-yongsheng
*/
public class ApplicationMinuteMetricEsTableDefine extends AbstractApplicationMetricEsTableDefine {
public ApplicationMinuteMetricEsTableDefine() {
super(ApplicationMetricTable.TABLE + Const.ID_SPLIT + TimePyramid.Minute.getName());
}
@Override public int refreshInterval() {
return 2;
}
}
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*/
package org.apache.skywalking.apm.collector.storage.es.define.amp;
import org.apache.skywalking.apm.collector.core.storage.TimePyramid;
import org.apache.skywalking.apm.collector.core.util.Const;
import org.apache.skywalking.apm.collector.storage.table.application.ApplicationMetricTable;
/**
* @author peng-yongsheng
*/
public class ApplicationMonthMetricEsTableDefine extends AbstractApplicationMetricEsTableDefine {
public ApplicationMonthMetricEsTableDefine() {
super(ApplicationMetricTable.TABLE + Const.ID_SPLIT + TimePyramid.Month.getName());
}
@Override public int refreshInterval() {
return 2;
}
}
......@@ -43,6 +43,11 @@ org.apache.skywalking.apm.collector.storage.es.define.armp.ApplicationReferenceH
org.apache.skywalking.apm.collector.storage.es.define.armp.ApplicationReferenceDayMetricEsTableDefine
org.apache.skywalking.apm.collector.storage.es.define.armp.ApplicationReferenceMonthMetricEsTableDefine
org.apache.skywalking.apm.collector.storage.es.define.amp.ApplicationMinuteMetricEsTableDefine
org.apache.skywalking.apm.collector.storage.es.define.amp.ApplicationHourMetricEsTableDefine
org.apache.skywalking.apm.collector.storage.es.define.amp.ApplicationDayMetricEsTableDefine
org.apache.skywalking.apm.collector.storage.es.define.amp.ApplicationMonthMetricEsTableDefine
org.apache.skywalking.apm.collector.storage.es.define.GlobalTraceEsTableDefine
org.apache.skywalking.apm.collector.storage.es.define.SegmentEsTableDefine
org.apache.skywalking.apm.collector.storage.es.define.SegmentCostEsTableDefine
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册