• pt-stalk


     

    pt-stalk

    1.  概述

    在MySQL服务器出现短暂(5~30秒)的性能波动的时候,一般的性能监控工具都很难抓住故障现场,也就很难收集对应较细粒度的诊断信息。另外,如果这种波动出现的频率很低,例如几天才一次,我们也很难人为的抓住现场,收集数据。这正是pt-stalk所解决的问题。

    2.  收集的性能和状态数据

    让pt-stalk后台运行(--daemonize),并监视SHOW GLOBAL STATUS中的Threads_connected状态值,如果该值超过10,则触发收集主机和MySQL的性能、状态信息。pt-stalk会每隔一秒检查一次状态值,如果连续5次满足触发条件,则开始收集。

    pt-stalk --collect-tcpdump --function status
    --variable Threads_connected --threshold 2500
    --dest /data/dbdata/pt-stalk --iterations 10
    --daemonize -- --user=root -ptest

    使用pt-sift进行监控文件分析(man pt-sift查看使用方法):

     pt-sift /data/dbdata/pt-stalk/2016_08_22_15_50_19-tcpdump

    3.  参数

    ※ –function:设置触发条件,包括status、processlist、自定义脚本,详细见触发条件部分

    ※ –dest:设置collect信息的存储目录,默认/var/lib/pt-stalk/。

    说明:设置–dest /u01/mysql选项到mysql目录之后,pt-stalk在清理超过期限的日志时,会暴力的将该目录下所有修改时间超过一定日期的文件全部删掉,因此在设置dest目录时必须慎重(如果设置最好是一个独立的目录,而不是跟mysql或者其他设置在同一个目录)。–dest默认值是查看pt-stalk的源码(默认pt-stalk将收集的数据放在目录/var/lib/pt-stalk下):

    ※    –iterations:该参数指定pt-stalk在收集几次故障现场后就退出。默认pt-stalk会一直运行。

    ※ –run-time:触发收集后,该参数指定收集多长时间的数据。默认是30秒,比如show processlist会连续收集30次。

    ※ –sleep:为防止一直触发收集数据,该参数指定在某次触发后,必须sleep一段时候才继续观察并触发收集。默认是300秒

    ※ –interval:默认情况pt-stalk会每隔一秒检查一次状态数据,判断是否需要触发收集。该参数指定间隔时间,默认是1秒。

    ※ –cycles:默认情况pt-stalk只有连续观察到五次状态值满足触发条件时,才触发收集。该参数控制,需要连续几次满足条件,收集被触发,默认是5次。

    ※ –verbose:设置log的输出级别,默认是2;第一次运行可以设置为3,方便观察情况0(Errors)、1(Warnings)、2(Matching triggers and collection info)、3(Non-matching triggers)

    ※ –plugin:和–function参数类似,可以指定一个包含before_collect、after_collect等函数的shell脚本。

    ※ --log指定一个你希望的log目录和文件,默认我们可以通过文件/var/log/pt-stalk.log,查看pt-stalk的运行状态

    4.  触发条件

    三种触发条件,通过参数function设置:

    ※ status

    –function status –variable Threads_connected –threshold 2500,表示MySQL状态值Threads_connected超过2500时触发数据收集。常用的触发条件还可以使用Threads_running等。

    ※ processlist 

    –function processlist –variable State –match statistics –threshold 10,表示,show processlist中State列的值为statistics的线程数超过10则触发收集。

    ※    自定义脚本 

    5.  参考文档 

    http://www.tuicool.com/articles/JjUNji

    http://www.orczhou.com/index.php/2012/06/mysql-troubleshooting-with-pt-stakl/

    http://wenku.baidu.com/link?url=a3fZVGFqoeS4WIT7kCMtkuVteqVYn0K2wFVaU80B2DERFyKHvFGJkZ9SVeDldpiy3Z-D1Y3cMeFdBEEuDdCCYz0cMS2R-4kA5Jc6UJWoV07

  • 相关阅读:
    【JDK8特性】Stream接口详解
    【JDK8特性】Optional包装类详解
    【JDK8特性】lambda表达式详解
    关闭windows defender 扫描目录
    IIS服务启动提示当文件已存在时,无法创建该文件,183(转载)
    java部署到ubuntu
    设计模式之模板模式
    Aop示例之注解切面方式实现日志打印
    多线程实现生产消费模式
    关于linux-centos 7.x中使用xfreerdp命令去连接windows主机的远程桌面
  • 原文地址:https://www.cnblogs.com/hfclytze/p/pt-stalk.html
Copyright © 2020-2023  润新知