Fix EDQS stats collector names

This commit is contained in:
ViacheslavKlimov 2025-04-10 14:54:42 +03:00
parent b806a41e62
commit 7090610168
4 changed files with 17 additions and 18 deletions

View File

@ -106,7 +106,7 @@ public class HousekeeperStatsService {
this.failedProcessingCounter = register("failedProcessing", statsFactory);
this.reprocessedCounter = register("reprocessed", statsFactory);
this.failedReprocessingCounter = register("failedReprocessing", statsFactory);
this.processingTimer = statsFactory.createTimer(StatsType.HOUSEKEEPER, "processingTime", "taskType", taskType.name());
this.processingTimer = statsFactory.createStatsTimer(StatsType.HOUSEKEEPER.getName(), "processingTime", "taskType", taskType.name());
}
private StatsCounter register(String statsName, StatsFactory statsFactory) {

View File

@ -31,7 +31,6 @@ import org.thingsboard.server.common.stats.EdqsStatsService;
import org.thingsboard.server.common.stats.StatsCounter;
import org.thingsboard.server.common.stats.StatsFactory;
import org.thingsboard.server.common.stats.StatsTimer;
import org.thingsboard.server.common.stats.StatsType;
import org.thingsboard.server.edqs.repo.DefaultEdqsRepository;
import java.util.Map;
@ -58,9 +57,9 @@ public class DefaultEdqsStatsService implements EdqsStatsService {
@PostConstruct
private void init() {
statsFactory.createGauge(StatsType.EDQS, "stringPoolSize", TbStringPool.getPool(), Map::size);
statsFactory.createGauge(StatsType.EDQS, "bytePoolSize", TbBytePool.getPool(), Map::size);
statsFactory.createGauge(StatsType.EDQS, "tenantReposSize", DefaultEdqsRepository.getRepos(), Map::size);
statsFactory.createGauge("edqsGauges", "stringPoolSize", TbStringPool.getPool(), Map::size);
statsFactory.createGauge("edqsGauges", "bytePoolSize", TbBytePool.getPool(), Map::size);
statsFactory.createGauge("edqsGauges", "tenantReposSize", DefaultEdqsRepository.getRepos(), Map::size);
}
@Override
@ -118,20 +117,20 @@ public class DefaultEdqsStatsService implements EdqsStatsService {
}
private StatsTimer getTimer(String name) {
return timers.computeIfAbsent(name, __ -> statsFactory.createTimer(StatsType.EDQS, name));
return timers.computeIfAbsent(name, __ -> statsFactory.createStatsTimer("edqsTimers", name));
}
private StatsCounter getCounter(String name) {
return counters.computeIfAbsent(name, __ -> statsFactory.createStatsCounter(StatsType.EDQS.getName(), name));
return counters.computeIfAbsent(name, __ -> statsFactory.createStatsCounter("edqsCounters", name));
}
private AtomicInteger getGauge(String name) {
return gauges.computeIfAbsent(name, __ -> statsFactory.createGauge(StatsType.EDQS, name, new AtomicInteger()));
return gauges.computeIfAbsent(name, __ -> statsFactory.createGauge("edqsGauges", name, new AtomicInteger()));
}
private AtomicInteger getObjectGauge(ObjectType objectType) {
return objectCounters.computeIfAbsent(objectType, type ->
statsFactory.createGauge(StatsType.EDQS, "objectsCount", new AtomicInteger(), "objectType", type.name()));
statsFactory.createGauge("edqsGauges", "objectsCount", new AtomicInteger(), "objectType", type.name()));
}
}

View File

@ -88,13 +88,13 @@ public class DefaultStatsFactory implements StatsFactory {
}
@Override
public <T extends Number> T createGauge(StatsType statsType, String name, T number, String... tags) {
return createGauge(statsType.getName(), number, getTags(name, tags));
public <T extends Number> T createGauge(String type, String name, T number, String... tags) {
return createGauge(type, number, getTags(name, tags));
}
@Override
public <S> void createGauge(StatsType statsType, String name, S stateObject, ToDoubleFunction<S> numberProvider, String... tags) {
meterRegistry.gauge(statsType.getName(), Tags.of(getTags(name, tags)), stateObject, numberProvider);
public <S> void createGauge(String type, String name, S stateObject, ToDoubleFunction<S> numberProvider, String... tags) {
meterRegistry.gauge(type, Tags.of(getTags(name, tags)), stateObject, numberProvider);
}
@Override
@ -117,8 +117,8 @@ public class DefaultStatsFactory implements StatsFactory {
}
@Override
public StatsTimer createTimer(StatsType type, String name, String... tags) {
return new StatsTimer(name, Timer.builder(type.getName())
public StatsTimer createStatsTimer(String type, String name, String... tags) {
return new StatsTimer(name, Timer.builder(type)
.tags(getTags(name, tags))
.register(meterRegistry));
}

View File

@ -27,14 +27,14 @@ public interface StatsFactory {
<T extends Number> T createGauge(String key, T number, String... tags);
<T extends Number> T createGauge(StatsType statsType, String name, T number, String... tags);
<T extends Number> T createGauge(String type, String name, T number, String... tags);
<S> void createGauge(StatsType statsType, String name, S stateObject, ToDoubleFunction<S> numberProvider, String... tags);
<S> void createGauge(String type, String name, S stateObject, ToDoubleFunction<S> numberProvider, String... tags);
MessagesStats createMessagesStats(String key);
Timer createTimer(String key, String... tags);
StatsTimer createTimer(StatsType type, String name, String... tags);
StatsTimer createStatsTimer(String type, String name, String... tags);
}