微信扫码
添加专属顾问
我要投稿
AutoTracing 在 v6.5 中对 SQL 命令的解析进行了增强,主要包括以下两点:
这些能力的增强,能够让 DeepFlow 的下游消费者获取到更丰富的数据,更好的解决流量回放、数据库审计等方面的痛点。
在某运营商客户中,测试团队希望使用 DeepFlow 的 SQL 调用日志用于回放测试。以往该团队使用 APM 来实现此目的,但受限于插桩的困难,测试覆盖度非常低。DeepFlow 使用 eBPF 零侵扰采集的 SQL 调用日志能够非常好的解决这个痛点。
然而,该客户的业务中绝大多数使用了预编译 SQL 命令模式。在以往的版本中,DeepFlow 仅会采集类似下面这样含有 ?
参数的 COM_STMT_PREPARE
预编译命令:
SELECT * FROM `resource_event` WHERE domain = ? AND sub_domain = ?
在 v6.5 中,DeepFlow 支持了采集与预编译命令对应的 COM_STMT_EXECUTE
命令中的参数值。例如,上面的预编译语句中有 2 个参数,他们的值会使用 ,
拼接后赋值给 request_resource
:
476db5ae-a5c6-5b0b-84ce-b29dcf3ee76d , 1
更详细的说明,请参考 DeepFlow 文档[1]。
注意:当开启 MySQL 脱敏时,COM_STMT_EXECUTE
中的参数值将不会被解析和传输。
感谢 chluknight@ChinaMobile
的 FR #6798[2]。在中国移动,DeepFlow 的零侵扰调用日志为 SQL 审计系统提供数据。安全团队希望能在此前已有的能力基础上支持数据库登录命令、设置当前数据库命令的采集能力,以使得安全审计能力更为完善。
当客户端发送如下第一行所示的 MySQL 登录命令时,deepflow-agent 会采集并解析,并将类似如下第二行的内容赋值到调用日志的 request_resource
字段中:
Login Request user=cmp_operation
Login username: cmp_operation
当客户端发送如下切换数据库的命令时,deepflow-agent 也会采集并将整体语句赋值到调用日志的 request_resource
字段中:
use `cmp_operation`
新增的这两个能力对数据库审计场景意义重大。
DeepFlow 是云杉网络开发的一款可观测性产品,旨在为复杂的云原生及 AI 应用提供深度可观测性。DeepFlow 基于 eBPF
实现了应用性能指标、分布式追踪、持续性能剖析等观测信号的零侵扰(Zero Code
)采集,并结合智能标签(SmartEncoding
)技术实现了所有观测信号的全栈(Full Stack
)关联和高效存取。使用 DeepFlow,可以让云原生及 AI 应用自动具有深度可观测性,从而消除开发者不断插桩的沉重负担,并为 DevOps/SRE 团队提供从代码到基础设施的监控及诊断能力。
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2025-04-30
深度解析OpenAI和Google智能体白皮书及背后两种路线|大模型研究
2025-04-30
MCP入门指南:大模型时代的USB接口
2025-04-30
通俗易懂的梳理MCP的工作流程(以高德地图MCP为例)
2025-04-30
一文说明 Function Calling、MCP、A2A 的区别!
2025-04-30
MCP很好,但它不是万灵药|一文读懂 MCP
2025-04-30
旅行规划太难做?5 分钟构建智能Agent,集成地图 MCP Server
2025-04-29
10万元跑满血版DeepSeek,这家公司掀了一体机市场的桌子|甲子光年
2025-04-29
谷歌大神首次揭秘Gemini预训练秘密:52页PPT干货,推理成本成最重要因素
2024-08-13
2024-06-13
2024-08-21
2024-09-23
2024-07-31
2024-05-28
2024-08-04
2024-04-26
2024-07-09
2024-09-17
2025-04-29
2025-04-29
2025-04-29
2025-04-28
2025-04-28
2025-04-28
2025-04-28
2025-04-28