4.4. PromQL 查询
这些是在 Kubernetes 环境中创建的查询示例,用于将 Prometheus 用作监控工具。它们作为蓝图提供,您需要针对不同的运行时或监控环境进行调整。
对于生产环境,您可能想要将这些查询或子查询替换为 记录规则,以确保它们没有使用太多的资源用于警报或实时仪表板。
4.4.1. 可用性 复制链接链接已复制到粘贴板!
如果红帽构建的 Keycloak 实例可用并响应 Prometheus scrape 请求,则此指标将具有至少一个值,如果服务停机或无法访问,则为 0。
然后,使用 Grafana 等工具显示 30 天时间范围,并可以计算该时间窗中指标的平均值。
在 Grafana 中,您可以将 30d:15s
替换为 $range:$间隔
到为仪表板选择的时间范围中的计算可用性 SLI。
4.4.2. 身份验证请求的延迟 复制链接链接已复制到粘贴板!
此 Prometheus 查询计算在 0.25 秒内完成的身份验证请求的百分比,相对于红帽构建的 Keycloak 端点的所有身份验证请求,并在过去 30 天内针对特定的命名空间和 pod。
这个示例要求红帽构建 Keycloak 配置 http-metrics-slos
的值 250
,表示应记录超过 250 ms 的请求的存储桶。将 http-metrics-histograms-enabled
设置为 true
会捕获额外的存储桶,这有助于进行性能故障排除。
在 Grafana 中,您可以在为仪表板选择的时间范围中将 30d
替换为 $_range
到 compute latency SLI。
4.4.3. 身份验证请求的错误 复制链接链接已复制到粘贴板!
此 Prometheus 查询计算过去 30 天内返回所有身份验证请求的服务器端错误的身份验证请求百分比。
在 Grafana 中,您可以在为仪表板选择的时间范围中将 30d
替换为 $_range
到 compute 错误 SLI。