mysql当数据库发现了慢sql怎么定位?--待验证

news/2024/10/18 17:14:56

1、应用侧生成链路id。
使用skywalking

2、mybatis写拦截器,sql里面加入链路id
`@Intercepts({
@Signature(
type = StatementHandler.class,
method = "prepare",
args = {Connection.class, Integer.class}
)
})
public class SqlStatementInterceptor implements Interceptor {

@Override
public Object intercept(Invocation invocation) throws Throwable {StatementHandler statementHandler = (StatementHandler) invocation.getTarget();String sql = statementHandler.getBoundSql().getSql();System.out.println("执行的 SQL: " + sql);// 可以在这里修改 sql

//todo 从threadloal中获取链路id, 然后拼接到sql中。
比如 sql=“/”+链路id+"/"+sql;
// statementHandler.getBoundSql().setSql(modifiedSql);
// 然后继续执行后续操作
return invocation.proceed();
}

@Override
public Object plugin(Object target) {return Plugin.wrap(target, this);
}@Override
public void setProperties(Properties properties) {// 可以设置拦截器属性
}

}`

3| 后续导出来的慢sql,自然就会带着traceid。
后续就可以拿着这个traceid去链路追踪平台搜索了。或者去日志里面找相关的业务

为什么不直接从链路追踪的慢sql统计上看 ?

有可能太长了,应用崩了, 慢sql无法记录。但是日志文件肯定在, 看业务日志也能定位问题


手动测试的相关截图


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/73129.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

Echarts 关于formatter的使用

其实这个 formatter 很实用哈,可以自定义很多格式内容,尤其是提示和图例那边,还有柱状图的内容啥的 官网给的案例啊,看不懂哈哈哈 来点自己的小经验,几乎都可以实用啊,而且可以搭配rich自定义样式, 1、字符串模板 最简单的就是这样使用的,关于参数,这个官网给答案了,…

Higress 重磅更新:AI 能力全面开源,云原生能力再升级

Higress 最新的 1.4 版本基于为通义千问,以及多家云上 AGI 厂商客户提供 AI 网关的积累沉淀,开源了大量 AI 原生的网关能力。作者:澄潭、钰诚 新版本简介 Higress 最新的 1.4 版本基于为通义千问,以及多家云上 AGI 厂商客户提供 AI 网关的积累沉淀,开源了大量 AI 原生的网…

Spring中的事务提交事件

如果想在spring操作事务结束后执行一些代码,应该怎么办?为什么要这样?比如我们在事务中给其他系统发了消息,期望事务提交后过一会收到这个系统的回应,然后操作刚刚提交的数据。但是如果回应来的太快就像龙卷风,我们的事务是托管给Spring的可能还没提交,也就没法操作了一…

普天同悲

谨记,谨记。世人若学我,当如堕魔道。

Denoising Diffusion Implicit Models(去噪隐式模型)

DDPM有一个很麻烦的问题,就是需要迭代很多步,十分耗时。有人提出了一些方法,比如one-step dm等等。较著名、也比较早的是DDIM。 原文:https://arxiv.org/pdf/2010.02502 参考博文:https://zhuanlan.zhihu.com/p/666552214?utm_id=0 DDIM假设 DM假设 ddim给出了一个新的扩…

20222408 2024-2025-1 《网络与系统攻防技术》实验二实验报告

1.实验内容 1.1本周学习内容 本次实验中,学习的重点是后门的实现与启动方式,学习内容还有后门的定义、原理以及可能影响,netcat、socat、MSF meterpreter软件的应用。 1.2实验内容简述使用netcat获取主机操作Shell,利用cron启动一项任务 使用socat获取主机操作Shell, 利用创…

京东APP百亿级商品与车关系数据检索实践

作者:京东零售 张强导读 本文主要讲解了京东百亿级商品车型适配数据存储结构设计以及怎样实现适配接口的高性能查询。通过京东百亿级数据缓存架构设计实践案例,简单剖析了jimdb的位图(bitmap)函数和lua脚本应用在高性能场景。希望通过本文,读者可以对缓存的内部结构知识有一…

专题(二十) cut

一、作用与介绍cut 命令从文件的每一行剪切字节、字符和字段并将这些字节、字符、字段写至标准输出。 二、用法选项 用法说明 举例说明 备注-b 按字节截取 who | cut -b 3 输出每行的第三个字节-c 按字符截取,常用于中文 cut -c 2 输出每行的第二个中文字符-d 指定以什么为…