通过指标洞察

收集指标以洞察 Keycloak 运行实例的状态和活动。

Keycloak 内置了对指标的支持。本指南介绍如何启用和配置服务器指标。

启用指标

可以使用构建时选项 metrics-enabled 来启用指标

bin/kc.[sh|bat] start --metrics-enabled=true

查询指标

Keycloak 在管理接口的以下端点公开指标:

  • /metrics

有关管理接口的更多信息,请参阅配置管理接口。端点的响应使用 application/openmetrics-text 内容类型,并且基于 Prometheus (OpenMetrics) 文本格式。以下代码段是响应示例

# HELP base_gc_total Displays the total number of collections that have occurred. This attribute lists -1 if the collection count is undefined for this collector.
# TYPE base_gc_total counter
base_gc_total{name="G1 Young Generation",} 14.0
# HELP jvm_memory_usage_after_gc_percent The percentage of long-lived heap pool used after the last GC event, in the range [0..1]
# TYPE jvm_memory_usage_after_gc_percent gauge
jvm_memory_usage_after_gc_percent{area="heap",pool="long-lived",} 0.0
# HELP jvm_threads_peak_threads The peak live thread count since the Java virtual machine started or peak was reset
# TYPE jvm_threads_peak_threads gauge
jvm_threads_peak_threads 113.0
# HELP agroal_active_count Number of active connections. These connections are in use and not available to be acquired.
# TYPE agroal_active_count gauge
agroal_active_count{datasource="default",} 0.0
# HELP base_memory_maxHeap_bytes Displays the maximum amount of memory, in bytes, that can be used for memory management.
# TYPE base_memory_maxHeap_bytes gauge
base_memory_maxHeap_bytes 1.6781410304E10
# HELP process_start_time_seconds Start time of the process since unix epoch.
# TYPE process_start_time_seconds gauge
process_start_time_seconds 1.675188449054E9
# HELP system_load_average_1m The sum of the number of runnable entities queued to available processors and the number of runnable entities running on the available processors averaged over a period of time
# TYPE system_load_average_1m gauge
system_load_average_1m 4.005859375

...

下一步

阅读指南 使用服务级别指标监控性能使用指标进行故障排除,了解如何使用指标。

相关选项

cache-metrics-histograms-enabled

为嵌入式缓存的指标启用直方图。

CLI: --cache-metrics-histograms-enabled
Env: KC_CACHE_METRICS_HISTOGRAMS_ENABLED

仅在启用指标时可用

true, false (默认)

http-metrics-histograms-enabled

为 HTTP 服务器请求的持续时间启用具有默认桶的直方图。

CLI: --http-metrics-histograms-enabled
Env: KC_HTTP_METRICS_HISTOGRAMS_ENABLED

仅在启用指标时可用

true, false (默认)

http-metrics-slos

HTTP 服务器请求的服务级别目标。

使用此选项代替默认直方图,或与默认直方图结合使用以添加额外的桶。指定以逗号分隔的毫秒值列表。例如,桶从 5 毫秒到 10 秒:5,10,25,50,250,500,1000,2500,5000,10000

CLI: --http-metrics-slos
Env: KC_HTTP_METRICS_SLOS

仅在启用指标时可用

metrics-enabled

是否服务器应公开指标。

如果启用,指标可在 /metrics 端点获得。

CLI: --metrics-enabled
Env: KC_METRICS_ENABLED

true, false (默认)

在此页