diff --git a/common/src/main/java/org/keycloak/common/Profile.java b/common/src/main/java/org/keycloak/common/Profile.java index 22121a16425..8396d31d13d 100755 --- a/common/src/main/java/org/keycloak/common/Profile.java +++ b/common/src/main/java/org/keycloak/common/Profile.java @@ -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), diff --git a/docs/guides/observability/event-metrics.adoc b/docs/guides/observability/event-metrics.adoc index f6497a23251..d510dde0428 100644 --- a/docs/guides/observability/event-metrics.adoc +++ b/docs/guides/observability/event-metrics.adoc @@ -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`. diff --git a/quarkus/config-api/src/main/java/org/keycloak/config/EventOptions.java b/quarkus/config-api/src/main/java/org/keycloak/config/EventOptions.java index ac34b27926a..02f4c8c1b15 100644 --- a/quarkus/config-api/src/main/java/org/keycloak/config/EventOptions.java +++ b/quarkus/config-api/src/main/java/org/keycloak/config/EventOptions.java @@ -21,7 +21,7 @@ public class EventOptions { public static final Option> 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")) diff --git a/quarkus/config-api/src/main/java/org/keycloak/config/OptionCategory.java b/quarkus/config-api/src/main/java/org/keycloak/config/OptionCategory.java index 27998ebc17f..1dea5840507 100644 --- a/quarkus/config-api/src/main/java/org/keycloak/config/OptionCategory.java +++ b/quarkus/config-api/src/main/java/org/keycloak/config/OptionCategory.java @@ -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), diff --git a/quarkus/tests/integration/src/test/java/org/keycloak/it/cli/dist/HelpCommandDistTest.java b/quarkus/tests/integration/src/test/java/org/keycloak/it/cli/dist/HelpCommandDistTest.java index 06dd04d4aba..4f0ba712d80 100644 --- a/quarkus/tests/integration/src/test/java/org/keycloak/it/cli/dist/HelpCommandDistTest.java +++ b/quarkus/tests/integration/src/test/java/org/keycloak/it/cli/dist/HelpCommandDistTest.java @@ -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")) { diff --git a/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testExportHelpAll.approved.txt b/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testExportHelpAll.approved.txt index d821e7b85a3..f74bdc91c22 100644 --- a/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testExportHelpAll.approved.txt +++ b/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testExportHelpAll.approved.txt @@ -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 - 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 - 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 - 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. diff --git a/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testImportHelpAll.approved.txt b/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testImportHelpAll.approved.txt index d0d4fd95e8d..6b4f5410cdb 100644 --- a/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testImportHelpAll.approved.txt +++ b/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testImportHelpAll.approved.txt @@ -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 - 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 - 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 - 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. diff --git a/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testStartDevHelpAll.approved.txt b/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testStartDevHelpAll.approved.txt index 4ec3601bf2b..ff3195eb0b0 100644 --- a/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testStartDevHelpAll.approved.txt +++ b/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testStartDevHelpAll.approved.txt @@ -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 - 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 - 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 - 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. diff --git a/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testStartHelpAll.approved.txt b/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testStartHelpAll.approved.txt index f5507e23a05..15ed2313ed3 100644 --- a/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testStartHelpAll.approved.txt +++ b/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testStartHelpAll.approved.txt @@ -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 - 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 - 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 - 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. diff --git a/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testStartOptimizedHelpAll.approved.txt b/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testStartOptimizedHelpAll.approved.txt index 7e907123128..0c34b035d75 100644 --- a/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testStartOptimizedHelpAll.approved.txt +++ b/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testStartOptimizedHelpAll.approved.txt @@ -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 - 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 - 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. diff --git a/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testUpdateCompatibilityCheckHelpAll.approved.txt b/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testUpdateCompatibilityCheckHelpAll.approved.txt index de59831f13a..39329e7796e 100644 --- a/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testUpdateCompatibilityCheckHelpAll.approved.txt +++ b/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testUpdateCompatibilityCheckHelpAll.approved.txt @@ -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 - 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 - 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 - 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. diff --git a/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testUpdateCompatibilityMetadataHelpAll.approved.txt b/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testUpdateCompatibilityMetadataHelpAll.approved.txt index 268d22c11f4..65b34c8ec49 100644 --- a/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testUpdateCompatibilityMetadataHelpAll.approved.txt +++ b/quarkus/tests/integration/src/test/resources/org/keycloak/it/cli/dist/approvals/cli/help/HelpCommandDistTest.testUpdateCompatibilityMetadataHelpAll.approved.txt @@ -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 - 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 - 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 - 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.