SuperAPI AI 工具集

triaging-live-sql-activity

数据与分析

查看项目

更新于 10-15 19:50

技能介绍

用途:诊断 CockroachDB 集群的实时性能问题,识别当前长时间运行的查询、繁忙会话和活跃事务。适用于用户报告集群变慢、节点 CPU 或内存偏高、需要找出失控查询或卡住事务、定位消耗资源的应用或用户、以及无法访问 DB Console 时的即时排查。

主要能力:使用 SHOW CLUSTER STATEMENTS、SHOW CLUSTER SESSIONS 和 crdb_internal.cluster_transactions 等纯 SQL 接口。可识别运行超过阈值的查询、按应用/用户/客户端地址下钻、检查事务重试次数以发现争用,并可选地取消问题查询或会话。

使用方式:需要连接到任意 CockroachDB 节点;集群级可见性需 VIEWACTIVITY 或 VIEWACTIVITYREDACTED 权限(后者会脱敏其他用户查询中的常量,推荐用于隐私场景),否则仅能查看自己的会话。取消操作需 CANCELQUERY 或 CANCELSESSION 权限。可用 SHOW SYSTEM GRANTS FOR <username>; 检查权限。诊断查询均为只读且可安全用于生产。取消命令为 CANCEL QUERY '<query_id>'; 和 CANCEL SESSION '<session_id>';,执行前须确认目标确为失控或卡住的工作负载。

限制:仅反映当前状态,不用于历史趋势分析(历史分析应使用 DB Console 或 Prometheus 指标)。取消操作会中断用户工作,属可选且具破坏性。crdb_internal.cluster_transactions 在高事务量时可能较慢,应添加过滤条件。始终建议加 LIMIT 子句。时间阈值可按工作负载调整,快速 OLTP 可用 30 秒。使用 VIEWACTIVITYREDACTED 时查询文本可能显示为 <hidden>,属预期行为。