mirror of
https://github.com/keycloak/keycloak.git
synced 2025-12-30 11:29:57 -06:00
Make event metrics supported (#37391)
* Make event metrics supported Closes #37389 Signed-off-by: Michal Hajas <mhajas@redhat.com> * Address comments from reviews Signed-off-by: Michal Hajas <mhajas@redhat.com> --------- Signed-off-by: Michal Hajas <mhajas@redhat.com>
This commit is contained in:
@@ -129,7 +129,7 @@ public class Profile {
|
||||
|
||||
CACHE_EMBEDDED_REMOTE_STORE("Support for remote-store in embedded Infinispan caches", Type.EXPERIMENTAL),
|
||||
|
||||
USER_EVENT_METRICS("Collect metrics based on user events", Type.PREVIEW),
|
||||
USER_EVENT_METRICS("Collect metrics based on user events", Type.DEFAULT),
|
||||
|
||||
IPA_TUURA_FEDERATION("IPA-Tuura user federation provider", Type.EXPERIMENTAL),
|
||||
|
||||
|
||||
@@ -6,7 +6,6 @@
|
||||
<@tmpl.guide
|
||||
title="Enabling {project_name} Event Metrics"
|
||||
summary="Learn how to enable and use {project_name} Event Metrics"
|
||||
preview="true"
|
||||
includedOptions="metrics-enabled event-metrics-user-*">
|
||||
|
||||
Event metrics can provide admins an overview of the different activities in a {project_name} instance.
|
||||
@@ -21,11 +20,11 @@ If you have multiple instances running in a cluster, you will need to collect th
|
||||
|
||||
== Enable event metrics
|
||||
|
||||
To start collecting metrics, enable the feature `user-event-metrics`, enable metrics, and enable the metrics for user events.
|
||||
To start collecting event metrics, enable metrics and enable the metrics for user events.
|
||||
|
||||
The following shows the required startup parameters:
|
||||
|
||||
<@kc.start parameters="--features=user-event-metrics --metrics-enabled=true --event-metrics-user-enabled=true ..."/>
|
||||
<@kc.start parameters="--metrics-enabled=true --event-metrics-user-enabled=true ..."/>
|
||||
|
||||
By default, there is a separate metric for each realm.
|
||||
To break down the metric by client and identity provider, you can add those metrics dimension using the configuration option `event-metrics-user-tags`.
|
||||
|
||||
@@ -21,7 +21,7 @@ public class EventOptions {
|
||||
|
||||
public static final Option<List<String>> USER_EVENT_METRICS_EVENTS = OptionBuilder.listOptionBuilder("event-metrics-user-events", String.class)
|
||||
.category(OptionCategory.EVENTS)
|
||||
.description("Comma-separated list of events to be collected for user event metrics. Reduce the number of metrics. If empty or not set, all events create a metric.")
|
||||
.description("Comma-separated list of events to be collected for user event metrics. This option can be used to reduce the number of metrics created as by default all user events create a metric.")
|
||||
.buildTime(false)
|
||||
.expectedValues(sortedListOfEvents())
|
||||
.deprecatedMetadata(DeprecatedMetadata.deprecateValues("Use `remove_credential` instead of `remove_totp`, and `update_credential` instead of `update_totp` and `update_password`.", "remove_totp", "update_totp", "update_password"))
|
||||
|
||||
@@ -16,7 +16,7 @@ public enum OptionCategory {
|
||||
VAULT("Vault", 100, ConfigSupportLevel.SUPPORTED),
|
||||
LOGGING("Logging", 110, ConfigSupportLevel.SUPPORTED),
|
||||
TRACING("Tracing", 111, ConfigSupportLevel.SUPPORTED),
|
||||
EVENTS("Events", 112, ConfigSupportLevel.PREVIEW),
|
||||
EVENTS("Events", 112, ConfigSupportLevel.SUPPORTED),
|
||||
TRUSTSTORE("Truststore", 115, ConfigSupportLevel.SUPPORTED),
|
||||
SECURITY("Security", 120, ConfigSupportLevel.SUPPORTED),
|
||||
EXPORT("Export", 130, ConfigSupportLevel.SUPPORTED),
|
||||
|
||||
@@ -190,7 +190,7 @@ public class HelpCommandDistTest {
|
||||
// normalize the output to prevent changes around the feature toggles or events to mark the output to differ
|
||||
String output = cliResult.getOutput()
|
||||
.replaceAll("((Disables|Enables) a set of one or more features. Possible values are: )[^.]{30,}", "$1<...>")
|
||||
.replaceAll("(create a metric. Possible values are:)[^.]{30,}.(Available|only|when|user|event|metrics|are|enabled.| )*", "$1<...>");
|
||||
.replaceAll("(create a metric.\\s+Possible values are:)[^.]{30,}.(Available|only|when|user|event|metrics|are|enabled.| )*", "$1<...>");
|
||||
|
||||
String osName = System.getProperty("os.name");
|
||||
if(osName.toLowerCase(Locale.ROOT).contains("windows")) {
|
||||
|
||||
@@ -266,18 +266,18 @@ Tracing:
|
||||
the 'tracing-resource-attributes' property. Default: keycloak. Available
|
||||
only when Tracing is enabled.
|
||||
|
||||
Events (Preview):
|
||||
Events:
|
||||
|
||||
--event-metrics-user-enabled <true|false>
|
||||
Preview: Create metrics based on user events. Default: false. Available only
|
||||
when metrics are enabled and feature user-event-metrics is enabled.
|
||||
Create metrics based on user events. Default: false. Available only when
|
||||
metrics are enabled and feature user-event-metrics is enabled.
|
||||
--event-metrics-user-events <events>
|
||||
Preview: Comma-separated list of events to be collected for user event
|
||||
metrics. Reduce the number of metrics. If empty or not set, all events
|
||||
create a metric. Possible values are:<...>
|
||||
Comma-separated list of events to be collected for user event metrics. This
|
||||
option can be used to reduce the number of metrics created as by default all
|
||||
user events create a metric. Possible values are:<...>
|
||||
--event-metrics-user-tags <tags>
|
||||
Preview: Comma-separated list of tags to be collected for user event metrics.
|
||||
By default only 'realm' is enabled to avoid a high metrics cardinality.
|
||||
Comma-separated list of tags to be collected for user event metrics. By
|
||||
default only 'realm' is enabled to avoid a high metrics cardinality.
|
||||
Possible values are: realm, idp, clientId. Default: realm. Available only
|
||||
when user event metrics are enabled.
|
||||
|
||||
|
||||
@@ -266,18 +266,18 @@ Tracing:
|
||||
the 'tracing-resource-attributes' property. Default: keycloak. Available
|
||||
only when Tracing is enabled.
|
||||
|
||||
Events (Preview):
|
||||
Events:
|
||||
|
||||
--event-metrics-user-enabled <true|false>
|
||||
Preview: Create metrics based on user events. Default: false. Available only
|
||||
when metrics are enabled and feature user-event-metrics is enabled.
|
||||
Create metrics based on user events. Default: false. Available only when
|
||||
metrics are enabled and feature user-event-metrics is enabled.
|
||||
--event-metrics-user-events <events>
|
||||
Preview: Comma-separated list of events to be collected for user event
|
||||
metrics. Reduce the number of metrics. If empty or not set, all events
|
||||
create a metric. Possible values are:<...>
|
||||
Comma-separated list of events to be collected for user event metrics. This
|
||||
option can be used to reduce the number of metrics created as by default all
|
||||
user events create a metric. Possible values are:<...>
|
||||
--event-metrics-user-tags <tags>
|
||||
Preview: Comma-separated list of tags to be collected for user event metrics.
|
||||
By default only 'realm' is enabled to avoid a high metrics cardinality.
|
||||
Comma-separated list of tags to be collected for user event metrics. By
|
||||
default only 'realm' is enabled to avoid a high metrics cardinality.
|
||||
Possible values are: realm, idp, clientId. Default: realm. Available only
|
||||
when user event metrics are enabled.
|
||||
|
||||
|
||||
@@ -473,18 +473,18 @@ Tracing:
|
||||
the 'tracing-resource-attributes' property. Default: keycloak. Available
|
||||
only when Tracing is enabled.
|
||||
|
||||
Events (Preview):
|
||||
Events:
|
||||
|
||||
--event-metrics-user-enabled <true|false>
|
||||
Preview: Create metrics based on user events. Default: false. Available only
|
||||
when metrics are enabled and feature user-event-metrics is enabled.
|
||||
Create metrics based on user events. Default: false. Available only when
|
||||
metrics are enabled and feature user-event-metrics is enabled.
|
||||
--event-metrics-user-events <events>
|
||||
Preview: Comma-separated list of events to be collected for user event
|
||||
metrics. Reduce the number of metrics. If empty or not set, all events
|
||||
create a metric. Possible values are:<...>
|
||||
Comma-separated list of events to be collected for user event metrics. This
|
||||
option can be used to reduce the number of metrics created as by default all
|
||||
user events create a metric. Possible values are:<...>
|
||||
--event-metrics-user-tags <tags>
|
||||
Preview: Comma-separated list of tags to be collected for user event metrics.
|
||||
By default only 'realm' is enabled to avoid a high metrics cardinality.
|
||||
Comma-separated list of tags to be collected for user event metrics. By
|
||||
default only 'realm' is enabled to avoid a high metrics cardinality.
|
||||
Possible values are: realm, idp, clientId. Default: realm. Available only
|
||||
when user event metrics are enabled.
|
||||
|
||||
|
||||
@@ -474,18 +474,18 @@ Tracing:
|
||||
the 'tracing-resource-attributes' property. Default: keycloak. Available
|
||||
only when Tracing is enabled.
|
||||
|
||||
Events (Preview):
|
||||
Events:
|
||||
|
||||
--event-metrics-user-enabled <true|false>
|
||||
Preview: Create metrics based on user events. Default: false. Available only
|
||||
when metrics are enabled and feature user-event-metrics is enabled.
|
||||
Create metrics based on user events. Default: false. Available only when
|
||||
metrics are enabled and feature user-event-metrics is enabled.
|
||||
--event-metrics-user-events <events>
|
||||
Preview: Comma-separated list of events to be collected for user event
|
||||
metrics. Reduce the number of metrics. If empty or not set, all events
|
||||
create a metric. Possible values are:<...>
|
||||
Comma-separated list of events to be collected for user event metrics. This
|
||||
option can be used to reduce the number of metrics created as by default all
|
||||
user events create a metric. Possible values are:<...>
|
||||
--event-metrics-user-tags <tags>
|
||||
Preview: Comma-separated list of tags to be collected for user event metrics.
|
||||
By default only 'realm' is enabled to avoid a high metrics cardinality.
|
||||
Comma-separated list of tags to be collected for user event metrics. By
|
||||
default only 'realm' is enabled to avoid a high metrics cardinality.
|
||||
Possible values are: realm, idp, clientId. Default: realm. Available only
|
||||
when user event metrics are enabled.
|
||||
|
||||
|
||||
@@ -412,15 +412,15 @@ Tracing:
|
||||
the 'tracing-resource-attributes' property. Default: keycloak. Available
|
||||
only when Tracing is enabled.
|
||||
|
||||
Events (Preview):
|
||||
Events:
|
||||
|
||||
--event-metrics-user-events <events>
|
||||
Preview: Comma-separated list of events to be collected for user event
|
||||
metrics. Reduce the number of metrics. If empty or not set, all events
|
||||
create a metric. Possible values are:<...>
|
||||
Comma-separated list of events to be collected for user event metrics. This
|
||||
option can be used to reduce the number of metrics created as by default all
|
||||
user events create a metric. Possible values are:<...>
|
||||
--event-metrics-user-tags <tags>
|
||||
Preview: Comma-separated list of tags to be collected for user event metrics.
|
||||
By default only 'realm' is enabled to avoid a high metrics cardinality.
|
||||
Comma-separated list of tags to be collected for user event metrics. By
|
||||
default only 'realm' is enabled to avoid a high metrics cardinality.
|
||||
Possible values are: realm, idp, clientId. Default: realm. Available only
|
||||
when user event metrics are enabled.
|
||||
|
||||
|
||||
@@ -473,18 +473,18 @@ Tracing:
|
||||
the 'tracing-resource-attributes' property. Default: keycloak. Available
|
||||
only when Tracing is enabled.
|
||||
|
||||
Events (Preview):
|
||||
Events:
|
||||
|
||||
--event-metrics-user-enabled <true|false>
|
||||
Preview: Create metrics based on user events. Default: false. Available only
|
||||
when metrics are enabled and feature user-event-metrics is enabled.
|
||||
Create metrics based on user events. Default: false. Available only when
|
||||
metrics are enabled and feature user-event-metrics is enabled.
|
||||
--event-metrics-user-events <events>
|
||||
Preview: Comma-separated list of events to be collected for user event
|
||||
metrics. Reduce the number of metrics. If empty or not set, all events
|
||||
create a metric. Possible values are:<...>
|
||||
Comma-separated list of events to be collected for user event metrics. This
|
||||
option can be used to reduce the number of metrics created as by default all
|
||||
user events create a metric. Possible values are:<...>
|
||||
--event-metrics-user-tags <tags>
|
||||
Preview: Comma-separated list of tags to be collected for user event metrics.
|
||||
By default only 'realm' is enabled to avoid a high metrics cardinality.
|
||||
Comma-separated list of tags to be collected for user event metrics. By
|
||||
default only 'realm' is enabled to avoid a high metrics cardinality.
|
||||
Possible values are: realm, idp, clientId. Default: realm. Available only
|
||||
when user event metrics are enabled.
|
||||
|
||||
|
||||
@@ -471,18 +471,18 @@ Tracing:
|
||||
the 'tracing-resource-attributes' property. Default: keycloak. Available
|
||||
only when Tracing is enabled.
|
||||
|
||||
Events (Preview):
|
||||
Events:
|
||||
|
||||
--event-metrics-user-enabled <true|false>
|
||||
Preview: Create metrics based on user events. Default: false. Available only
|
||||
when metrics are enabled and feature user-event-metrics is enabled.
|
||||
Create metrics based on user events. Default: false. Available only when
|
||||
metrics are enabled and feature user-event-metrics is enabled.
|
||||
--event-metrics-user-events <events>
|
||||
Preview: Comma-separated list of events to be collected for user event
|
||||
metrics. Reduce the number of metrics. If empty or not set, all events
|
||||
create a metric. Possible values are:<...>
|
||||
Comma-separated list of events to be collected for user event metrics. This
|
||||
option can be used to reduce the number of metrics created as by default all
|
||||
user events create a metric. Possible values are:<...>
|
||||
--event-metrics-user-tags <tags>
|
||||
Preview: Comma-separated list of tags to be collected for user event metrics.
|
||||
By default only 'realm' is enabled to avoid a high metrics cardinality.
|
||||
Comma-separated list of tags to be collected for user event metrics. By
|
||||
default only 'realm' is enabled to avoid a high metrics cardinality.
|
||||
Possible values are: realm, idp, clientId. Default: realm. Available only
|
||||
when user event metrics are enabled.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user