一文看懂如何做好 SQL 质量监控

作者:顾汉杰(执少)

背景

在 SLS 中,用户可以通过 SQL 对日志数据(结构化、半结构化、无结构化)进行查询和分析。随着用户对 SQL 使用程度的不断加深,越来越多的用户希望了解自己使用 SQL 分析时的服务反馈(如请求量、成功率、数据量等等),以便对数据和分析行为进行精细管理或优化治理。

“现在我这个 Project 的 SQL 并发是多少?”

“奇怪,我 SQL 请求并不多,为什么会有这么多 SQL 请求,是哪个业务线(Logstore)用的?”

“我想了解我在 SLS 中使用 SQL 分析的整体情况,请问有什么监控数据或日志可以查看?

这些都是来自 SLS 真实用户的声音,可以看出用户对于自身 SQL 分析行为的监控和质量管理有着较强的需求。

为了提升用户 SLS SQL 的使用体验,我们提供了用户级 SQL 质量监控功能,希望能够帮助用户直观、清晰地了解自身使用 SQL 的情况。

通过 CloudLens 开启使用

我们将此功能集成于 CloudLens for SLS [ 1] 中,用户可以轻松开启该服务,并对 SQL 质量进行监控和管理。除此之外,CloudLens for SLS 还帮助您监控和管理所有 SLS 相关资源(包括采集接入、读写操作、作业、配额、SQL、计费等等),以提升您对日志服务资产的管理效率、快速了解其消耗情况。

图片

服务开启后按照引导开通全局日志,数据同步可能需要一定时间(首次开启大约 10min),请耐心等待,随后在「报表中心 / SQL 质量监控」中即可查看完整 SQL 质量监控。

图片

功能总览

总体上,我们为用户提供了 5 个维度的 SQL 质量监控:

  • SQL 健康分和使用报告

    主要展示用户整体使用 SQL 的健康度和总体情况(包含一些很有意思的指标)。

  • SQL 服务指标

    主要描述用户使用 SQL 时的整体服务情况,以便用户对服务现状有整体了解。

  • SQL 运行指标

    主要描述 SQL 内部运行时的指标,以便用户了解自身 SQL 的实际处理表现和吞吐。

  • SQL Pattern

    主要刻画用户提交的 SQL 范式(根据 SLS 原生 sql parse 解析并去除参数差异),以便用户识别出具有相同特征的分析业务,做相关管理和监控。

  • SQL 质量优化和建议

    主要描述 SQL 请求的服务质量,包括用户侧错误,给出相关建议,推荐用户进行优化改善。

关于指标的说明:

  • 所有指标以分钟为粒度,根据以下 4 个基础字段(Category 除外)作为分组维度,聚合分析计算得出。
  • 所有指标目前不包含 JDBC 接入和 ScheduledSQL 的流量请求。
  • 所有指标为当前状态,随产品形态和系统发展,未来可能增减指标,以帮助用户更明确的反馈服务情况。
  • 所有指标的解释权归 SLS 所有。

SQL 健康分和使用报告

通过「SQL 健康分」,反馈用户使用 SLS SQL 服务的总体质量,进而驱动用户去做服务治理和质量优化。

UserStory: 很多时候,用户在使用 SQL 的过程中,常常由于 AK 失效/授权过期/索引未建立 / SQL 语法错误等各种客观原因,而发起了大量的无效 SQL 请求,不仅占用了 SQL 请求并发配额,对于用户自身服务器资源也是无效的消耗。通过 SQL 健康分,用户可以一目了然了解自己使用 SLS SQL 的健康情况,并进行针对的优化或者治理。

图片

同时,我们提供了一份用户最近的「SQL 使用报告」。在这里,用户可以从全局视角看到当前账户下使用 SQL 的活跃 Project、活跃 Logstore、SQL 请求量、常用请求代理、SQL 整体表现(包括延时、数据量、数据行数、返回行数、预估并发量等)

图片

SQL 服务指标

通过「SQL 服务指标」,用户可以了解自己使用 SQL 时更详细的服务质量,包括每分钟的请求 PV 数、平均延时、请求代理分布以及延时四分位的分布水平。

通过这些时序图的趋势展示,用户可以非常直观地了解自己在哪些时段出现过 SQL 请求量飙升或延时毛刺,以便辅助分析业务问题。将时间线拉长到 1 天,用户也可以了解到自己业务高峰一般处在 1 天中的什么时刻,延时毛刺是否与请求量相关等等。

图片

SQL 运行明细指标

通过「SQL 运行明细指标」,用户可以更进一步地了解当前 SQL 执行情况,包括并发请求(预估)、各阶段平均延时、每分钟的处理数据量和处理行数,以及细化到 Logstore 的 SQL 热力分布情况等等。

图片

关于并发请求(预估)和各阶段平均延时的说明

