Skip to content

Commit 9a2cae5

Browse files
authored
Track forwarded activation metrics in partition identity tests (#2269)
1 parent 6abf9a6 commit 9a2cae5

File tree

1 file changed

+17
-3
lines changed

1 file changed

+17
-3
lines changed

tests/Proto.Cluster.PartitionIdentity.Tests/PartitionIdentityTests.cs

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,13 +53,15 @@ PartitionIdentityLookup.Send send
5353

5454
var activationRequestsSent = 0L;
5555
var activationRequestsReceived = 0L;
56+
var activationRequestsForwarded = 0L;
5657
using var listener = new MeterListener
5758
{
5859
InstrumentPublished = (instrument, l) =>
5960
{
6061
if (instrument.Meter.Name == ProtoMetrics.MeterName &&
6162
(instrument.Name == "protocluster_identity_activation_request_sent_count" ||
62-
instrument.Name == "protocluster_activator_activation_request_received_count"))
63+
instrument.Name == "protocluster_activator_activation_request_received_count" ||
64+
instrument.Name == "protocluster_activator_activation_request_forwarded_count"))
6365
{
6466
l.EnableMeasurementEvents(instrument);
6567
}
@@ -76,6 +78,10 @@ PartitionIdentityLookup.Send send
7678
{
7779
Interlocked.Add(ref activationRequestsReceived, measurement);
7880
}
81+
else if (instrument.Name == "protocluster_activator_activation_request_forwarded_count")
82+
{
83+
Interlocked.Add(ref activationRequestsForwarded, measurement);
84+
}
7985
});
8086

8187
listener.Start();
@@ -129,18 +135,26 @@ PartitionIdentityLookup.Send send
129135

130136
var sentActivationRequests = activationRequestsSent;
131137
var receivedActivationRequests = activationRequestsReceived;
138+
var forwardedActivationRequests = activationRequestsForwarded;
132139

133140
_output.WriteLine(
134141
$"{totalCalls} requests, {restarts} restarts, {receivedActivationRequests} activation requests against " +
135142
actorStates.Count + " identities");
136143
_output.WriteLine($"{sentActivationRequests} activation requests sent by identity lookups");
144+
_output.WriteLine($"{forwardedActivationRequests} activation requests forwarded by activators");
137145

138146
// Ensure every activation request sent by lookups was handled by an activator
139-
sentActivationRequests.Should().Be(receivedActivationRequests);
147+
sentActivationRequests.Should().Be(
148+
receivedActivationRequests,
149+
$"sent {sentActivationRequests}, received {receivedActivationRequests}, forwarded {forwardedActivationRequests}"
150+
);
140151

141152
// Some activation requests may target actors that are already running
142153
// so the number of received requests can exceed actual actor starts
143-
receivedActivationRequests.Should().BeGreaterOrEqualTo(totalStarts);
154+
receivedActivationRequests.Should().BeGreaterOrEqualTo(
155+
totalStarts,
156+
$"received {receivedActivationRequests}, actor starts {totalStarts}, forwarded {forwardedActivationRequests}"
157+
);
144158

145159
foreach (var actorState in actorStates)
146160
{

0 commit comments

Comments
 (0)