diff --git a/README.md b/README.md
index 6bddad3..9b1f341 100644
--- a/README.md
+++ b/README.md
@@ -57,7 +57,7 @@ keycloak_event_admin_total{error="",operation="CREATE",realm="9039a0b5-e8c9-437a
### `KC_METRICS_EVENT_REPLACE_IDS`
-If set to `true` than replace model ids with names:
+Per set to `true` (the default value) than replace model ids with names:
* [RealmModel#getId()](https://github.com/keycloak/keycloak/blob/main/server-spi/src/main/java/org/keycloak/models/RealmModel.java#L82) with [RealmModel#getName()](https://github.com/keycloak/keycloak/blob/main/server-spi/src/main/java/org/keycloak/models/RealmModel.java#L84)
diff --git a/pom.xml b/pom.xml
index 28140b1..999fb8a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,7 +4,7 @@
io.kokuwa.keycloak
keycloak-event-metrics
- 0.2.2-SNAPSHOT
+ 1.0.0-SNAPSHOT
Keycloak Metrics
Provides metrics for Keycloak user/admin events
diff --git a/src/main/java/io/kokuwa/keycloak/metrics/MicrometerEventListener.java b/src/main/java/io/kokuwa/keycloak/metrics/MetricsEventListener.java
similarity index 77%
rename from src/main/java/io/kokuwa/keycloak/metrics/MicrometerEventListener.java
rename to src/main/java/io/kokuwa/keycloak/metrics/MetricsEventListener.java
index 7a83b3f..ea811fb 100644
--- a/src/main/java/io/kokuwa/keycloak/metrics/MicrometerEventListener.java
+++ b/src/main/java/io/kokuwa/keycloak/metrics/MetricsEventListener.java
@@ -17,23 +17,23 @@ import io.micrometer.core.instrument.MeterRegistry;
*
* @author Stephan Schnabel
*/
-public class MicrometerEventListener implements EventListenerProvider, AutoCloseable {
+public class MetricsEventListener implements EventListenerProvider, AutoCloseable {
- private static final Logger log = Logger.getLogger(MicrometerEventListener.class);
+ private static final Logger log = Logger.getLogger(MetricsEventListener.class);
private final MeterRegistry registry;
+ private final boolean replaceIds;
private final KeycloakSession session;
- private final boolean replace;
- MicrometerEventListener(MeterRegistry registry, KeycloakSession session, boolean replaceId) {
+ MetricsEventListener(MeterRegistry registry, boolean replaceIds, KeycloakSession session) {
this.registry = registry;
+ this.replaceIds = replaceIds;
this.session = session;
- this.replace = replaceId;
}
@Override
public void onEvent(Event event) {
registry.counter("keycloak_event_user",
- "realm", toBlank(replace ? getRealmName(event.getRealmId()) : event.getRealmId()),
+ "realm", toBlank(replaceIds ? getRealmName(event.getRealmId()) : event.getRealmId()),
"type", toBlank(event.getType()),
"client", toBlank(event.getClientId()),
"error", toBlank(event.getError()))
@@ -43,7 +43,7 @@ public class MicrometerEventListener implements EventListenerProvider, AutoClose
@Override
public void onEvent(AdminEvent event, boolean includeRepresentation) {
registry.counter("keycloak_event_admin",
- "realm", toBlank(replace ? getRealmName(event.getRealmId()) : event.getRealmId()),
+ "realm", toBlank(replaceIds ? getRealmName(event.getRealmId()) : event.getRealmId()),
"resource", toBlank(event.getResourceType()),
"operation", toBlank(event.getOperationType()),
"error", toBlank(event.getError()))
diff --git a/src/main/java/io/kokuwa/keycloak/metrics/MicrometerEventListenerFactory.java b/src/main/java/io/kokuwa/keycloak/metrics/MetricsEventListenerFactory.java
similarity index 61%
rename from src/main/java/io/kokuwa/keycloak/metrics/MicrometerEventListenerFactory.java
rename to src/main/java/io/kokuwa/keycloak/metrics/MetricsEventListenerFactory.java
index 8553df6..3804d21 100644
--- a/src/main/java/io/kokuwa/keycloak/metrics/MicrometerEventListenerFactory.java
+++ b/src/main/java/io/kokuwa/keycloak/metrics/MetricsEventListenerFactory.java
@@ -12,15 +12,15 @@ import org.keycloak.models.KeycloakSessionFactory;
import io.micrometer.core.instrument.MeterRegistry;
/**
- * Factory for {@link MicrometerEventListener}, uses {@link MeterRegistry} from CDI.
+ * Factory for {@link MetricsEventListener}, uses {@link MeterRegistry} from CDI.
*
* @author Stephan Schnabel
*/
-public class MicrometerEventListenerFactory implements EventListenerProviderFactory {
+public class MetricsEventListenerFactory implements EventListenerProviderFactory {
- private static final Logger log = Logger.getLogger(MicrometerEventListener.class);
+ private static final Logger log = Logger.getLogger(MetricsEventListenerFactory.class);
private MeterRegistry registry;
- private boolean replace;
+ private boolean replaceIds;
@Override
public String getId() {
@@ -29,8 +29,8 @@ public class MicrometerEventListenerFactory implements EventListenerProviderFact
@Override
public void init(Scope config) {
- replace = "true".equals(System.getenv("KC_METRICS_EVENT_REPLACE_IDS"));
- log.info(replace ? "Configured with model names." : "Configured with model ids.");
+ replaceIds = "true".equals(System.getenv().getOrDefault("KC_METRICS_EVENT_REPLACE_IDS", "true"));
+ log.info(replaceIds ? "Configured with model names." : "Configured with model ids.");
}
@Override
@@ -40,7 +40,7 @@ public class MicrometerEventListenerFactory implements EventListenerProviderFact
@Override
public EventListenerProvider create(KeycloakSession session) {
- return new MicrometerEventListener(registry, session, replace);
+ return new MetricsEventListener(registry, replaceIds, session);
}
@Override
diff --git a/src/main/resources/META-INF/services/org.keycloak.events.EventListenerProviderFactory b/src/main/resources/META-INF/services/org.keycloak.events.EventListenerProviderFactory
index a54f10d..6fca1e1 100644
--- a/src/main/resources/META-INF/services/org.keycloak.events.EventListenerProviderFactory
+++ b/src/main/resources/META-INF/services/org.keycloak.events.EventListenerProviderFactory
@@ -1 +1 @@
-io.kokuwa.keycloak.metrics.MicrometerEventListenerFactory
+io.kokuwa.keycloak.metrics.MetricsEventListenerFactory
diff --git a/src/test/java/io/kokuwa/keycloak/metrics/MicrometerEventListenerTest.java b/src/test/java/io/kokuwa/keycloak/metrics/MetricsEventListenerTest.java
similarity index 98%
rename from src/test/java/io/kokuwa/keycloak/metrics/MicrometerEventListenerTest.java
rename to src/test/java/io/kokuwa/keycloak/metrics/MetricsEventListenerTest.java
index 5d358c5..2abb9ea 100644
--- a/src/test/java/io/kokuwa/keycloak/metrics/MicrometerEventListenerTest.java
+++ b/src/test/java/io/kokuwa/keycloak/metrics/MetricsEventListenerTest.java
@@ -35,12 +35,12 @@ import io.micrometer.core.instrument.Counter;
import io.micrometer.core.instrument.MeterRegistry;
/**
- * Test for {@link MicrometerEventListener} with Mockito.
+ * Test for {@link MetricsEventListener} with Mockito.
*
* @author Stephan Schnabel
*/
@ExtendWith(MockitoExtension.class)
-public class MicrometerEventListenerTest {
+public class MetricsEventListenerTest {
@Mock
KeycloakSession session;
@@ -378,8 +378,8 @@ public class MicrometerEventListenerTest {
}
}
- private MicrometerEventListener listener(boolean replace) {
- return new MicrometerEventListener(registry, session, replace);
+ private MetricsEventListener listener(boolean replaceIds) {
+ return new MetricsEventListener(registry, replaceIds, session);
}
private void assertCounter(String metric, Map tags) {
diff --git a/src/test/java/io/kokuwa/keycloak/metrics/junit/KeycloakExtension.java b/src/test/java/io/kokuwa/keycloak/metrics/junit/KeycloakExtension.java
index 892eceb..31ffe6c 100644
--- a/src/test/java/io/kokuwa/keycloak/metrics/junit/KeycloakExtension.java
+++ b/src/test/java/io/kokuwa/keycloak/metrics/junit/KeycloakExtension.java
@@ -60,7 +60,6 @@ public class KeycloakExtension implements BeforeAllCallback, ParameterResolver {
.withEnv("KC_LOG_CONSOLE_COLOR", "true")
.withEnv("KC_HEALTH_ENABLED", "true")
.withEnv("KC_METRICS_ENABLED", "true")
- .withEnv("KC_METRICS_EVENT_REPLACE_IDS", "true")
.withCopyFileToContainer(MountableFile.forHostPath(jar), "/opt/keycloak/providers/metrics.jar")
.withLogConsumer(out -> System.out.print(out.getUtf8String()))
.withExposedPorts(8080)