Commit 0ccf7f13d16c4ff2a346727337bdc0d9f7351cc6

Authored by vzikratyi
Committed by Andrew Shvayka
1 parent d98bbacd

Moved 'stats' to separate module

Showing 35 changed files with 158 additions and 64 deletions
@@ -98,6 +98,10 @@ @@ -98,6 +98,10 @@
98 <artifactId>queue</artifactId> 98 <artifactId>queue</artifactId>
99 </dependency> 99 </dependency>
100 <dependency> 100 <dependency>
  101 + <groupId>org.thingsboard.common</groupId>
  102 + <artifactId>stats</artifactId>
  103 + </dependency>
  104 + <dependency>
101 <groupId>org.thingsboard</groupId> 105 <groupId>org.thingsboard</groupId>
102 <artifactId>dao</artifactId> 106 <artifactId>dao</artifactId>
103 <type>test-jar</type> 107 <type>test-jar</type>
@@ -29,7 +29,8 @@ import java.util.Arrays; @@ -29,7 +29,8 @@ import java.util.Arrays;
29 @ComponentScan({"org.thingsboard.server.install", 29 @ComponentScan({"org.thingsboard.server.install",
30 "org.thingsboard.server.service.component", 30 "org.thingsboard.server.service.component",
31 "org.thingsboard.server.service.install", 31 "org.thingsboard.server.service.install",
32 - "org.thingsboard.server.dao"}) 32 + "org.thingsboard.server.dao",
  33 + "org.thingsboard.server.common.stats"})
