暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

11.7.2 collectHighLoadDiagnostics 实用程序

由迪 2024-04-23
104

关于实用程序

要求和限制

运行实用程序

收集高负载诊断信息的选项

关于实用程序
util.debug.collectHighLoadDiagnostics()在您的 MySQL 服务器上运行多次迭代的诊断报告,使您能够在负载下分析服务器的多个方面。

高负载诊断报告以 zip 文件形式生成到本地目录或指定路径。

该实用程序生成 TSV 和 YAML 格式的文件。

要求和限制
以下要求适用于使用诊断收集实用程序的导出:

需要 MySQL 5.7 或更高版本。

该实用程序必须以 root 身份运行。

运行实用程序
诊断实用程序具有以下签名:

util.debug.collectHighLoadDiagnostics(path, {options})
以下示例将 zip 文件写入用户的临时目录,执行 5 次收集迭代,并启用所有 Performance Schema 工具和使用者:

  util.debug.collectHighLoadDiagnostics("/home/userName/temp/highLoad.zip", {iterations: 5, pfsInstrumentation: "full"})

笔记
此实用程序返回的数据还包括 收集的数据util.debug.collectDiagnostics()。

收集高负载诊断信息的选项
迭代次数:数量
默认值为 2。高负载诊断数据收集的迭代次数。

延迟: 数量
默认值为 300 秒。高负载诊断数据收集迭代之间的秒数。

innodbMutex:[真|错误的]
默认为 false。如果设置为 true,SHOW ENGINE INNODB MUTEX则收集 的输出 。

笔记
该参数会影响性能。

pfsInstrumentation:[当前|中等|满的]
默认为当前。定义使用哪些性能模式工具和消费者。可能的值为:

current:当前启用的性能模式工具和消费者。不会对您的服务器配置进行任何更改。

medium%history:启用除和 之外 的所有消费者 %history_long以及除 之外的所有仪器wait/synch/%。

full:支持所有消费者和所有仪器。

自定义Sql:array
要运行的一个或多个 SQL 语句。您可以使用以下前缀控制语句的运行时间:

PRE: 默认。该语句在指标收集迭代开始之前运行一次。

POST:该语句在指标收集迭代完成后运行一次。

ITER:该语句针对指标集合的每次迭代运行一次。

例如:

        {"customSql": ["statement1", "statement2", "statement3"]}

自定义Shellarray
要运行的一个或多个 Shell 命令。您可以使用以下前缀控制命令的运行时间:

BEFORE: 默认。该语句在指标收集迭代开始之前运行一次。

DURING:该语句针对指标集合的每次迭代运行一次。

AFTER:该语句在指标收集迭代完成后运行一次。

例如:

        {"customShell": ["command1", "command2", "command3"]}

重要的
这些命令以运行 MySQL Shell 的用户的权限运行,应谨慎使用。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论