You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by ma...@apache.org on 2020/04/03 10:55:26 UTC
[cassandra] 03/04: Expose repair streaming metrics
This is an automated email from the ASF dual-hosted git repository.
marcuse pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git
commit caa3bd83dcb92a3145b7ef0fd73bbd3708b255bf
Author: Sankalp Kohli <sa...@apple.com>
AuthorDate: Mon Mar 23 10:59:27 2020 +0100
Expose repair streaming metrics
Patch by Sankalp Kohli; reviewed by Ekaterina Dimitrova for CASSANDRA-15656
---
CHANGES.txt | 1 +
src/java/org/apache/cassandra/metrics/StreamingMetrics.java | 2 ++
src/java/org/apache/cassandra/streaming/StreamSession.java | 13 +++++++++++++
3 files changed, 16 insertions(+)
diff --git a/CHANGES.txt b/CHANGES.txt
index 77d69ca..55243b8 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
4.0-alpha4
+ * Expose repair streaming metrics (CASSANDRA-15656)
* Set now in seconds in the future for validation repairs (CASSANDRA-15655)
* Emit metric on preview repair failure (CASSANDRA-15654)
* Use more appropriate logging levels (CASSANDRA-15661)
diff --git a/src/java/org/apache/cassandra/metrics/StreamingMetrics.java b/src/java/org/apache/cassandra/metrics/StreamingMetrics.java
index 793a8c0..80a5e13 100644
--- a/src/java/org/apache/cassandra/metrics/StreamingMetrics.java
+++ b/src/java/org/apache/cassandra/metrics/StreamingMetrics.java
@@ -39,6 +39,8 @@ public class StreamingMetrics
public static final Counter activeStreamsOutbound = Metrics.counter(DefaultNameFactory.createMetricName(TYPE_NAME, "ActiveOutboundStreams", null));
public static final Counter totalIncomingBytes = Metrics.counter(DefaultNameFactory.createMetricName(TYPE_NAME, "TotalIncomingBytes", null));
public static final Counter totalOutgoingBytes = Metrics.counter(DefaultNameFactory.createMetricName(TYPE_NAME, "TotalOutgoingBytes", null));
+ public static final Counter totalOutgoingRepairBytes = Metrics.counter(DefaultNameFactory.createMetricName(TYPE_NAME, "TotalOutgoingRepairBytes", null));
+ public static final Counter totalOutgoingRepairSSTables = Metrics.counter(DefaultNameFactory.createMetricName(TYPE_NAME, "TotalOutgoingRepairSSTables", null));
public final Counter incomingBytes;
public final Counter outgoingBytes;
diff --git a/src/java/org/apache/cassandra/streaming/StreamSession.java b/src/java/org/apache/cassandra/streaming/StreamSession.java
index 95d3755..05bb5ff 100644
--- a/src/java/org/apache/cassandra/streaming/StreamSession.java
+++ b/src/java/org/apache/cassandra/streaming/StreamSession.java
@@ -510,8 +510,21 @@ public class StreamSession implements IEndpointStateChangeSubscriber
state(State.PREPARING);
PrepareSynMessage prepare = new PrepareSynMessage();
prepare.requests.addAll(requests);
+ long totalBytesToStream = 0;
+ long totalSSTablesStreamed = 0;
for (StreamTransferTask task : transfers.values())
+ {
+ totalBytesToStream += task.getTotalSize();
+ totalSSTablesStreamed += task.getTotalNumberOfFiles();
prepare.summaries.add(task.getSummary());
+ }
+
+ if(StreamOperation.REPAIR == getStreamOperation())
+ {
+ StreamingMetrics.totalOutgoingRepairBytes.inc(totalBytesToStream);
+ StreamingMetrics.totalOutgoingRepairSSTables.inc(totalSSTablesStreamed);
+ }
+
messageSender.sendMessage(prepare);
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org