This is an automated email from the ASF dual-hosted git repository.
szetszwo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ratis.git
The following commit(s) were added to refs/heads/master by this push:
new daaa0f44 RATIS-1601. Use the shaded dropwizard metrics and remove the
dependency (#671)
daaa0f44 is described below
commit daaa0f448d280ff10f98ecee6fbdda27cedaae50
Author: Yaolong Liu <[email protected]>
AuthorDate: Fri Jul 8 03:02:31 2022 +0800
RATIS-1601. Use the shaded dropwizard metrics and remove the dependency
(#671)
---
pom.xml | 25 ----------------------
ratis-examples/pom.xml | 5 -----
.../ratis/grpc/metrics/GrpcServerMetrics.java | 4 ++--
.../apache/ratis/grpc/server/GrpcLogAppender.java | 2 +-
.../ratis/grpc/server/TestGrpcServerMetrics.java | 2 +-
ratis-metrics/pom.xml | 25 ----------------------
.../java/org/apache/ratis/metrics/JVMMetrics.java | 8 +++----
.../apache/ratis/metrics/MetricRegistryInfo.java | 2 +-
.../org/apache/ratis/metrics/MetricsReporting.java | 4 ++--
.../apache/ratis/metrics/RatisMetricRegistry.java | 13 ++---------
.../ratis/metrics/RatisObjectNameFactory.java | 4 ++--
.../metrics/impl/RatisMetricRegistryImpl.java | 22 ++++++-------------
.../netty/metrics/NettyServerStreamRpcMetrics.java | 2 +-
.../apache/ratis/server/impl/LeaderElection.java | 2 +-
.../apache/ratis/server/impl/RaftServerImpl.java | 2 +-
.../ratis/server/impl/StateMachineMetrics.java | 2 +-
.../ratis/server/impl/StateMachineUpdater.java | 2 +-
.../server/metrics/LeaderElectionMetrics.java | 2 +-
.../ratis/server/metrics/RaftLogMetricsBase.java | 2 +-
.../server/metrics/RaftServerMetricsImpl.java | 6 +++---
.../server/metrics/SegmentedRaftLogMetrics.java | 4 +---
.../server/raftlog/segmented/SegmentedRaftLog.java | 2 +-
.../raftlog/segmented/SegmentedRaftLogReader.java | 2 +-
.../raftlog/segmented/SegmentedRaftLogWorker.java | 4 ++--
.../ratis/statemachine/impl/BaseStateMachine.java | 2 +-
.../java/org/apache/ratis/LogAppenderTests.java | 2 +-
.../test/java/org/apache/ratis/RaftBasicTests.java | 2 +-
.../ratis/server/impl/LeaderElectionTests.java | 2 +-
.../ratis/server/impl/TestLogAppenderMetrics.java | 2 +-
.../ratis/server/impl/TestRetryCacheMetrics.java | 2 +-
.../server/metrics/TestLeaderElectionMetrics.java | 2 +-
.../ratis/statemachine/RaftSnapshotBaseTest.java | 4 ++--
ratis-test/pom.xml | 6 ------
.../ratis/TestRaftServerSlownessDetection.java | 2 +-
.../apache/ratis/grpc/TestRaftServerWithGrpc.java | 2 +-
.../ratis/grpc/TestRaftSnapshotWithGrpc.java | 2 +-
.../ratis/server/raftlog/TestRaftLogMetrics.java | 2 +-
.../server/raftlog/segmented/TestLogSegment.java | 2 +-
.../raftlog/segmented/TestSegmentedRaftLog.java | 2 +-
39 files changed, 51 insertions(+), 133 deletions(-)
diff --git a/pom.xml b/pom.xml
index 840e1698..c9f33a2c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -403,31 +403,6 @@
<artifactId>jcommander</artifactId>
<version>1.72</version>
</dependency>
-
- <dependency>
- <groupId>io.dropwizard.metrics</groupId>
- <artifactId>metrics-core</artifactId>
- <version>${shaded.dropwizard.version}</version>
- </dependency>
-
- <dependency>
- <groupId>io.dropwizard.metrics</groupId>
- <artifactId>metrics-jvm</artifactId>
- <version>${shaded.dropwizard.version}</version>
- </dependency>
-
- <dependency>
- <groupId>io.dropwizard.metrics</groupId>
- <artifactId>metrics-jmx</artifactId>
- <version>${shaded.dropwizard.version}</version>
- </dependency>
-
- <dependency>
- <groupId>io.dropwizard.metrics</groupId>
- <artifactId>metrics-ganglia</artifactId>
- <version>${shaded.dropwizard.ganglia.version}</version>
- </dependency>
-
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
diff --git a/ratis-examples/pom.xml b/ratis-examples/pom.xml
index 9c1c5122..ecf5afb6 100644
--- a/ratis-examples/pom.xml
+++ b/ratis-examples/pom.xml
@@ -97,11 +97,6 @@
<artifactId>jcommander</artifactId>
</dependency>
- <dependency>
- <groupId>io.dropwizard.metrics</groupId>
- <artifactId>metrics-jvm</artifactId>
- </dependency>
-
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
diff --git
a/ratis-grpc/src/main/java/org/apache/ratis/grpc/metrics/GrpcServerMetrics.java
b/ratis-grpc/src/main/java/org/apache/ratis/grpc/metrics/GrpcServerMetrics.java
index 01859c29..0bc400d6 100644
---
a/ratis-grpc/src/main/java/org/apache/ratis/grpc/metrics/GrpcServerMetrics.java
+++
b/ratis-grpc/src/main/java/org/apache/ratis/grpc/metrics/GrpcServerMetrics.java
@@ -17,13 +17,13 @@
*/
package org.apache.ratis.grpc.metrics;
-import com.codahale.metrics.Gauge;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Gauge;
import org.apache.ratis.metrics.MetricRegistryInfo;
import org.apache.ratis.metrics.RatisMetricRegistry;
import org.apache.ratis.metrics.RatisMetrics;
import
org.apache.ratis.thirdparty.com.google.common.annotations.VisibleForTesting;
-import com.codahale.metrics.Timer;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Timer;
public class GrpcServerMetrics extends RatisMetrics {
private static final String RATIS_GRPC_METRICS_APP_NAME = "ratis_grpc";
diff --git
a/ratis-grpc/src/main/java/org/apache/ratis/grpc/server/GrpcLogAppender.java
b/ratis-grpc/src/main/java/org/apache/ratis/grpc/server/GrpcLogAppender.java
index 4c7fd6e2..65bb62b6 100644
--- a/ratis-grpc/src/main/java/org/apache/ratis/grpc/server/GrpcLogAppender.java
+++ b/ratis-grpc/src/main/java/org/apache/ratis/grpc/server/GrpcLogAppender.java
@@ -47,7 +47,7 @@ import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicBoolean;
-import com.codahale.metrics.Timer;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Timer;
/**
* A new log appender implementation using grpc bi-directional stream API.
diff --git
a/ratis-grpc/src/test/java/org/apache/ratis/grpc/server/TestGrpcServerMetrics.java
b/ratis-grpc/src/test/java/org/apache/ratis/grpc/server/TestGrpcServerMetrics.java
index bc54300c..252a0dc2 100644
---
a/ratis-grpc/src/test/java/org/apache/ratis/grpc/server/TestGrpcServerMetrics.java
+++
b/ratis-grpc/src/test/java/org/apache/ratis/grpc/server/TestGrpcServerMetrics.java
@@ -30,7 +30,7 @@ import static org.mockito.Mockito.when;
import java.util.SortedMap;
import java.util.function.Consumer;
-import com.codahale.metrics.Gauge;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Gauge;
import org.apache.ratis.grpc.metrics.GrpcServerMetrics;
import org.apache.ratis.metrics.RatisMetricRegistry;
import org.apache.ratis.proto.RaftProtos;
diff --git a/ratis-metrics/pom.xml b/ratis-metrics/pom.xml
index e8a01b4f..96e87165 100644
--- a/ratis-metrics/pom.xml
+++ b/ratis-metrics/pom.xml
@@ -55,30 +55,5 @@
<artifactId>mockito-core</artifactId>
<scope>test</scope>
</dependency>
-
- <dependency>
- <groupId>io.dropwizard.metrics</groupId>
- <artifactId>metrics-core</artifactId>
- </dependency>
- <dependency>
- <groupId>io.dropwizard.metrics</groupId>
- <artifactId>metrics-jvm</artifactId>
- <optional>true</optional>
- </dependency>
- <dependency>
- <groupId>io.dropwizard.metrics</groupId>
- <artifactId>metrics-jmx</artifactId>
- </dependency>
- <dependency>
- <groupId>io.dropwizard.metrics</groupId>
- <artifactId>metrics-ganglia</artifactId>
- <exclusions>
- <exclusion>
- <groupId>org.acplt</groupId>
- <artifactId>oncrpc</artifactId>
- </exclusion>
- </exclusions>
- <optional>true</optional>
- </dependency>
</dependencies>
</project>
diff --git
a/ratis-metrics/src/main/java/org/apache/ratis/metrics/JVMMetrics.java
b/ratis-metrics/src/main/java/org/apache/ratis/metrics/JVMMetrics.java
index 1e5ee846..402b6df6 100644
--- a/ratis-metrics/src/main/java/org/apache/ratis/metrics/JVMMetrics.java
+++ b/ratis-metrics/src/main/java/org/apache/ratis/metrics/JVMMetrics.java
@@ -17,10 +17,10 @@
*/
package org.apache.ratis.metrics;
-import com.codahale.metrics.jvm.ClassLoadingGaugeSet;
-import com.codahale.metrics.jvm.GarbageCollectorMetricSet;
-import com.codahale.metrics.jvm.MemoryUsageGaugeSet;
-import com.codahale.metrics.jvm.ThreadStatesGaugeSet;
+import
org.apache.ratis.thirdparty.com.codahale.metrics.jvm.ClassLoadingGaugeSet;
+import
org.apache.ratis.thirdparty.com.codahale.metrics.jvm.GarbageCollectorMetricSet;
+import
org.apache.ratis.thirdparty.com.codahale.metrics.jvm.MemoryUsageGaugeSet;
+import
org.apache.ratis.thirdparty.com.codahale.metrics.jvm.ThreadStatesGaugeSet;
import org.apache.ratis.util.TimeDuration;
/**
diff --git
a/ratis-metrics/src/main/java/org/apache/ratis/metrics/MetricRegistryInfo.java
b/ratis-metrics/src/main/java/org/apache/ratis/metrics/MetricRegistryInfo.java
index 1d9f2f10..5563b96d 100644
---
a/ratis-metrics/src/main/java/org/apache/ratis/metrics/MetricRegistryInfo.java
+++
b/ratis-metrics/src/main/java/org/apache/ratis/metrics/MetricRegistryInfo.java
@@ -21,7 +21,7 @@ package org.apache.ratis.metrics;
import java.util.Objects;
-import com.codahale.metrics.MetricRegistry;
+import org.apache.ratis.thirdparty.com.codahale.metrics.*;
/**
*
diff --git
a/ratis-metrics/src/main/java/org/apache/ratis/metrics/MetricsReporting.java
b/ratis-metrics/src/main/java/org/apache/ratis/metrics/MetricsReporting.java
index 1aee82f1..df51420f 100644
--- a/ratis-metrics/src/main/java/org/apache/ratis/metrics/MetricsReporting.java
+++ b/ratis-metrics/src/main/java/org/apache/ratis/metrics/MetricsReporting.java
@@ -20,8 +20,8 @@ package org.apache.ratis.metrics;
import java.util.concurrent.TimeUnit;
import java.util.function.Consumer;
-import com.codahale.metrics.ConsoleReporter;
-import com.codahale.metrics.jmx.JmxReporter;
+import org.apache.ratis.thirdparty.com.codahale.metrics.*;
+import org.apache.ratis.thirdparty.com.codahale.metrics.jmx.JmxReporter;
import org.apache.ratis.util.TimeDuration;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git
a/ratis-metrics/src/main/java/org/apache/ratis/metrics/RatisMetricRegistry.java
b/ratis-metrics/src/main/java/org/apache/ratis/metrics/RatisMetricRegistry.java
index d4ee1738..388f9f4e 100644
---
a/ratis-metrics/src/main/java/org/apache/ratis/metrics/RatisMetricRegistry.java
+++
b/ratis-metrics/src/main/java/org/apache/ratis/metrics/RatisMetricRegistry.java
@@ -19,17 +19,8 @@ package org.apache.ratis.metrics;
import java.util.SortedMap;
-import com.codahale.metrics.ConsoleReporter;
-import com.codahale.metrics.Counter;
-import com.codahale.metrics.Gauge;
-import com.codahale.metrics.Histogram;
-import com.codahale.metrics.Meter;
-import com.codahale.metrics.Metric;
-import com.codahale.metrics.MetricFilter;
-import com.codahale.metrics.MetricRegistry;
-import com.codahale.metrics.MetricSet;
-import com.codahale.metrics.Timer;
-import com.codahale.metrics.jmx.JmxReporter;
+import org.apache.ratis.thirdparty.com.codahale.metrics.*;
+import org.apache.ratis.thirdparty.com.codahale.metrics.jmx.JmxReporter;
import
org.apache.ratis.thirdparty.com.google.common.annotations.VisibleForTesting;
public interface RatisMetricRegistry {
diff --git
a/ratis-metrics/src/main/java/org/apache/ratis/metrics/RatisObjectNameFactory.java
b/ratis-metrics/src/main/java/org/apache/ratis/metrics/RatisObjectNameFactory.java
index 7dda6c85..dd790f6a 100644
---
a/ratis-metrics/src/main/java/org/apache/ratis/metrics/RatisObjectNameFactory.java
+++
b/ratis-metrics/src/main/java/org/apache/ratis/metrics/RatisObjectNameFactory.java
@@ -18,8 +18,8 @@
package org.apache.ratis.metrics;
-import com.codahale.metrics.jmx.JmxReporter;
-import com.codahale.metrics.jmx.ObjectNameFactory;
+import org.apache.ratis.thirdparty.com.codahale.metrics.jmx.JmxReporter;
+import org.apache.ratis.thirdparty.com.codahale.metrics.jmx.ObjectNameFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git
a/ratis-metrics/src/main/java/org/apache/ratis/metrics/impl/RatisMetricRegistryImpl.java
b/ratis-metrics/src/main/java/org/apache/ratis/metrics/impl/RatisMetricRegistryImpl.java
index 4e427313..1b33efb8 100644
---
a/ratis-metrics/src/main/java/org/apache/ratis/metrics/impl/RatisMetricRegistryImpl.java
+++
b/ratis-metrics/src/main/java/org/apache/ratis/metrics/impl/RatisMetricRegistryImpl.java
@@ -20,20 +20,10 @@ package org.apache.ratis.metrics.impl;
import java.util.Map;
import java.util.SortedMap;
-import com.codahale.metrics.ConsoleReporter;
-import com.codahale.metrics.Counter;
-import com.codahale.metrics.Gauge;
-import com.codahale.metrics.Histogram;
-import com.codahale.metrics.Meter;
-import com.codahale.metrics.Metric;
-import com.codahale.metrics.MetricFilter;
-import com.codahale.metrics.MetricRegistry;
-import com.codahale.metrics.MetricRegistry.MetricSupplier;
-import com.codahale.metrics.MetricSet;
-import com.codahale.metrics.Timer;
-import com.codahale.metrics.jmx.JmxReporter;
+import org.apache.ratis.thirdparty.com.codahale.metrics.*;
import org.apache.ratis.metrics.MetricRegistryInfo;
import org.apache.ratis.metrics.RatisMetricRegistry;
+import org.apache.ratis.thirdparty.com.codahale.metrics.jmx.JmxReporter;
import
org.apache.ratis.thirdparty.com.google.common.annotations.VisibleForTesting;
/**
@@ -67,11 +57,11 @@ public class RatisMetricRegistryImpl implements
RatisMetricRegistry {
return metricRegistry.remove(getMetricName(name));
}
- @Override public Gauge gauge(String name, MetricSupplier<Gauge> supplier) {
+ @Override public Gauge gauge(String name,
MetricRegistry.MetricSupplier<Gauge> supplier) {
return metricRegistry.gauge(getMetricName(name), supplier);
}
- @Override public Timer timer(String name, MetricSupplier<Timer> supplier) {
+ @Override public Timer timer(String name,
MetricRegistry.MetricSupplier<Timer> supplier) {
return metricRegistry.timer(getMetricName(name), supplier);
}
@@ -79,7 +69,7 @@ public class RatisMetricRegistryImpl implements
RatisMetricRegistry {
return metricRegistry.getGauges(filter);
}
- @Override public Counter counter(String name, MetricSupplier<Counter>
supplier) {
+ @Override public Counter counter(String name,
MetricRegistry.MetricSupplier<Counter> supplier) {
return metricRegistry.counter(getMetricName(name), supplier);
}
@@ -91,7 +81,7 @@ public class RatisMetricRegistryImpl implements
RatisMetricRegistry {
return metricRegistry.meter(getMetricName(name));
}
- @Override public Meter meter(String name, MetricSupplier<Meter> supplier) {
+ @Override public Meter meter(String name,
MetricRegistry.MetricSupplier<Meter> supplier) {
return metricRegistry.meter(getMetricName(name), supplier);
}
diff --git
a/ratis-netty/src/main/java/org/apache/ratis/netty/metrics/NettyServerStreamRpcMetrics.java
b/ratis-netty/src/main/java/org/apache/ratis/netty/metrics/NettyServerStreamRpcMetrics.java
index 33f36328..6c812550 100644
---
a/ratis-netty/src/main/java/org/apache/ratis/netty/metrics/NettyServerStreamRpcMetrics.java
+++
b/ratis-netty/src/main/java/org/apache/ratis/netty/metrics/NettyServerStreamRpcMetrics.java
@@ -17,7 +17,7 @@
*/
package org.apache.ratis.netty.metrics;
-import com.codahale.metrics.Timer;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Timer;
import org.apache.ratis.metrics.MetricRegistryInfo;
import org.apache.ratis.metrics.RatisMetricRegistry;
import org.apache.ratis.metrics.RatisMetrics;
diff --git
a/ratis-server/src/main/java/org/apache/ratis/server/impl/LeaderElection.java
b/ratis-server/src/main/java/org/apache/ratis/server/impl/LeaderElection.java
index 1255046c..a6d9b6d1 100644
---
a/ratis-server/src/main/java/org/apache/ratis/server/impl/LeaderElection.java
+++
b/ratis-server/src/main/java/org/apache/ratis/server/impl/LeaderElection.java
@@ -58,7 +58,7 @@ import static org.apache.ratis.util.LifeCycle.State.NEW;
import static org.apache.ratis.util.LifeCycle.State.RUNNING;
import static org.apache.ratis.util.LifeCycle.State.STARTING;
-import com.codahale.metrics.Timer;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Timer;
/**
* For a candidate to start an election for becoming the leader.
diff --git
a/ratis-server/src/main/java/org/apache/ratis/server/impl/RaftServerImpl.java
b/ratis-server/src/main/java/org/apache/ratis/server/impl/RaftServerImpl.java
index 5b7be2e2..32471dde 100644
---
a/ratis-server/src/main/java/org/apache/ratis/server/impl/RaftServerImpl.java
+++
b/ratis-server/src/main/java/org/apache/ratis/server/impl/RaftServerImpl.java
@@ -91,7 +91,7 @@ import static org.apache.ratis.util.LifeCycle.State.PAUSING;
import static org.apache.ratis.util.LifeCycle.State.RUNNING;
import static org.apache.ratis.util.LifeCycle.State.STARTING;
-import com.codahale.metrics.Timer;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Timer;
import org.apache.ratis.util.function.CheckedSupplier;
class RaftServerImpl implements RaftServer.Division,
diff --git
a/ratis-server/src/main/java/org/apache/ratis/server/impl/StateMachineMetrics.java
b/ratis-server/src/main/java/org/apache/ratis/server/impl/StateMachineMetrics.java
index 02aaefa6..3466f3f6 100644
---
a/ratis-server/src/main/java/org/apache/ratis/server/impl/StateMachineMetrics.java
+++
b/ratis-server/src/main/java/org/apache/ratis/server/impl/StateMachineMetrics.java
@@ -26,7 +26,7 @@ import org.apache.ratis.statemachine.StateMachine;
import java.util.function.LongSupplier;
-import com.codahale.metrics.Timer;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Timer;
/**
* Metrics Registry for the State Machine Updater. One instance per group.
diff --git
a/ratis-server/src/main/java/org/apache/ratis/server/impl/StateMachineUpdater.java
b/ratis-server/src/main/java/org/apache/ratis/server/impl/StateMachineUpdater.java
index 87aac06b..1d9b85e7 100644
---
a/ratis-server/src/main/java/org/apache/ratis/server/impl/StateMachineUpdater.java
+++
b/ratis-server/src/main/java/org/apache/ratis/server/impl/StateMachineUpdater.java
@@ -46,7 +46,7 @@ import java.util.concurrent.atomic.AtomicReference;
import java.util.function.Consumer;
import java.util.stream.LongStream;
-import com.codahale.metrics.Timer;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Timer;
/**
* This class tracks the log entries that have been committed in a quorum and
diff --git
a/ratis-server/src/main/java/org/apache/ratis/server/metrics/LeaderElectionMetrics.java
b/ratis-server/src/main/java/org/apache/ratis/server/metrics/LeaderElectionMetrics.java
index ef4ca8d3..8b1b701a 100644
---
a/ratis-server/src/main/java/org/apache/ratis/server/metrics/LeaderElectionMetrics.java
+++
b/ratis-server/src/main/java/org/apache/ratis/server/metrics/LeaderElectionMetrics.java
@@ -24,7 +24,7 @@ import org.apache.ratis.metrics.RatisMetrics;
import org.apache.ratis.protocol.RaftGroupMemberId;
import org.apache.ratis.util.Timestamp;
-import com.codahale.metrics.Timer;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Timer;
import java.util.Optional;
import java.util.function.LongSupplier;
diff --git
a/ratis-server/src/main/java/org/apache/ratis/server/metrics/RaftLogMetricsBase.java
b/ratis-server/src/main/java/org/apache/ratis/server/metrics/RaftLogMetricsBase.java
index aef6398d..fc40082f 100644
---
a/ratis-server/src/main/java/org/apache/ratis/server/metrics/RaftLogMetricsBase.java
+++
b/ratis-server/src/main/java/org/apache/ratis/server/metrics/RaftLogMetricsBase.java
@@ -18,7 +18,7 @@
package org.apache.ratis.server.metrics;
-import com.codahale.metrics.Timer;
+import org.apache.ratis.thirdparty.com.codahale.metrics.*;
import org.apache.ratis.metrics.MetricRegistryInfo;
import org.apache.ratis.metrics.RatisMetricRegistry;
import org.apache.ratis.metrics.RatisMetrics;
diff --git
a/ratis-server/src/main/java/org/apache/ratis/server/metrics/RaftServerMetricsImpl.java
b/ratis-server/src/main/java/org/apache/ratis/server/metrics/RaftServerMetricsImpl.java
index 4a0a9f33..210bf7d1 100644
---
a/ratis-server/src/main/java/org/apache/ratis/server/metrics/RaftServerMetricsImpl.java
+++
b/ratis-server/src/main/java/org/apache/ratis/server/metrics/RaftServerMetricsImpl.java
@@ -26,9 +26,9 @@ import java.util.SortedMap;
import java.util.function.Function;
import java.util.function.Supplier;
-import com.codahale.metrics.Counter;
-import com.codahale.metrics.Gauge;
-import com.codahale.metrics.Timer;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Counter;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Gauge;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Timer;
import org.apache.ratis.metrics.MetricRegistryInfo;
import org.apache.ratis.metrics.RatisMetricRegistry;
diff --git
a/ratis-server/src/main/java/org/apache/ratis/server/metrics/SegmentedRaftLogMetrics.java
b/ratis-server/src/main/java/org/apache/ratis/server/metrics/SegmentedRaftLogMetrics.java
index f359e1a0..80ad0df5 100644
---
a/ratis-server/src/main/java/org/apache/ratis/server/metrics/SegmentedRaftLogMetrics.java
+++
b/ratis-server/src/main/java/org/apache/ratis/server/metrics/SegmentedRaftLogMetrics.java
@@ -18,9 +18,7 @@
package org.apache.ratis.server.metrics;
-import com.codahale.metrics.Gauge;
-import com.codahale.metrics.MetricRegistry;
-import com.codahale.metrics.Timer;
+import org.apache.ratis.thirdparty.com.codahale.metrics.*;
import org.apache.ratis.protocol.RaftGroupMemberId;
import org.apache.ratis.server.raftlog.segmented.SegmentedRaftLogCache;
import org.apache.ratis.util.DataQueue;
diff --git
a/ratis-server/src/main/java/org/apache/ratis/server/raftlog/segmented/SegmentedRaftLog.java
b/ratis-server/src/main/java/org/apache/ratis/server/raftlog/segmented/SegmentedRaftLog.java
index f03095ca..e5f4ab87 100644
---
a/ratis-server/src/main/java/org/apache/ratis/server/raftlog/segmented/SegmentedRaftLog.java
+++
b/ratis-server/src/main/java/org/apache/ratis/server/raftlog/segmented/SegmentedRaftLog.java
@@ -50,7 +50,7 @@ import java.util.concurrent.CompletionException;
import java.util.function.Consumer;
import java.util.function.LongSupplier;
-import com.codahale.metrics.Timer;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Timer;
/**
* The RaftLog implementation that writes log entries into segmented files in
diff --git
a/ratis-server/src/main/java/org/apache/ratis/server/raftlog/segmented/SegmentedRaftLogReader.java
b/ratis-server/src/main/java/org/apache/ratis/server/raftlog/segmented/SegmentedRaftLogReader.java
index dc67d31c..98cd9022 100644
---
a/ratis-server/src/main/java/org/apache/ratis/server/raftlog/segmented/SegmentedRaftLogReader.java
+++
b/ratis-server/src/main/java/org/apache/ratis/server/raftlog/segmented/SegmentedRaftLogReader.java
@@ -35,7 +35,7 @@ import java.io.*;
import java.util.Optional;
import java.util.zip.Checksum;
-import com.codahale.metrics.Timer;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Timer;
class SegmentedRaftLogReader implements Closeable {
static final Logger LOG =
LoggerFactory.getLogger(SegmentedRaftLogReader.class);
diff --git
a/ratis-server/src/main/java/org/apache/ratis/server/raftlog/segmented/SegmentedRaftLogWorker.java
b/ratis-server/src/main/java/org/apache/ratis/server/raftlog/segmented/SegmentedRaftLogWorker.java
index a9e4b13f..e19584ef 100644
---
a/ratis-server/src/main/java/org/apache/ratis/server/raftlog/segmented/SegmentedRaftLogWorker.java
+++
b/ratis-server/src/main/java/org/apache/ratis/server/raftlog/segmented/SegmentedRaftLogWorker.java
@@ -17,8 +17,8 @@
*/
package org.apache.ratis.server.raftlog.segmented;
-import com.codahale.metrics.Gauge;
-import com.codahale.metrics.Timer;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Timer;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Gauge;
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import org.apache.ratis.conf.RaftProperties;
import org.apache.ratis.proto.RaftProtos.StateMachineLogEntryProto;
diff --git
a/ratis-server/src/main/java/org/apache/ratis/statemachine/impl/BaseStateMachine.java
b/ratis-server/src/main/java/org/apache/ratis/statemachine/impl/BaseStateMachine.java
index 2dd41ee5..9cc4c5b2 100644
---
a/ratis-server/src/main/java/org/apache/ratis/statemachine/impl/BaseStateMachine.java
+++
b/ratis-server/src/main/java/org/apache/ratis/statemachine/impl/BaseStateMachine.java
@@ -18,7 +18,7 @@
package org.apache.ratis.statemachine.impl;
-import com.codahale.metrics.Timer;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Timer;
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import org.apache.ratis.proto.RaftProtos;
import org.apache.ratis.protocol.Message;
diff --git a/ratis-server/src/test/java/org/apache/ratis/LogAppenderTests.java
b/ratis-server/src/test/java/org/apache/ratis/LogAppenderTests.java
index 0a0fdbe3..b187daba 100644
--- a/ratis-server/src/test/java/org/apache/ratis/LogAppenderTests.java
+++ b/ratis-server/src/test/java/org/apache/ratis/LogAppenderTests.java
@@ -54,7 +54,7 @@ import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicLong;
import java.util.concurrent.atomic.AtomicReference;
-import com.codahale.metrics.Gauge;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Gauge;
public abstract class LogAppenderTests<CLUSTER extends MiniRaftCluster>
extends BaseTest
diff --git a/ratis-server/src/test/java/org/apache/ratis/RaftBasicTests.java
b/ratis-server/src/test/java/org/apache/ratis/RaftBasicTests.java
index 7fdd4b9d..5f09c86d 100644
--- a/ratis-server/src/test/java/org/apache/ratis/RaftBasicTests.java
+++ b/ratis-server/src/test/java/org/apache/ratis/RaftBasicTests.java
@@ -17,7 +17,7 @@
*/
package org.apache.ratis;
-import com.codahale.metrics.Gauge;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Gauge;
import org.apache.log4j.Level;
import org.apache.ratis.RaftTestUtil.SimpleMessage;
import org.apache.ratis.client.RaftClient;
diff --git
a/ratis-server/src/test/java/org/apache/ratis/server/impl/LeaderElectionTests.java
b/ratis-server/src/test/java/org/apache/ratis/server/impl/LeaderElectionTests.java
index 08e7d22d..b988d3f4 100644
---
a/ratis-server/src/test/java/org/apache/ratis/server/impl/LeaderElectionTests.java
+++
b/ratis-server/src/test/java/org/apache/ratis/server/impl/LeaderElectionTests.java
@@ -65,7 +65,7 @@ import static org.junit.Assert.assertNotNull;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
-import com.codahale.metrics.Timer;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Timer;
public abstract class LeaderElectionTests<CLUSTER extends MiniRaftCluster>
extends BaseTest
diff --git
a/ratis-server/src/test/java/org/apache/ratis/server/impl/TestLogAppenderMetrics.java
b/ratis-server/src/test/java/org/apache/ratis/server/impl/TestLogAppenderMetrics.java
index 30c547b9..07870f98 100644
---
a/ratis-server/src/test/java/org/apache/ratis/server/impl/TestLogAppenderMetrics.java
+++
b/ratis-server/src/test/java/org/apache/ratis/server/impl/TestLogAppenderMetrics.java
@@ -31,7 +31,7 @@ import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
-import com.codahale.metrics.Gauge;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Gauge;
public class TestLogAppenderMetrics {
diff --git
a/ratis-server/src/test/java/org/apache/ratis/server/impl/TestRetryCacheMetrics.java
b/ratis-server/src/test/java/org/apache/ratis/server/impl/TestRetryCacheMetrics.java
index 37032381..93d466b5 100644
---
a/ratis-server/src/test/java/org/apache/ratis/server/impl/TestRetryCacheMetrics.java
+++
b/ratis-server/src/test/java/org/apache/ratis/server/impl/TestRetryCacheMetrics.java
@@ -21,7 +21,7 @@ package org.apache.ratis.server.impl;
import static org.apache.ratis.server.metrics.RaftServerMetricsImpl.*;
import static org.junit.Assert.assertEquals;
-import com.codahale.metrics.Gauge;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Gauge;
import org.apache.ratis.metrics.RatisMetricRegistry;
import org.apache.ratis.protocol.ClientInvocationId;
import org.apache.ratis.protocol.ClientId;
diff --git
a/ratis-server/src/test/java/org/apache/ratis/server/metrics/TestLeaderElectionMetrics.java
b/ratis-server/src/test/java/org/apache/ratis/server/metrics/TestLeaderElectionMetrics.java
index af000f3a..3592afc5 100644
---
a/ratis-server/src/test/java/org/apache/ratis/server/metrics/TestLeaderElectionMetrics.java
+++
b/ratis-server/src/test/java/org/apache/ratis/server/metrics/TestLeaderElectionMetrics.java
@@ -23,7 +23,7 @@ import static
org.apache.ratis.server.metrics.LeaderElectionMetrics.LEADER_ELECT
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
-import com.codahale.metrics.Gauge;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Gauge;
import org.apache.ratis.BaseTest;
import org.apache.ratis.metrics.RatisMetricRegistry;
import org.apache.ratis.protocol.RaftGroupId;
diff --git
a/ratis-server/src/test/java/org/apache/ratis/statemachine/RaftSnapshotBaseTest.java
b/ratis-server/src/test/java/org/apache/ratis/statemachine/RaftSnapshotBaseTest.java
index 9538be62..d168b7e2 100644
---
a/ratis-server/src/test/java/org/apache/ratis/statemachine/RaftSnapshotBaseTest.java
+++
b/ratis-server/src/test/java/org/apache/ratis/statemachine/RaftSnapshotBaseTest.java
@@ -61,8 +61,8 @@ import java.util.Optional;
import java.util.stream.Collectors;
import java.util.stream.LongStream;
-import com.codahale.metrics.Counter;
-import com.codahale.metrics.Timer;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Counter;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Timer;
public abstract class RaftSnapshotBaseTest extends BaseTest {
{
diff --git a/ratis-test/pom.xml b/ratis-test/pom.xml
index 2da44344..ce05786a 100644
--- a/ratis-test/pom.xml
+++ b/ratis-test/pom.xml
@@ -99,12 +99,6 @@
<artifactId>mockito-core</artifactId>
<scope>test</scope>
</dependency>
-
- <dependency>
- <groupId>io.dropwizard.metrics</groupId>
- <artifactId>metrics-jvm</artifactId>
- <scope>test</scope>
- </dependency>
<dependency>
<groupId>org.apache.ratis</groupId>
<artifactId>ratis-shell</artifactId>
diff --git
a/ratis-test/src/test/java/org/apache/ratis/TestRaftServerSlownessDetection.java
b/ratis-test/src/test/java/org/apache/ratis/TestRaftServerSlownessDetection.java
index fded493b..9b850e27 100644
---
a/ratis-test/src/test/java/org/apache/ratis/TestRaftServerSlownessDetection.java
+++
b/ratis-test/src/test/java/org/apache/ratis/TestRaftServerSlownessDetection.java
@@ -44,7 +44,7 @@ import java.util.List;
import java.util.SortedMap;
import java.util.concurrent.TimeUnit;
-import com.codahale.metrics.Gauge;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Gauge;
/**
* Test Raft Server Slowness detection and notification to Leader's
statemachine.
diff --git
a/ratis-test/src/test/java/org/apache/ratis/grpc/TestRaftServerWithGrpc.java
b/ratis-test/src/test/java/org/apache/ratis/grpc/TestRaftServerWithGrpc.java
index 16e11f7d..509916db 100644
--- a/ratis-test/src/test/java/org/apache/ratis/grpc/TestRaftServerWithGrpc.java
+++ b/ratis-test/src/test/java/org/apache/ratis/grpc/TestRaftServerWithGrpc.java
@@ -26,7 +26,7 @@ import static
org.apache.ratis.server.metrics.RaftServerMetricsImpl.REQUEST_MEGA
import static
org.apache.ratis.server.metrics.RaftServerMetricsImpl.REQUEST_BYTE_SIZE_LIMIT_HIT_COUNTER;
import static
org.apache.ratis.server.metrics.RaftServerMetricsImpl.RESOURCE_LIMIT_HIT_COUNTER;
-import com.codahale.metrics.Gauge;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Gauge;
import org.apache.log4j.Level;
import org.apache.ratis.BaseTest;
import org.apache.ratis.protocol.RaftGroup;
diff --git
a/ratis-test/src/test/java/org/apache/ratis/grpc/TestRaftSnapshotWithGrpc.java
b/ratis-test/src/test/java/org/apache/ratis/grpc/TestRaftSnapshotWithGrpc.java
index 38301772..2c72df09 100644
---
a/ratis-test/src/test/java/org/apache/ratis/grpc/TestRaftSnapshotWithGrpc.java
+++
b/ratis-test/src/test/java/org/apache/ratis/grpc/TestRaftSnapshotWithGrpc.java
@@ -27,7 +27,7 @@ import org.apache.ratis.server.RaftServer;
import org.apache.ratis.statemachine.RaftSnapshotBaseTest;
import org.junit.Assert;
-import com.codahale.metrics.Counter;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Counter;
public class TestRaftSnapshotWithGrpc extends RaftSnapshotBaseTest {
@Override
diff --git
a/ratis-test/src/test/java/org/apache/ratis/server/raftlog/TestRaftLogMetrics.java
b/ratis-test/src/test/java/org/apache/ratis/server/raftlog/TestRaftLogMetrics.java
index e5f7f705..92a9a90d 100644
---
a/ratis-test/src/test/java/org/apache/ratis/server/raftlog/TestRaftLogMetrics.java
+++
b/ratis-test/src/test/java/org/apache/ratis/server/raftlog/TestRaftLogMetrics.java
@@ -17,7 +17,7 @@
*/
package org.apache.ratis.server.raftlog;
-import com.codahale.metrics.Timer;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Timer;
import org.apache.ratis.BaseTest;
import org.apache.ratis.RaftTestUtil;
import org.apache.ratis.client.RaftClient;
diff --git
a/ratis-test/src/test/java/org/apache/ratis/server/raftlog/segmented/TestLogSegment.java
b/ratis-test/src/test/java/org/apache/ratis/server/raftlog/segmented/TestLogSegment.java
index fca2974f..87651963 100644
---
a/ratis-test/src/test/java/org/apache/ratis/server/raftlog/segmented/TestLogSegment.java
+++
b/ratis-test/src/test/java/org/apache/ratis/server/raftlog/segmented/TestLogSegment.java
@@ -52,7 +52,7 @@ import java.util.concurrent.ThreadLocalRandom;
import static org.apache.ratis.server.raftlog.RaftLog.INVALID_LOG_INDEX;
import static
org.apache.ratis.server.raftlog.segmented.LogSegment.getEntrySize;
-import com.codahale.metrics.Timer;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Timer;
/**
* Test basic functionality of {@link LogSegment}
diff --git
a/ratis-test/src/test/java/org/apache/ratis/server/raftlog/segmented/TestSegmentedRaftLog.java
b/ratis-test/src/test/java/org/apache/ratis/server/raftlog/segmented/TestSegmentedRaftLog.java
index 50ec159b..b4bb098a 100644
---
a/ratis-test/src/test/java/org/apache/ratis/server/raftlog/segmented/TestSegmentedRaftLog.java
+++
b/ratis-test/src/test/java/org/apache/ratis/server/raftlog/segmented/TestSegmentedRaftLog.java
@@ -67,7 +67,7 @@ import java.util.concurrent.TimeUnit;
import java.util.function.LongSupplier;
import java.util.function.Supplier;
-import com.codahale.metrics.Timer;
+import org.apache.ratis.thirdparty.com.codahale.metrics.Timer;
public class TestSegmentedRaftLog extends BaseTest {
static {