|
3 | 3 | import com.codahale.metrics.Counter; |
4 | 4 | import com.codahale.metrics.Histogram; |
5 | 5 | import com.codahale.metrics.Meter; |
6 | | -import com.codahale.metrics.MetricFilter; |
7 | 6 | import com.codahale.metrics.MetricRegistry; |
8 | | -import com.codahale.metrics.ScheduledReporter; |
9 | 7 |
|
10 | 8 | import java.util.SortedMap; |
11 | | -import java.util.concurrent.TimeUnit; |
12 | 9 |
|
13 | 10 | import lombok.extern.slf4j.Slf4j; |
14 | | -import metrics_influxdb.InfluxdbReporter; |
15 | | -import metrics_influxdb.api.protocols.InfluxdbProtocols; |
16 | 11 | import org.tron.common.parameter.CommonParameter; |
17 | | -import org.tron.core.Constant; |
18 | 12 | import org.tron.core.metrics.net.RateInfo; |
19 | 13 |
|
20 | 14 | @Slf4j(topic = "metrics") |
21 | 15 | public class MetricsUtil { |
22 | 16 |
|
23 | 17 | private static MetricRegistry metricRegistry = new MetricRegistry(); |
24 | 18 |
|
25 | | - public static void init() { |
26 | | - if (CommonParameter.getInstance().isNodeMetricsEnable() |
27 | | - && CommonParameter.getInstance().isMetricsStorageEnable()) { |
28 | | - String ip = CommonParameter.getInstance().getInfluxDbIp(); |
29 | | - int port = CommonParameter.getInstance().getInfluxDbPort(); |
30 | | - String dataBase = CommonParameter.getInstance().getInfluxDbDatabase(); |
31 | | - ScheduledReporter influxReport = InfluxdbReporter |
32 | | - .forRegistry(metricRegistry) |
33 | | - .protocol(InfluxdbProtocols.http(ip, port, dataBase)) |
34 | | - .convertRatesTo(TimeUnit.SECONDS) |
35 | | - .convertDurationsTo(TimeUnit.MILLISECONDS) |
36 | | - .filter(MetricFilter.ALL) |
37 | | - .skipIdleMetrics(false) |
38 | | - .build(); |
39 | | - int interval = CommonParameter.getInstance().getMetricsReportInterval() |
40 | | - * Constant.ONE_THOUSAND; |
41 | | - influxReport.start(interval, TimeUnit.MILLISECONDS); |
42 | | - } |
43 | | - } |
44 | | - |
45 | 19 | public static Histogram getHistogram(String key) { |
46 | 20 | return metricRegistry.histogram(key); |
47 | 21 | } |
|
0 commit comments