首先,回答大家一个问题:为什么要有 SQL 并发控制?

SLS SQL 执行涉及到分布式计算,计算过程消耗较多算力资源,而我们的服务是面向云上多租用户的,为了保证资源的公平使用,我们为每个租户设置了合理的并发额度。

每个用户会配置 1 个并发队列和 1 个排队队列,当用户提交一条 SQL 时,会进行并发控制,若并发队列有空余,则直接运行;若并发队列满,则排队等待;若排队队列再满,则并发超限报错。

图片

UserStory: 有些用户当并发请求过高时,查询延时会有明显增高,这又是怎么回事呢?

其实,了解了上面的并发控制模型,就不难理解这一点:当一条 SQL 提交时,如果并发队列满,该 SQL 将在排队队列中等待,直到并发队列中最短的一条 SQL 执行完才能腾出空位来,这个时间间隔称为“QueuedTime(排队时间)”,所以,当出现排队时,SQL 端到端的总延时可能会增高,这其中包含了队列中等待在途 Query 完成的排队时间。

图片

因此,为了让大家在日常使用过程中,更合理地使用并发,以及遇到并发超限时进行合理地优化处理,我们提供了并发请求(预估)和各阶段平均延时指标以供用户参考。

SQL Pattern 分析

我们提供「SQL Pattern分析」视图,将 SQL 中的变量参数进行了泛化,提炼出 SQL 语义特征,用户可以据此了解哪些特征 SQL 请求占比特多、执行特慢、处理量特大等等。

UserStory: 很多时候,用户提交的 SQL 是通过程序化方式以模板+参数的方式渲染生成最终 SQL 语句,有可能多条不同的 SQL 对应的其实是同一个业务,为了让用户能更加洞悉业务特征,快速识别出存在问题或异常的业务 SQL。

String sql = String.format("* | SELECT sum(price) from log where category = %s", category_id);
// request sql to sls...

图片

质量优化和建议

用户可以通过「质量优化和建议」了解到自己使用 SQL 的整体请求成功/失败占比、错误码的分布,我们还会给出具体的优化建议。

UserStory: 很多时候,由于企业组织结构不同,在 SLS 上的资源可能分布在不同的团队,有可能运维部门负责资源的创建(如 Project/Logstore/索引),而数据部门负责数据的使用(如发起 SQL 请求),业务上的快速迭代和变化常常会导致某个 Logstore 已不存在、AK 失效、权限不足等,而数据部门却可能还一直在持续地发起大量的 SQL 请求,造成客户大量无效资源的消耗。这种情况下,各部门往往缺乏一个全局视角了解资源的整体使用情况和错误占比,我们通过优化建议可以让用户从全局视角了解到最需要优化和治理的方面,帮助提效。

图片

最后,别忘了,以上所有 SQL 质量指标和视图还可以通过筛选 Project 和 Logstore 来实现不同维度的细化分析,希望您使用愉快并对您有用。

图片

相关链接:

[1] CloudLens for SLS

https://sls.console.aliyun.com/lognext/app/lens/sls?resource=/instancemenuoverview/dashboard/sql

相关推荐

推荐一款好用的刷题工具

为了帮助正在准备求职季的开发者提升备战效率,阿里云特别推出“通义灵码陪你备战求职季”活动,精心挑选百道历史校招技术面试/笔试题,借助通义灵码智能问答、代码智能生成、代码优化等核心功能,帮助开发者更加准确地了解程序员职业所需的核心技能,加强对问题解决思维和解题能力的练习。

阿里巴巴云原生的博客 1381

通义灵码 Visual Studio 下载安装指南(附安装包)

本安装步骤适用于 Windows 10 及以上操作系统中安装和使用通义灵码。

阿里巴巴云原生的博客 4436

稳定复现超 70% 的缺陷,报警到自动修复的 Agent 流水线实践

本文将分享我们在 PolarDB-X 团队做的一些工程实践:让 Agent 从一条报警或工单出发,自主完成排查、复现、修复和验证,再把结果交给研发评审。

阿里巴巴云原生的博客 86

从“自证清白”到“因果链条”:智能体如何重塑运维排障效率

STAROps 做全域关联分析,把范围从「五个团队依次自证清白」收拢到一条具体链路;证据指向对象存储后,OSS Agent 接手,基于真实配置、访问日志和用量数据往下挖,给出根因和支撑它的证据链。你面对的始终是一个对话框:路由归它管,说清现象、拍板方案归你。

阿里巴巴云原生的博客 118

TechTalk丨从能买奶茶到能进企业,Agent 绕不开同一组问题

史明伟所在的 Alibaba Cloud AgentCore 是企业级 Agent 构建和治理平台,为 Agent 在业务场景下的规模化落地提供基础设施,所以这场对话,他和 Datawhale 主持人从个人助理一路聊到企业 Agent:权限该怎么一步步放开?进了企业,账号打通、数据权限、沙箱隔离又会带来哪些新问题?没有强技术团队的企业,该从哪里起步?