33 public class ThingsboardInstallApplication { 34 public class ThingsboardInstallApplication {
34 35
35 private static final String SPRING_CONFIG_NAME_KEY = "--spring.config.name"; 36 private static final String SPRING_CONFIG_NAME_KEY = "--spring.config.name";
@@ -31,7 +31,7 @@ import org.thingsboard.server.queue.TbQueueConsumer; @@ -31,7 +31,7 @@ import org.thingsboard.server.queue.TbQueueConsumer;
31 import org.thingsboard.server.queue.common.TbProtoQueueMsg; 31 import org.thingsboard.server.queue.common.TbProtoQueueMsg;
32 import org.thingsboard.server.queue.discovery.PartitionChangeEvent; 32 import org.thingsboard.server.queue.discovery.PartitionChangeEvent;
33 import org.thingsboard.server.queue.provider.TbCoreQueueFactory; 33 import org.thingsboard.server.queue.provider.TbCoreQueueFactory;
34 -import org.thingsboard.server.common.msg.stats.StatsFactory; 34 +import org.thingsboard.server.common.stats.StatsFactory;
35 import org.thingsboard.server.queue.util.TbCoreComponent; 35 import org.thingsboard.server.queue.util.TbCoreComponent;
36 import org.thingsboard.server.service.encoding.DataDecodingEncodingService; 36 import org.thingsboard.server.service.encoding.DataDecodingEncodingService;
37 import org.thingsboard.server.service.queue.processing.AbstractConsumerService; 37 import org.thingsboard.server.service.queue.processing.AbstractConsumerService;
@@ -42,7 +42,7 @@ import org.thingsboard.server.queue.discovery.PartitionChangeEvent; @@ -42,7 +42,7 @@ import org.thingsboard.server.queue.discovery.PartitionChangeEvent;
42 import org.thingsboard.server.queue.provider.TbRuleEngineQueueFactory; 42 import org.thingsboard.server.queue.provider.TbRuleEngineQueueFactory;
43 import org.thingsboard.server.queue.settings.TbQueueRuleEngineSettings; 43 import org.thingsboard.server.queue.settings.TbQueueRuleEngineSettings;
44 import org.thingsboard.server.queue.settings.TbRuleEngineQueueConfiguration; 44 import org.thingsboard.server.queue.settings.TbRuleEngineQueueConfiguration;
45 -import org.thingsboard.server.common.msg.stats.StatsFactory; 45 +import org.thingsboard.server.common.stats.StatsFactory;
46 import org.thingsboard.server.queue.util.TbRuleEngineComponent; 46 import org.thingsboard.server.queue.util.TbRuleEngineComponent;
47 import org.thingsboard.server.service.encoding.DataDecodingEncodingService; 47 import org.thingsboard.server.service.encoding.DataDecodingEncodingService;
48 import org.thingsboard.server.service.queue.processing.AbstractConsumerService; 48 import org.thingsboard.server.service.queue.processing.AbstractConsumerService;
@@ -17,9 +17,9 @@ package org.thingsboard.server.service.queue; @@ -17,9 +17,9 @@ package org.thingsboard.server.service.queue;
17 17
18 import lombok.extern.slf4j.Slf4j; 18 import lombok.extern.slf4j.Slf4j;
19 import org.thingsboard.server.gen.transport.TransportProtos; 19 import org.thingsboard.server.gen.transport.TransportProtos;
20 -import org.thingsboard.server.common.msg.stats.StatsCounter;  
21 -import org.thingsboard.server.common.msg.stats.StatsFactory;  
22 -import org.thingsboard.server.common.msg.stats.StatsType; 20 +import org.thingsboard.server.common.stats.StatsCounter;
  21 +import org.thingsboard.server.common.stats.StatsFactory;
  22 +import org.thingsboard.server.common.stats.StatsType;
23 23
24 import java.util.*; 24 import java.util.*;
25 25
@@ -20,10 +20,10 @@ import org.thingsboard.server.common.data.id.TenantId; @@ -20,10 +20,10 @@ import org.thingsboard.server.common.data.id.TenantId;
20 import org.thingsboard.server.common.msg.queue.RuleEngineException; 20 import org.thingsboard.server.common.msg.queue.RuleEngineException;
21 import org.thingsboard.server.gen.transport.TransportProtos.ToRuleEngineMsg; 21 import org.thingsboard.server.gen.transport.TransportProtos.ToRuleEngineMsg;
22 import org.thingsboard.server.queue.common.TbProtoQueueMsg; 22 import org.thingsboard.server.queue.common.TbProtoQueueMsg;
23 -import org.thingsboard.server.common.msg.stats.StatsFactory; 23 +import org.thingsboard.server.common.stats.StatsFactory;
24 import org.thingsboard.server.service.queue.processing.TbRuleEngineProcessingResult; 24 import org.thingsboard.server.service.queue.processing.TbRuleEngineProcessingResult;
25 -import org.thingsboard.server.common.msg.stats.StatsCounter;  
26 -import org.thingsboard.server.common.msg.stats.StatsType; 25 +import org.thingsboard.server.common.stats.StatsCounter;
  26 +import org.thingsboard.server.common.stats.StatsType;
27 27
28 import java.util.*; 28 import java.util.*;
29 import java.util.concurrent.ConcurrentHashMap; 29 import java.util.concurrent.ConcurrentHashMap;
@@ -18,9 +18,9 @@ package org.thingsboard.server.service.stats; @@ -18,9 +18,9 @@ package org.thingsboard.server.service.stats;
18 import org.springframework.beans.factory.annotation.Autowired; 18 import org.springframework.beans.factory.annotation.Autowired;
19 import org.springframework.stereotype.Service; 19 import org.springframework.stereotype.Service;
20 import org.thingsboard.server.actors.JsInvokeStats; 20 import org.thingsboard.server.actors.JsInvokeStats;
21 -import org.thingsboard.server.common.msg.stats.StatsCounter;  
22 -import org.thingsboard.server.common.msg.stats.StatsFactory;  
23 -import org.thingsboard.server.common.msg.stats.StatsType; 21 +import org.thingsboard.server.common.stats.StatsCounter;
  22 +import org.thingsboard.server.common.stats.StatsFactory;
  23 +import org.thingsboard.server.common.stats.StatsType;
24 24
25 import javax.annotation.PostConstruct; 25 import javax.annotation.PostConstruct;
26 26
@@ -20,9 +20,9 @@ import org.springframework.beans.factory.annotation.Value; @@ -20,9 +20,9 @@ import org.springframework.beans.factory.annotation.Value;
20 import org.springframework.boot.context.event.ApplicationReadyEvent; 20 import org.springframework.boot.context.event.ApplicationReadyEvent;
21 import org.springframework.context.event.EventListener; 21 import org.springframework.context.event.EventListener;
22 import org.springframework.stereotype.Service; 22 import org.springframework.stereotype.Service;
23 -import org.thingsboard.server.common.msg.stats.MessagesStats;  
24 -import org.thingsboard.server.common.msg.stats.StatsFactory;  
25 -import org.thingsboard.server.common.msg.stats.StatsType; 23 +import org.thingsboard.server.common.stats.MessagesStats;
  24 +import org.thingsboard.server.common.stats.StatsFactory;
  25 +import org.thingsboard.server.common.stats.StatsType;
26 import org.thingsboard.server.queue.TbQueueConsumer; 26 import org.thingsboard.server.queue.TbQueueConsumer;
27 import org.thingsboard.server.queue.TbQueueProducer; 27 import org.thingsboard.server.queue.TbQueueProducer;
28 import org.thingsboard.server.queue.TbQueueResponseTemplate; 28 import org.thingsboard.server.queue.TbQueueResponseTemplate;
@@ -69,21 +69,6 @@ @@ -69,21 +69,6 @@
69 <artifactId>protobuf-java</artifactId> 69 <artifactId>protobuf-java</artifactId>
70 <scope>provided</scope> 70 <scope>provided</scope>
71 </dependency> 71 </dependency>
72 -  
73 - <!--TODO is this a good idea to put actuator here?-->  
74 - <dependency>  
75 - <groupId>org.springframework.boot</groupId>  
76 - <artifactId>spring-boot-starter-actuator</artifactId>  
77 - </dependency>  
78 - <dependency>  
79 - <groupId>io.micrometer</groupId>  
80 - <artifactId>micrometer-core</artifactId>  
81 - </dependency>  
82 - <dependency>  
83 - <groupId>io.micrometer</groupId>  
84 - <artifactId>micrometer-registry-prometheus</artifactId>  
85 - </dependency>  
86 -  
87 <dependency> 72 <dependency>
88 <groupId>junit</groupId> 73 <groupId>junit</groupId>
89 <artifactId>junit</artifactId> 74 <artifactId>junit</artifactId>
@@ -41,6 +41,7 @@ @@ -41,6 +41,7 @@
41 <module>queue</module> 41 <module>queue</module>
42 <module>transport</module> 42 <module>transport</module>
43 <module>dao-api</module> 43 <module>dao-api</module>
  44 + <module>stats</module>
44 </modules> 45 </modules>
45 46
46 </project> 47 </project>
@@ -49,6 +49,10 @@ @@ -49,6 +49,10 @@
49 <artifactId>message</artifactId> 49 <artifactId>message</artifactId>
50 </dependency> 50 </dependency>
51 <dependency> 51 <dependency>
  52 + <groupId>org.thingsboard.common</groupId>
  53 + <artifactId>stats</artifactId>
  54 + </dependency>
  55 + <dependency>
52 <groupId>org.apache.kafka</groupId> 56 <groupId>org.apache.kafka</groupId>
53 <artifactId>kafka-clients</artifactId> 57 <artifactId>kafka-clients</artifactId>
54 </dependency> 58 </dependency>
@@ -16,7 +16,7 @@ @@ -16,7 +16,7 @@
16 package org.thingsboard.server.queue; 16 package org.thingsboard.server.queue;
17 17
18 import com.google.common.util.concurrent.ListenableFuture; 18 import com.google.common.util.concurrent.ListenableFuture;
19 -import org.thingsboard.server.common.msg.stats.MessagesStats; 19 +import org.thingsboard.server.common.stats.MessagesStats;
20 20
21 public interface TbQueueRequestTemplate<Request extends TbQueueMsg, Response extends TbQueueMsg> { 21 public interface TbQueueRequestTemplate<Request extends TbQueueMsg, Response extends TbQueueMsg> {
22 22
@@ -28,7 +28,7 @@ import org.thingsboard.server.queue.TbQueueMsg; @@ -28,7 +28,7 @@ import org.thingsboard.server.queue.TbQueueMsg;
28 import org.thingsboard.server.queue.TbQueueMsgMetadata; 28 import org.thingsboard.server.queue.TbQueueMsgMetadata;
29 import org.thingsboard.server.queue.TbQueueProducer; 29 import org.thingsboard.server.queue.TbQueueProducer;
30 import org.thingsboard.server.queue.TbQueueRequestTemplate; 30 import org.thingsboard.server.queue.TbQueueRequestTemplate;
31 -import org.thingsboard.server.common.msg.stats.MessagesStats; 31 +import org.thingsboard.server.common.stats.MessagesStats;
32 32
33 import java.util.List; 33 import java.util.List;
34 import java.util.UUID; 34 import java.util.UUID;
@@ -23,7 +23,7 @@ import org.thingsboard.server.queue.TbQueueHandler; @@ -23,7 +23,7 @@ import org.thingsboard.server.queue.TbQueueHandler;
23 import org.thingsboard.server.queue.TbQueueMsg; 23 import org.thingsboard.server.queue.TbQueueMsg;
24 import org.thingsboard.server.queue.TbQueueProducer; 24 import org.thingsboard.server.queue.TbQueueProducer;
25 import org.thingsboard.server.queue.TbQueueResponseTemplate; 25 import org.thingsboard.server.queue.TbQueueResponseTemplate;
26 -import org.thingsboard.server.common.msg.stats.MessagesStats; 26 +import org.thingsboard.server.common.stats.MessagesStats;
27 27
28 import java.util.List; 28 import java.util.List;
29 import java.util.UUID; 29 import java.util.UUID;
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<!--
  3 +
  4 + Copyright © 2016-2020 The Thingsboard Authors
  5 +
  6 + Licensed under the Apache License, Version 2.0 (the "License");
  7 + you may not use this file except in compliance with the License.
  8 + You may obtain a copy of the License at
  9 +
  10 + http://www.apache.org/licenses/LICENSE-2.0
  11 +
  12 + Unless required by applicable law or agreed to in writing, software
  13 + distributed under the License is distributed on an "AS IS" BASIS,
  14 + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  15 + See the License for the specific language governing permissions and
  16 + limitations under the License.
  17 +
  18 +-->
  19 +<project xmlns="http://maven.apache.org/POM/4.0.0"
  20 + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  21 + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  22 + <modelVersion>4.0.0</modelVersion>
  23 + <parent>
  24 + <groupId>org.thingsboard</groupId>
  25 + <version>2.5.3-SNAPSHOT</version>
  26 + <artifactId>common</artifactId>
  27 + </parent>
  28 + <groupId>org.thingsboard.common</groupId>
  29 + <artifactId>stats</artifactId>
  30 + <packaging>jar</packaging>
  31 +
  32 + <name>Thingsboard Server Stats</name>
  33 + <url>https://thingsboard.io</url>
  34 +
  35 + <properties>
  36 + <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  37 + <main.dir>${basedir}/../..</main.dir>
  38 + </properties>
  39 +
  40 + <dependencies>
  41 + <dependency>
  42 + <groupId>com.google.guava</groupId>
  43 + <artifactId>guava</artifactId>
  44 + <scope>provided</scope>
  45 + </dependency>
  46 + <dependency>
  47 + <groupId>org.slf4j</groupId>
  48 + <artifactId>slf4j-api</artifactId>
  49 + </dependency>
  50 + <dependency>
  51 + <groupId>org.slf4j</groupId>
  52 + <artifactId>log4j-over-slf4j</artifactId>
  53 + </dependency>
  54 + <dependency>
  55 + <groupId>ch.qos.logback</groupId>
  56 + <artifactId>logback-core</artifactId>
  57 + </dependency>
  58 + <dependency>
  59 + <groupId>ch.qos.logback</groupId>
  60 + <artifactId>logback-classic</artifactId>
  61 + </dependency>
  62 + <dependency>
  63 + <groupId>org.springframework.boot</groupId>
  64 + <artifactId>spring-boot-starter-actuator</artifactId>
  65 + </dependency>
  66 + <dependency>
  67 + <groupId>io.micrometer</groupId>
  68 + <artifactId>micrometer-core</artifactId>
  69 + </dependency>
  70 + <dependency>
  71 + <groupId>io.micrometer</groupId>
  72 + <artifactId>micrometer-registry-prometheus</artifactId>
  73 + </dependency>
  74 +
  75 + <dependency>
  76 + <groupId>junit</groupId>
  77 + <artifactId>junit</artifactId>
  78 + <scope>test</scope>
  79 + </dependency>
  80 + <dependency>
  81 + <groupId>org.mockito</groupId>
  82 + <artifactId>mockito-all</artifactId>
  83 + <scope>test</scope>
  84 + </dependency>
  85 + </dependencies>
  86 +
  87 + <build>
  88 + <plugins>
  89 + </plugins>
  90 + </build>
  91 +
  92 +</project>
common/stats/src/main/java/org/thingsboard/server/common/stats/DefaultCounter.java renamed from common/message/src/main/java/org/thingsboard/server/common/msg/stats/DefaultCounter.java
@@ -13,7 +13,7 @@ @@ -13,7 +13,7 @@
13 * See the License for the specific language governing permissions and 13 * See the License for the specific language governing permissions and
14 * limitations under the License. 14 * limitations under the License.
15 */ 15 */
16 -package org.thingsboard.server.common.msg.stats; 16 +package org.thingsboard.server.common.stats;
17 17
18 import io.micrometer.core.instrument.Counter; 18 import io.micrometer.core.instrument.Counter;
19 19
common/stats/src/main/java/org/thingsboard/server/common/stats/DefaultMessagesStats.java renamed from common/message/src/main/java/org/thingsboard/server/common/msg/stats/DefaultMessagesStats.java
@@ -13,7 +13,7 @@ @@ -13,7 +13,7 @@
13 * See the License for the specific language governing permissions and 13 * See the License for the specific language governing permissions and
14 * limitations under the License. 14 * limitations under the License.
15 */ 15 */
16 -package org.thingsboard.server.common.msg.stats; 16 +package org.thingsboard.server.common.stats;
17 17
18 public class DefaultMessagesStats implements MessagesStats { 18 public class DefaultMessagesStats implements MessagesStats {
19 private final StatsCounter totalCounter; 19 private final StatsCounter totalCounter;
common/stats/src/main/java/org/thingsboard/server/common/stats/DefaultStatsFactory.java renamed from common/message/src/main/java/org/thingsboard/server/common/msg/stats/DefaultStatsFactory.java
@@ -13,7 +13,7 @@ @@ -13,7 +13,7 @@
13 * See the License for the specific language governing permissions and 13 * See the License for the specific language governing permissions and
14 * limitations under the License. 14 * limitations under the License.
15 */ 15 */
16 -package org.thingsboard.server.common.msg.stats; 16 +package org.thingsboard.server.common.stats;
17 17
18 import io.micrometer.core.instrument.Counter; 18 import io.micrometer.core.instrument.Counter;
19 import io.micrometer.core.instrument.MeterRegistry; 19 import io.micrometer.core.instrument.MeterRegistry;
common/stats/src/main/java/org/thingsboard/server/common/stats/MessagesStats.java renamed from common/message/src/main/java/org/thingsboard/server/common/msg/stats/MessagesStats.java
@@ -13,7 +13,7 @@ @@ -13,7 +13,7 @@
13 * See the License for the specific language governing permissions and 13 * See the License for the specific language governing permissions and
14 * limitations under the License. 14 * limitations under the License.
15 */ 15 */
16 -package org.thingsboard.server.common.msg.stats; 16 +package org.thingsboard.server.common.stats;
17 17
18 public interface MessagesStats { 18 public interface MessagesStats {
19 default void incrementTotal() { 19 default void incrementTotal() {
common/stats/src/main/java/org/thingsboard/server/common/stats/StatsCounter.java renamed from common/message/src/main/java/org/thingsboard/server/common/msg/stats/StatsCounter.java
@@ -13,7 +13,7 @@ @@ -13,7 +13,7 @@
13 * See the License for the specific language governing permissions and 13 * See the License for the specific language governing permissions and
14 * limitations under the License. 14 * limitations under the License.
15 */ 15 */
16 -package org.thingsboard.server.common.msg.stats; 16 +package org.thingsboard.server.common.stats;
17 17
18 import io.micrometer.core.instrument.Counter; 18 import io.micrometer.core.instrument.Counter;
19 19
common/stats/src/main/java/org/thingsboard/server/common/stats/StatsFactory.java renamed from common/message/src/main/java/org/thingsboard/server/common/msg/stats/StatsFactory.java
@@ -13,7 +13,7 @@ @@ -13,7 +13,7 @@
13 * See the License for the specific language governing permissions and 13 * See the License for the specific language governing permissions and
14 * limitations under the License. 14 * limitations under the License.
15 */ 15 */
16 -package org.thingsboard.server.common.msg.stats; 16 +package org.thingsboard.server.common.stats;
17 17
18 public interface StatsFactory { 18 public interface StatsFactory {
19 StatsCounter createStatsCounter(String key, String statsName); 19 StatsCounter createStatsCounter(String key, String statsName);
common/stats/src/main/java/org/thingsboard/server/common/stats/StatsType.java renamed from common/message/src/main/java/org/thingsboard/server/common/msg/stats/StatsType.java
@@ -13,7 +13,7 @@ @@ -13,7 +13,7 @@
13 * See the License for the specific language governing permissions and 13 * See the License for the specific language governing permissions and
14 * limitations under the License. 14 * limitations under the License.
15 */ 15 */
16 -package org.thingsboard.server.common.msg.stats; 16 +package org.thingsboard.server.common.stats;
17 17
18 public enum StatsType { 18 public enum StatsType {
19 RULE_ENGINE("ruleEngine"), CORE("core"), TRANSPORT("transport"), JS_INVOKE("jsInvoke"), RATE_EXECUTOR("rateExecutor"); 19 RULE_ENGINE("ruleEngine"), CORE("core"), TRANSPORT("transport"), JS_INVOKE("jsInvoke"), RATE_EXECUTOR("rateExecutor");
@@ -42,6 +42,10 @@ @@ -42,6 +42,10 @@
42 </dependency> 42 </dependency>
43 <dependency> 43 <dependency>
44 <groupId>org.thingsboard.common</groupId> 44 <groupId>org.thingsboard.common</groupId>
  45 + <artifactId>stats</artifactId>
  46 + </dependency>
  47 + <dependency>
  48 + <groupId>org.thingsboard.common</groupId>
45 <artifactId>data</artifactId> 49 <artifactId>data</artifactId>
46 </dependency> 50 </dependency>
47 <dependency> 51 <dependency>
@@ -55,9 +55,9 @@ import org.thingsboard.server.queue.discovery.PartitionService; @@ -55,9 +55,9 @@ import org.thingsboard.server.queue.discovery.PartitionService;
55 import org.thingsboard.server.queue.discovery.TbServiceInfoProvider; 55 import org.thingsboard.server.queue.discovery.TbServiceInfoProvider;
56 import org.thingsboard.server.queue.provider.TbQueueProducerProvider; 56 import org.thingsboard.server.queue.provider.TbQueueProducerProvider;
57 import org.thingsboard.server.queue.provider.TbTransportQueueFactory; 57 import org.thingsboard.server.queue.provider.TbTransportQueueFactory;
58 -import org.thingsboard.server.common.msg.stats.MessagesStats;  
59 -import org.thingsboard.server.common.msg.stats.StatsFactory;  
60 -import org.thingsboard.server.common.msg.stats.StatsType; 58 +import org.thingsboard.server.common.stats.MessagesStats;
  59 +import org.thingsboard.server.common.stats.StatsFactory;
  60 +import org.thingsboard.server.common.stats.StatsType;
61 61
62 import javax.annotation.PostConstruct; 62 import javax.annotation.PostConstruct;
63 import javax.annotation.PreDestroy; 63 import javax.annotation.PreDestroy;
@@ -45,6 +45,10 @@ @@ -45,6 +45,10 @@
45 </dependency> 45 </dependency>
46 <dependency> 46 <dependency>
47 <groupId>org.thingsboard.common</groupId> 47 <groupId>org.thingsboard.common</groupId>
  48 + <artifactId>stats</artifactId>
  49 + </dependency>
  50 + <dependency>
  51 + <groupId>org.thingsboard.common</groupId>
48 <artifactId>dao-api</artifactId> 52 <artifactId>dao-api</artifactId>
49 </dependency> 53 </dependency>
50 <dependency> 54 <dependency>
@@ -24,9 +24,9 @@ import org.springframework.beans.factory.annotation.Value; @@ -24,9 +24,9 @@ import org.springframework.beans.factory.annotation.Value;
24 import org.springframework.scheduling.annotation.Scheduled; 24 import org.springframework.scheduling.annotation.Scheduled;
25 import org.springframework.stereotype.Component; 25 import org.springframework.stereotype.Component;
26 import org.thingsboard.server.common.data.id.TenantId; 26 import org.thingsboard.server.common.data.id.TenantId;
27 -import org.thingsboard.server.common.msg.stats.DefaultCounter;  
28 -import org.thingsboard.server.common.msg.stats.StatsCounter;  
29 -import org.thingsboard.server.common.msg.stats.StatsFactory; 27 +import org.thingsboard.server.common.stats.DefaultCounter;
  28 +import org.thingsboard.server.common.stats.StatsCounter;
  29 +import org.thingsboard.server.common.stats.StatsFactory;
30 import org.thingsboard.server.dao.entity.EntityService; 30 import org.thingsboard.server.dao.entity.EntityService;
31 import org.thingsboard.server.dao.util.AbstractBufferedRateExecutor; 31 import org.thingsboard.server.dao.util.AbstractBufferedRateExecutor;
32 import org.thingsboard.server.dao.util.AsyncTaskContext; 32 import org.thingsboard.server.dao.util.AsyncTaskContext;
@@ -19,7 +19,7 @@ import com.google.common.util.concurrent.ListenableFuture; @@ -19,7 +19,7 @@ import com.google.common.util.concurrent.ListenableFuture;
19 import com.google.common.util.concurrent.SettableFuture; 19 import com.google.common.util.concurrent.SettableFuture;
20 import lombok.extern.slf4j.Slf4j; 20 import lombok.extern.slf4j.Slf4j;
21 import org.thingsboard.common.util.ThingsBoardThreadFactory; 21 import org.thingsboard.common.util.ThingsBoardThreadFactory;
22 -import org.thingsboard.server.common.msg.stats.MessagesStats; 22 +import org.thingsboard.server.common.stats.MessagesStats;
23 23
24 import java.util.ArrayList; 24 import java.util.ArrayList;
25 import java.util.List; 25 import java.util.List;
@@ -28,7 +28,6 @@ import java.util.concurrent.ExecutorService; @@ -28,7 +28,6 @@ import java.util.concurrent.ExecutorService;
28 import java.util.concurrent.Executors; 28 import java.util.concurrent.Executors;
29 import java.util.concurrent.LinkedBlockingQueue; 29 import java.util.concurrent.LinkedBlockingQueue;
30 import java.util.concurrent.TimeUnit; 30 import java.util.concurrent.TimeUnit;
31 -import java.util.concurrent.atomic.AtomicInteger;  
32 import java.util.function.Consumer; 31 import java.util.function.Consumer;
33 import java.util.stream.Collectors; 32 import java.util.stream.Collectors;
34 33
@@ -18,7 +18,7 @@ package org.thingsboard.server.dao.sql; @@ -18,7 +18,7 @@ package org.thingsboard.server.dao.sql;
18 import lombok.Builder; 18 import lombok.Builder;
19 import lombok.Data; 19 import lombok.Data;
20 import lombok.extern.slf4j.Slf4j; 20 import lombok.extern.slf4j.Slf4j;
21 -import org.thingsboard.server.common.msg.stats.MessagesStats; 21 +import org.thingsboard.server.common.stats.MessagesStats;
22 22
23 @Slf4j 23 @Slf4j
24 @Data 24 @Data
@@ -26,7 +26,7 @@ import org.thingsboard.server.common.data.UUIDConverter; @@ -26,7 +26,7 @@ import org.thingsboard.server.common.data.UUIDConverter;
26 import org.thingsboard.server.common.data.id.EntityId; 26 import org.thingsboard.server.common.data.id.EntityId;
27 import org.thingsboard.server.common.data.id.TenantId; 27 import org.thingsboard.server.common.data.id.TenantId;
28 import org.thingsboard.server.common.data.kv.AttributeKvEntry; 28 import org.thingsboard.server.common.data.kv.AttributeKvEntry;
29 -import org.thingsboard.server.common.msg.stats.StatsFactory; 29 +import org.thingsboard.server.common.stats.StatsFactory;
30 import org.thingsboard.server.dao.DaoUtil; 30 import org.thingsboard.server.dao.DaoUtil;
31 import org.thingsboard.server.dao.attributes.AttributesDao; 31 import org.thingsboard.server.dao.attributes.AttributesDao;
32 import org.thingsboard.server.dao.model.sql.AttributeKvCompositeKey; 32 import org.thingsboard.server.dao.model.sql.AttributeKvCompositeKey;
@@ -30,7 +30,7 @@ import org.thingsboard.server.common.data.kv.Aggregation; @@ -30,7 +30,7 @@ import org.thingsboard.server.common.data.kv.Aggregation;
30 import org.thingsboard.server.common.data.kv.DeleteTsKvQuery; 30 import org.thingsboard.server.common.data.kv.DeleteTsKvQuery;
31 import org.thingsboard.server.common.data.kv.ReadTsKvQuery; 31 import org.thingsboard.server.common.data.kv.ReadTsKvQuery;
32 import org.thingsboard.server.common.data.kv.TsKvEntry; 32 import org.thingsboard.server.common.data.kv.TsKvEntry;
33 -import org.thingsboard.server.common.msg.stats.StatsFactory; 33 +import org.thingsboard.server.common.stats.StatsFactory;
34 import org.thingsboard.server.dao.DaoUtil; 34 import org.thingsboard.server.dao.DaoUtil;
35 import org.thingsboard.server.dao.model.sqlts.ts.TsKvEntity; 35 import org.thingsboard.server.dao.model.sqlts.ts.TsKvEntity;
36 import org.thingsboard.server.dao.sql.TbSqlBlockingQueue; 36 import org.thingsboard.server.dao.sql.TbSqlBlockingQueue;
@@ -34,7 +34,7 @@ import org.thingsboard.server.common.data.kv.DeleteTsKvQuery; @@ -34,7 +34,7 @@ import org.thingsboard.server.common.data.kv.DeleteTsKvQuery;
34 import org.thingsboard.server.common.data.kv.ReadTsKvQuery; 34 import org.thingsboard.server.common.data.kv.ReadTsKvQuery;
35 import org.thingsboard.server.common.data.kv.StringDataEntry; 35 import org.thingsboard.server.common.data.kv.StringDataEntry;
36 import org.thingsboard.server.common.data.kv.TsKvEntry; 36 import org.thingsboard.server.common.data.kv.TsKvEntry;
37 -import org.thingsboard.server.common.msg.stats.StatsFactory; 37 +import org.thingsboard.server.common.stats.StatsFactory;
38 import org.thingsboard.server.dao.DaoUtil; 38 import org.thingsboard.server.dao.DaoUtil;
39 import org.thingsboard.server.dao.model.sqlts.dictionary.TsKvDictionary; 39 import org.thingsboard.server.dao.model.sqlts.dictionary.TsKvDictionary;
40 import org.thingsboard.server.dao.model.sqlts.dictionary.TsKvDictionaryCompositeKey; 40 import org.thingsboard.server.dao.model.sqlts.dictionary.TsKvDictionaryCompositeKey;
@@ -31,7 +31,7 @@ import org.thingsboard.server.common.data.kv.Aggregation; @@ -31,7 +31,7 @@ import org.thingsboard.server.common.data.kv.Aggregation;
31 import org.thingsboard.server.common.data.kv.DeleteTsKvQuery; 31 import org.thingsboard.server.common.data.kv.DeleteTsKvQuery;
32 import org.thingsboard.server.common.data.kv.ReadTsKvQuery; 32 import org.thingsboard.server.common.data.kv.ReadTsKvQuery;
33 import org.thingsboard.server.common.data.kv.TsKvEntry; 33 import org.thingsboard.server.common.data.kv.TsKvEntry;
34 -import org.thingsboard.server.common.msg.stats.StatsFactory; 34 +import org.thingsboard.server.common.stats.StatsFactory;
35 import org.thingsboard.server.dao.DaoUtil; 35 import org.thingsboard.server.dao.DaoUtil;
36 import org.thingsboard.server.dao.model.sqlts.timescale.ts.TimescaleTsKvEntity; 36 import org.thingsboard.server.dao.model.sqlts.timescale.ts.TimescaleTsKvEntity;
37 import org.thingsboard.server.dao.sql.TbSqlBlockingQueueParams; 37 import org.thingsboard.server.dao.sql.TbSqlBlockingQueueParams;
@@ -23,16 +23,12 @@ import com.google.common.util.concurrent.SettableFuture; @@ -23,16 +23,12 @@ import com.google.common.util.concurrent.SettableFuture;
23 import lombok.extern.slf4j.Slf4j; 23 import lombok.extern.slf4j.Slf4j;
24 import org.thingsboard.common.util.ThingsBoardThreadFactory; 24 import org.thingsboard.common.util.ThingsBoardThreadFactory;
25 import org.thingsboard.server.common.data.id.TenantId; 25 import org.thingsboard.server.common.data.id.TenantId;
26 -import org.thingsboard.server.common.msg.stats.DefaultCounter;  
27 -import org.thingsboard.server.common.msg.stats.StatsCounter;  
28 -import org.thingsboard.server.common.msg.stats.StatsFactory;  
29 -import org.thingsboard.server.common.msg.stats.StatsType; 26 +import org.thingsboard.server.common.stats.StatsFactory;
  27 +import org.thingsboard.server.common.stats.StatsType;
30 import org.thingsboard.server.common.msg.tools.TbRateLimits; 28 import org.thingsboard.server.common.msg.tools.TbRateLimits;
31 import org.thingsboard.server.dao.nosql.CassandraStatementTask; 29 import org.thingsboard.server.dao.nosql.CassandraStatementTask;
32 30
33 import javax.annotation.Nullable; 31 import javax.annotation.Nullable;
34 -import java.util.ArrayList;  
35 -import java.util.List;  
36 import java.util.UUID; 32 import java.util.UUID;
37 import java.util.concurrent.*; 33 import java.util.concurrent.*;
38 import java.util.concurrent.atomic.AtomicInteger; 34 import java.util.concurrent.atomic.AtomicInteger;
@@ -18,16 +18,15 @@ package org.thingsboard.server.dao.util; @@ -18,16 +18,15 @@ package org.thingsboard.server.dao.util;
18 import lombok.Getter; 18 import lombok.Getter;
19 import lombok.extern.slf4j.Slf4j; 19 import lombok.extern.slf4j.Slf4j;
20 import org.thingsboard.server.common.data.id.TenantId; 20 import org.thingsboard.server.common.data.id.TenantId;
21 -import org.thingsboard.server.common.msg.stats.DefaultCounter;  
22 -import org.thingsboard.server.common.msg.stats.StatsCounter;  
23 -import org.thingsboard.server.common.msg.stats.StatsFactory;  
24 -import org.thingsboard.server.common.msg.stats.StatsType; 21 +import org.thingsboard.server.common.stats.DefaultCounter;
  22 +import org.thingsboard.server.common.stats.StatsCounter;
  23 +import org.thingsboard.server.common.stats.StatsFactory;
  24 +import org.thingsboard.server.common.stats.StatsType;
25 25
26 import java.util.ArrayList; 26 import java.util.ArrayList;
27 import java.util.List; 27 import java.util.List;
28 import java.util.concurrent.ConcurrentHashMap; 28 import java.util.concurrent.ConcurrentHashMap;
29 import java.util.concurrent.ConcurrentMap; 29 import java.util.concurrent.ConcurrentMap;
30 -import java.util.concurrent.atomic.AtomicInteger;  
31 30
32 @Slf4j 31 @Slf4j
33 @Getter 32 @Getter
@@ -839,6 +839,11 @@ @@ -839,6 +839,11 @@
839 <version>${project.version}</version> 839 <version>${project.version}</version>
840 </dependency> 840 </dependency>
841 <dependency> 841 <dependency>
  842 + <groupId>org.thingsboard.common</groupId>
  843 + <artifactId>stats</artifactId>
  844 + <version>${project.version}</version>
  845 + </dependency>
  846 + <dependency>
842 <groupId>org.thingsboard</groupId> 847 <groupId>org.thingsboard</groupId>
843 <artifactId>tools</artifactId> 848 <artifactId>tools</artifactId>
844 <version>${project.version}</version> 849 <version>${project.version}</version>