跳转到内容
Telemetry
SQL查询示例集合

数据库可靠性 SQL 查询示例

分析慢速查询指纹、连接池压力、事务回滚、锁争用、复制延迟以及安全应用程序和数据库相邻事件的迁移结果。

共同事件契约

使这些查询可重用的字段

  • timestamp_utc、服务、database_name、环境和发布
  • query_fingerprint、transaction_id、pool_name、consumer_name 和 migration_id
  • duration_ms、wait_ms、lag_seconds、状态、error_type 和容量字段

SQL 之前的定义

查询无法为您做出的决定

  1. 1在收集之前规范化查询操作,而不是存储原始 SQL 和参数。
  2. 2单独的客户端池等待、数据库执行、锁定等待和下游复制延迟。
  3. 3将数据库症状与应用程序服务、发布和用户可见的工作流程联系起来。

推荐顺序

先建立检测,然后诊断

分析模式

让结果解释决定

检测客户端边界

记录安全操作指纹、服务、最终状态以及应用程序接收数据库结果的阶段持续时间。

将压力与影响配对

当调用者等待、超时、回滚或用户可见工作流失败时,满池或临时锁变得可操作。

保留推出上下文

保留发布、迁移、副本和区域字段,以便可以将回归隔离到引入它的部署边界。

完整的查询示例

复制查询,然后验证假设

入门database_query_events

通过指纹查找缓慢的数据库查询

按慢查询率、平均持续时间和最差观察持续时间对规范化数据库操作进行排名,无需存储原始 SQL 或参数。

哪些数据库操作始终慢到足以进行调查?

查看 SQL 和结果
入门database_pool_samples

测量数据库连接池饱和度

按应用程序服务测量平均池利用率、排队获取等待、超时和空闲容量。

哪些应用程序池使调用者等待数据库连接?

查看 SQL 和结果
中级database_transaction_events

计算数据库事务回滚率

按服务比较已提交和回滚的事务,同时保留错误类别、持续时间和受影响的帐户。

哪些服务回滚了异常份额的数据库事务?

查看 SQL 和结果
中级database_lock_wait_events

查找数据库锁等待和死锁

按事件计数、等待持续时间、未解决的锁定和检测到的死锁对阻塞的数据库操作指纹进行排名。

哪些数据库操作会造成最严重的锁争用?

查看 SQL 和结果
入门database_replication_samples

测量数据库复制和 CDC 延迟

通过平均延迟、最差延迟、落后字节数和过时采样率来比较副本和更改数据捕获消费者。

哪些副本或 CDC 使用者落后于源数据库?

查看 SQL 和结果
入门database_migration_events

按版本跟踪数据库迁移失败

在完成部署之前,按应用程序版本比较数据库迁移的成功、失败、回滚和持续时间。

哪些版本包含失败或回滚的数据库迁移?

查看 SQL 和结果
中级database_request_query_events

检测 N+1 数据库查询模式

检测在一个应用程序请求内多次重复的数据库指纹。

哪些路由和查询组合在请求中重复可疑?

查看 SQL 和结果
入门database_query_events

按总时间影响对数据库查询进行排名

结合调用量和延迟来查找消耗最多应用程序时间的数据库指纹。

哪个数据库操作消耗的累积请求时间最多?

查看 SQL 和结果
中级database_transaction_events

测量长时间运行的数据库事务

查找具有长尾、回滚和开放持续时间过长的应用程序事务类。

哪些应用程序事务类别保持开放时间最长?

查看 SQL 和结果
入门database_error_events

通过 SQLSTATE 和版本分析数据库错误

按可移植 SQLSTATE 类、应用程序操作和发布对数据库故障进行分组。

应用程序发布后哪些数据库错误类别增加了?

查看 SQL 和结果
中级database_connection_events

测量数据库连接超时和改动

按服务和区域比较连接打开、关闭、获取超时以及受影响的请求。

哪些服务和区域显示出不健康的数据库连接流失?

查看 SQL 和结果
高级database_replica_read_events

按区域测量数据库副本的陈旧程度

按区域比较应用程序观察到的副本重播延迟、陈旧读取和故障转移结果。

哪些副本区域正在提供过时或失败的读取?

查看 SQL 和结果

在阈值之前调整事件契约

保留分析模式,但根据您自己的事件验证表名称、字段类型、业务定义、时间窗口和最小量规则。每个已发布的查询也会针对具有固定引擎的空类型表进行规划和执行。