阿里巴巴云原生的博客 183

AgentCore + Codex 构建生产级 Agent 的原理与实践

本文章演示 AgentCore[1]的自定义代码/镜像能力,目的是展示如何基于自定义的 Harness 框架(Codex) 结合 AgentCore 提供的身份、模型、工具、技能、凭证 、观测评估等能力实现一个端到端的 Agent 应用,内容包含两个部分,技术方案和实践教程,文末附相关源码和本次的测试数据,可以根据需要自行查阅。

阿里巴巴云原生的博客 187

让复杂任务由团队完成:阿里云 AgentCore 多 Agent 协作架构及实践

Alibaba Cloud AgentCore 以身份、通信、团队和任务为基础,让专业 Agent 与人类成员共同参与业务协作。企业可以按职责组合知识、工具、Skill 和模型,用任务系统持续追踪工作,再结合 AgentLoop 评估效果、优化配置。

阿里巴巴云原生的博客 328

易点天下:AI 驱动 IT 运维组织提效的实践

易点天下作为一家专注品牌全球化的营销科技公司,由智能营销、全域增长、智能变现三大引擎驱动。公司旗下拥有“整合营销服务”与“广告平台业务”两大业务线。

阿里巴巴云原生的博客 300

阿里云可观测 2026 年 10 月产品动态

阿里云可观测 2026 年 10 月产品动态

阿里巴巴云原生的博客 196

用 Nacos 3.3.0 ARD 让 Agent 按任务发现工具和 Skill

如今,工作中用 Agent 帮忙已经越来越常见。研发同学用 Coding Agent 写代码、补测试、排查问题,业务同学用 Work Agent 整理资料、分析表格、制作演示文稿。不少过去需要自己一步步操作的事情,现在可以把需求交给 Agent,让它协助完成。

阿里巴巴云原生的博客 313

HiRoute 新版本发布:结合自己的真实工作选择最佳模型

HiRoute[1]是一个开源、运行在本地的 Agent 智能路由引擎。你继续用 Codex、Claude Code、Qoder、Pi、OpenCode、Hermes、DeepSeek Harness 等熟悉的 Agent,由 HiRoute 判断每一步交给哪个模型。

阿里巴巴云原生的博客 384

用户说 App“下不了单”:用 Session Replay 看清流程卡在哪一步

Session Replay(会话回放)将采集到的页面变化重建为可回看的过程。研发可以沿着这次会话,查看操作前后的界面变化,先确认流程停在了哪里,再结合当时的事件、日志和代码检查原因。

阿里巴巴云原生的博客 55

欢迎报名丨Alibaba Cloud AgentCore 企业智能体构建与治理八城巡回沙龙 · 杭州站开启

欢迎报名丨Alibaba Cloud AgentCore 企业智能体构建与治理八城巡回沙龙 · 杭州站开启

阿里巴巴云原生的博客 138

运维走出控制台:阿里云 AgentCore AI Native 运维实践

UModel 让现场能够被关联,运维数字员工让经验能够被调用,AgentCore Team 让分析能够协作,AgentLoop 让质量能够被检验。这些建设共同服务于一件事:让团队对系统的理解,成为每个人处理问题时都能接上的能力。

阿里巴巴云原生的博客 300

从长程 Agent 到 Super-agent,解锁更多场景

Deepseek Harness 提升了架构的透明度,但也带来了工程上的复杂度。这次开源的dsh-superagent-prototype,是对 Agent “连续实体”能力的工程拆解。

阿里巴巴云原生的博客 235

排查提效 50%:淘大集新核心系统的观测护航之路

供应链运维,缺的不是更多机器,是“一条能把指标、日志、链路串起来的线”。阿里云 ARMS+SLS+云监控2.0+STAROps 重构观测底座。

阿里巴巴云原生的博客 147

概率、插座与 5000 个爱因斯坦:专访阿里云研发副总裁周琦

这次访谈发生在 2026 年云栖大会之后。大会期间,阿里云发布了智能体构建和治理平台 AgentCore,将企业级 Agent 基础设施进一步标准化和托管化。

阿里巴巴云原生的博客 152

Agent 数据飞轮平台的选型和实践

用统一标准判断修改效果,积累覆盖不同路径的测试样本,沿执行记录排查失败,并将典型问题纳入后续回归。而这也是宙斯接入 AgentLoop 要解决的问题。

阿里巴巴云原生的博客 28

Durable Agent 详解:如何让 Agent 在云端长期稳定运行

