diff --git a/src/main/java/com/uid2/operator/vertx/UIDOperatorVerticle.java b/src/main/java/com/uid2/operator/vertx/UIDOperatorVerticle.java index 78762b6bf..f2bf30ac5 100644 --- a/src/main/java/com/uid2/operator/vertx/UIDOperatorVerticle.java +++ b/src/main/java/com/uid2/operator/vertx/UIDOperatorVerticle.java @@ -1812,13 +1812,13 @@ private RefreshResponse refreshIdentity(RoutingContext rc, String tokenStr) { var v2Builder = Counter .builder("uid2_refresh_token_v2_received_count") .description("Counter for the amount of refresh token v2 received").tags( - "site_id", String.valueOf(AuthMiddleware.getAuthClient(rc).getSiteId())); + "site_id", String.valueOf(rc.data().get(Const.RoutingContextData.SiteId))); v2Builder.register(Metrics.globalRegistry).increment(); } else if (tokenVersion == TokenVersion.V3) { var v3Builder = Counter .builder("uid2_refresh_token_v3_received_count") .description("Counter for the amount of refresh token v3 received").tags( - "site_id", String.valueOf(AuthMiddleware.getAuthClient(rc).getSiteId())); + "site_id", String.valueOf(rc.data().get(Const.RoutingContextData.SiteId))); v3Builder.register(Metrics.globalRegistry).increment(); } diff --git a/src/test/java/com/uid2/operator/TokenEncodingTest.java b/src/test/java/com/uid2/operator/TokenEncodingTest.java index 0c9d38644..43b043810 100644 --- a/src/test/java/com/uid2/operator/TokenEncodingTest.java +++ b/src/test/java/com/uid2/operator/TokenEncodingTest.java @@ -11,9 +11,12 @@ import com.uid2.shared.store.reader.RotatingKeysetKeyStore; import com.uid2.shared.store.reader.RotatingKeysetProvider; import com.uid2.shared.store.scope.GlobalScope; +import io.micrometer.core.instrument.Metrics; +import io.micrometer.core.instrument.simple.SimpleMeterRegistry; import io.vertx.core.buffer.Buffer; import io.vertx.core.json.JsonObject; import org.junit.Assert; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.EnumSource; import org.junit.jupiter.params.provider.ValueSource; @@ -27,6 +30,14 @@ public class TokenEncodingTest { private final KeyManager keyManager; + private SimpleMeterRegistry registry; + + @BeforeEach + private void setupMetrics() { + this.registry = new SimpleMeterRegistry(); + Metrics.globalRegistry.add(registry); + } + public TokenEncodingTest() throws Exception { RotatingKeysetKeyStore keysetKeyStore = new RotatingKeysetKeyStore( new EmbeddedResourceStorage(Main.class), @@ -80,6 +91,10 @@ public void testRefreshTokenEncoding(TokenVersion tokenVersion) { Buffer b = Buffer.buffer(encodedBytes); int keyId = b.getInt(tokenVersion == TokenVersion.V2 ? 25 : 2); assertEquals(Data.RefreshKeySiteId, keyManager.getSiteIdFromKeyId(keyId)); + + assertEquals(1, Metrics.globalRegistry + .get("uid2_refresh_token_v3_served_count") + .counter().count()); } @ParameterizedTest diff --git a/src/test/java/com/uid2/operator/UIDOperatorVerticleTest.java b/src/test/java/com/uid2/operator/UIDOperatorVerticleTest.java index d9c86a563..b04d01956 100644 --- a/src/test/java/com/uid2/operator/UIDOperatorVerticleTest.java +++ b/src/test/java/com/uid2/operator/UIDOperatorVerticleTest.java @@ -1745,6 +1745,10 @@ void tokenRefreshExpiredTokenAuthenticated(String apiVersion, Vertx vertx, Vertx sendTokenRefresh(apiVersion, vertx, testContext, refreshToken, bodyJson.getString("refresh_response_key"), 400, refreshRespJson -> { assertEquals("expired_token", refreshRespJson.getString("status")); + assertEquals(1, Metrics.globalRegistry + .get("uid2_refresh_token_v3_received_count") + .tag("site_id", String.valueOf(clientSiteId)) + .counter().count()); testContext.completeNow(); }); }); @@ -1763,6 +1767,10 @@ void tokenRefreshExpiredTokenUnauthenticated(String apiVersion, Vertx vertx, Ver sendTokenRefresh(apiVersion, vertx, testContext, refreshToken, "", 400, refreshRespJson -> { assertEquals("error", refreshRespJson.getString("status")); + assertEquals(1, Metrics.globalRegistry + .get("uid2_refresh_token_v3_received_count") + .tag("site_id", String.valueOf(clientSiteId)) + .counter().count()); testContext.completeNow(); }); });