Skip to content

Commit

Permalink
fix comment
Browse files Browse the repository at this point in the history
  • Loading branch information
FANNG1 committed May 20, 2024
1 parent aa537e4 commit b26a42b
Show file tree
Hide file tree
Showing 7 changed files with 44 additions and 16 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,6 @@ private ConfigConstants() {}
public static final String VERSION_0_4_0 = "0.4.0";
/** The version number for the 0.5.0 release. */
public static final String VERSION_0_5_0 = "0.5.0";
/** The version number for the 0.6.0 release. */
public static final String VERSION_0_6_0 = "0.6.0";
/** The version number for the 0.5.1 release. */
public static final String VERSION_0_5_1 = "0.5.1";
}
8 changes: 4 additions & 4 deletions core/src/main/java/com/datastrato/gravitino/Configs.java
Original file line number Diff line number Diff line change
Expand Up @@ -277,10 +277,10 @@ private Configs() {}
.longConf()
.createWithDefault(60 * 60 * 1000L);

ConfigEntry<Long> METRICS_TIME_SLIDING_WINDOW_SECONDS =
ConfigEntry<Integer> METRICS_TIME_SLIDING_WINDOW_SECONDS =
new ConfigBuilder("gravitino.metrics.timeSlidingWindowSecs")
.doc("The seconds of Gravitino metrics time sliding window")
.version(ConfigConstants.VERSION_0_6_0)
.longConf()
.createWithDefault(60L);
.version(ConfigConstants.VERSION_0_5_1)
.intConf()
.createWithDefault(60);
}
Original file line number Diff line number Diff line change
Expand Up @@ -139,8 +139,7 @@ public void initialize(Config config) {
LOG.info("Initializing Gravitino Environment...");

this.config = config;
int slidingWindowSeconds = config.get(Configs.METRICS_TIME_SLIDING_WINDOW_SECONDS).intValue();
this.metricsSystem = new MetricsSystem(slidingWindowSeconds);
this.metricsSystem = new MetricsSystem(config);
metricsSystem.register(new JVMMetricsSource());

// Initialize EntityStore
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@
import com.codahale.metrics.MetricRegistry;
import com.codahale.metrics.Reporter;
import com.codahale.metrics.jmx.JmxReporter;
import com.datastrato.gravitino.Config;
import com.datastrato.gravitino.Configs;
import com.datastrato.gravitino.metrics.source.MetricsSource;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.collect.ImmutableMap;
Expand All @@ -31,6 +33,7 @@
* report metrics from MetricsSources registered to MetricsSystem.
*/
public class MetricsSystem implements Closeable {

private static final Logger LOG = LoggerFactory.getLogger(MetricsSystem.class);
private final String name;
private final MetricRegistry metricRegistry;
Expand All @@ -39,13 +42,14 @@ public class MetricsSystem implements Closeable {
private CollectorRegistry prometheusRegistry;
private int timeSlidingWindowSeconds;

public MetricsSystem(int timeSlidingWindowSeconds) {
this("", timeSlidingWindowSeconds);
public MetricsSystem(Config config) {
this("", config);
}

public MetricsSystem(String name, int timeSlidingWindowSeconds) {
public MetricsSystem(String name, Config config) {
this.name = name;
this.timeSlidingWindowSeconds = timeSlidingWindowSeconds;
this.timeSlidingWindowSeconds =
config.get(Configs.METRICS_TIME_SLIDING_WINDOW_SECONDS).intValue();
this.metricRegistry = new MetricRegistry();
this.prometheusRegistry = new CollectorRegistry();
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,25 @@

package com.datastrato.gravitino.metrics;

import com.datastrato.gravitino.Config;
import com.datastrato.gravitino.Configs;
import com.datastrato.gravitino.metrics.source.TestMetricsSource;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.TestInstance;
import org.junit.jupiter.api.TestInstance.Lifecycle;
import org.mockito.Mockito;

@TestInstance(Lifecycle.PER_CLASS)
public class TestMetricsSystem {
MetricsSystem metricsSystem = new MetricsSystem(60);
private MetricsSystem metricsSystem;

private long getCounterValue(String metricsSourceName, String name) {
return metricsSystem.getMetricRegistry().counter(metricsSourceName + "." + name).getCount();
@BeforeAll
void init() {
Config config = Mockito.mock(Config.class);
Mockito.when(config.get(Configs.METRICS_TIME_SLIDING_WINDOW_SECONDS)).thenReturn(60);
metricsSystem = new MetricsSystem(config);
}

@Test
Expand Down Expand Up @@ -53,4 +63,8 @@ void testRegisterMetricsSource() {
.getCounters()
.containsKey(metricsSource.getMetricsSourceName() + "a.b"));
}

private long getCounterValue(String metricsSourceName, String name) {
return metricsSystem.getMetricRegistry().counter(metricsSourceName + "." + name).getCount();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,15 @@
import com.codahale.metrics.Histogram;
import com.codahale.metrics.Snapshot;
import com.codahale.metrics.Timer;
import com.datastrato.gravitino.Config;
import com.datastrato.gravitino.Configs;
import com.datastrato.gravitino.metrics.MetricsSystem;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.TestInstance;
import org.junit.jupiter.api.TestInstance.Lifecycle;
import org.mockito.Mockito;

@TestInstance(Lifecycle.PER_CLASS)
public class TestMetricsSource extends MetricsSource {
Expand All @@ -28,7 +31,9 @@ public TestMetricsSource() {

@BeforeAll
void init() {
metricsSystem = new MetricsSystem(60);
Config config = Mockito.mock(Config.class);
Mockito.when(config.get(Configs.METRICS_TIME_SLIDING_WINDOW_SECONDS)).thenReturn(60);
this.metricsSystem = new MetricsSystem(config);
metricsSystem.register(this);
}

Expand Down
6 changes: 6 additions & 0 deletions docs/gravitino-server-config.md
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,12 @@ For more details, please refer to the definition of the plugin.

Refer to [security](security.md) for HTTPS and authentication configurations.

### Metrics configuration

| Property name | Description | Default value | Required | Since Version |
|-------------------------------------------|------------------------------------------------------|---------------|----------|---------------|
| `gravitino.metrics.timeSlidingWindowSecs` | The seconds of Gravitino metrics time sliding window | 60 | No | 0.5.1 |

## Gravitino catalog properties configuration

There are three types of catalog properties:
Expand Down

0 comments on commit b26a42b

Please sign in to comment.