本文使用一个具体的用户任务示例“向五位客户发送通知邮件”,解释为什么保存聊天记录还不够,再以 AgentScope 构建的 Agent 为例,展开任务状态、持久提交和故障恢复的通用设计,最后结合 Alibaba Cloud AgentCore 已有的 Harness 托管与节点恢复能力,讨论共享状态、可靠调度及 Brain / Hands 分离如何支撑更完整的长期托管服务。

阿里巴巴云原生的博客 335

Qoder × AgentLoop:智能体规模化应用,敏感数据保护如何跟上?

智能体观测与优化平台 AgentLoop 持续分析已采集的 Qoder 审计日志,将发现的风险线索关联到具体会话、工具调用、成员和环境,帮助安全团队回查任务过程、明确需要整改的环节,并复查处理效果。

阿里巴巴云原生的博客 289

完整还原已经服务千家企业的 AIOps Agent 的评测和调优实践

阿里云 STAROps 是一个生产运维 Agent,通过连接多域数据、运维工具与专家经验,从被动响应走向智能自治,7×24 保障业务连续、稳定运行。本文将分享 STAROps 的评测和调优实践。

阿里巴巴云原生的博客 199

阿里云云原生四项 AI 应用工程化实荣获“鼎新杯”优秀案例

第五届“鼎新杯”由中国通信标准化协会主办、中国信息通信研究院承办,自2026年05月正式启动,历时近 5 个月,聚焦国内政企数智化转型领域的创新成果,旨在为行业提供可复制、可推广的实践参考。

阿里巴巴云原生的博客 323

交付周期从 51 天缩短到 14 天,多 Agent 协作产品⾃进化背后的组织重构

本⽂结合这段实践,介绍评测如何驱动产品持续进化、⼈机协作的边界如何设定,以及团队如何通过统⼀⽬标、结果标准和责任分⼯,减少跨岗位交接,降低沟通损耗,把技术能⼒转化为实际交付效果。

阿里巴巴云原生的博客 327

从部署上线到运维优化:STAROps 与 ROS Agent 的资源运维自动化实践

STAROps 数字员工提供统一的运维对话入口,结合日志、指标、告警等信息理解问题,并通过 alibabacloud-ros-agent 技能,将基础设施规划和变更任务委派给 ROS Agent。

阿里巴巴云原生的博客 130

车企数据隐私保护必修课:如何用 SLS mask 守住日志中的敏感信息

阿里云日志服务 SLS 的 mask 函数可在采集或写入阶段替换匹配的敏感值,同时保留业务状态与调用链,并结合访问控制和保留期限管理减少暴露。下文通过车辆与车主服务、海外联网订阅、智能座舱交互三类业务中的四组日志,介绍规则选择与脱敏效果。

阿里巴巴云原生的博客 111

切换模型会损失缓存,智能路由还省钱吗?

智能路由会把不同的工作交给不同的模型。很多人随之会问:模型一换,之前积累的缓存就用不上了,这笔损失会不会把省下的钱又花回去?

阿里巴巴云原生的博客 209

LiteLLM 半年两度被投毒,大模型的“钥匙串”该放在哪里?

开源 Higress 把扩展代码关进 Wasm 沙箱,把发布链路锁成不可变;Higress 企业版再把凭证、供应链和防护交给平台托管。选哪一种,取决于你的团队想把精力花在哪里。想先试试托管形态的话,Serverless 标准版 0 元起步,不用先付实例费。

阿里巴巴云原生的博客 318

用 Kimi K3.1 Pro 重新介绍 AgentCore

今天凌晨 Kimi 发布 K3.1 Pro,在前端页面、Three.js 交互场景有明显提升。本文使用 Qoder 上提供的 K3.1Pro 模型,设计并排版了介绍 AgentCore 的全新方式。

阿里巴巴云原生的博客 13

从 Jev 范式决策模型接入,到参与 Team 协作的完整实践

本文将以一个工单分诊助手为例,把开发、打包和上线的过程串起来:用 AgentScope Java 与百炼决策模型(国内网络无法使用 Jev)实现分诊,通过代码包部署到阿里云 AgentCore[1],再验证普通调用和流式调用。文章最后,再看这个助手如何加入 Team,参与任务分工与报告审核。

阿里巴巴云原生的博客 340

MCP 服务无状态,任务状态存哪?RocketMQ LiteTopic 给每个任务一本账

AI Agent 调用一个工具,有时几百毫秒就能返回,有时却要运行好几分钟——比如检索一大批资料、生成一段长内容,或执行一次批处理。让请求一直挂着等结果,会长期占用连接和资源,也很难支撑大规模并发。

阿里巴巴云原生的博客 296
上一篇: 对话| 阿里云大降价后,再谈“降本增效”
下一篇: 嘿!AI 编码新玩法上线!
阿里云云原生
阿里云云原生 企业官方账号 企业官方账号
博客等级 码龄8年 1万+粉丝 3147原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值