Replace CDI with Micrometer global #30

Merged
sschnabe merged 1 commit from micrometer into main 2023-04-25 08:51:48 +02:00
2 changed files with 7 additions and 11 deletions
Showing only changes of commit aa5988827d - Show all commits

View file

@ -1,7 +1,5 @@
package io.kokuwa.keycloak.metrics.event; package io.kokuwa.keycloak.metrics.event;
import javax.enterprise.inject.spi.CDI;
import org.jboss.logging.Logger; import org.jboss.logging.Logger;
import org.keycloak.Config.Scope; import org.keycloak.Config.Scope;
import org.keycloak.events.EventListenerProvider; import org.keycloak.events.EventListenerProvider;
@ -10,6 +8,7 @@ import org.keycloak.models.KeycloakSession;
import org.keycloak.models.KeycloakSessionFactory; import org.keycloak.models.KeycloakSessionFactory;
import io.micrometer.core.instrument.MeterRegistry; import io.micrometer.core.instrument.MeterRegistry;
import io.micrometer.core.instrument.Metrics;
/** /**
* Factory for {@link MetricsEventListener}, uses {@link MeterRegistry} from CDI. * Factory for {@link MetricsEventListener}, uses {@link MeterRegistry} from CDI.
@ -19,7 +18,6 @@ import io.micrometer.core.instrument.MeterRegistry;
public class MetricsEventListenerFactory implements EventListenerProviderFactory { public class MetricsEventListenerFactory implements EventListenerProviderFactory {
private static final Logger log = Logger.getLogger(MetricsEventListenerFactory.class); private static final Logger log = Logger.getLogger(MetricsEventListenerFactory.class);
private MeterRegistry registry;
private boolean replaceIds; private boolean replaceIds;
@Override @Override
@ -34,13 +32,11 @@ public class MetricsEventListenerFactory implements EventListenerProviderFactory
} }
@Override @Override
public void postInit(KeycloakSessionFactory factory) { public void postInit(KeycloakSessionFactory factory) {}
registry = CDI.current().select(MeterRegistry.class).get();
}
@Override @Override
public EventListenerProvider create(KeycloakSession session) { public EventListenerProvider create(KeycloakSession session) {
return new MetricsEventListener(registry, replaceIds, session); return new MetricsEventListener(Metrics.globalRegistry, replaceIds, session);
} }
@Override @Override

View file

@ -28,16 +28,16 @@ public class KeycloakIT {
@Test @Test
void loginAndAttempts(KeycloakClient keycloak, Prometheus prometheus) { void loginAndAttempts(KeycloakClient keycloak, Prometheus prometheus) {
var clientId1 = UUID.randomUUID().toString(); var realmName1 = "loginAndAttempts_1";
var realmName1 = UUID.randomUUID().toString(); var clientId1 = realmName1 + "_client_1";
var username1 = UUID.randomUUID().toString(); var username1 = UUID.randomUUID().toString();
var password1 = UUID.randomUUID().toString(); var password1 = UUID.randomUUID().toString();
keycloak.createRealm(realmName1); keycloak.createRealm(realmName1);
keycloak.createClient(realmName1, clientId1); keycloak.createClient(realmName1, clientId1);
keycloak.createUser(realmName1, username1, password1); keycloak.createUser(realmName1, username1, password1);
var clientId2 = UUID.randomUUID().toString(); var realmName2 = "loginAndAttempts_2";
var realmName2 = UUID.randomUUID().toString(); var clientId2 = realmName2 + "_client_2";
var username2 = UUID.randomUUID().toString(); var username2 = UUID.randomUUID().toString();
var password2 = UUID.randomUUID().toString(); var password2 = UUID.randomUUID().toString();
keycloak.createRealm(realmName2); keycloak.createRealm(realmName2);