mxpacklogs

本文档介绍了日志采集及打包工具 mxpacklogs。

1 基础说明

  • 功能
    • mxpacklogs 工具支持一键式采集分布式集群的所有日志并打包。
    • 支持采集执行命令当下到前 3 天范围内的日志信息。
  • 使用
    • Master 上执行
      • 推荐使用 mxadmin 用户,如使用其他用户需配置 pg_hba 信任。
    • 非 Master 上执行
      • 数据库服务器和执行此命令的服务器都需安装新版本的 YMatrix(4.8.0 及以上),并通过指定相关参数连接到 Master 。
  • 注意
    • 所有指定服务器的 log 会汇总到当前执行 mxpacklogs 命令的主机上,以 *.tar.gz 包的形式在 /tmp 下暂存。
    • mxpacklogs 会自动选取用户可以读写的,剩余空间最大的磁盘存放*.tar.gz 包。
    • 如遇集群的所有节点全部宕机的极端情况,需通过指定 --hosts--base-data-dirs 获取日志信息。

2 工具使用

以下示例中 mdw 为 Master,sdw 为非 Master。

  1. 获取所有主机日志信息

    • 默认当前主机为 Master
     [mxadmin@mdw ~]$ mxpacklogs
    • 指定访问 Master 的连接信息
     [<用户名称>@sdw ~]$ mxpacklogs --dbhost 172.31.33.128 --dbport 5432 --username mxadmin --password 123
  2. 获取指定主机下的日志信息

    • 此命令表示收集 sdw1sdw2 的日志信息。两台机器的 base-data-dirs 都是 /mxdata_20221229075012
     [<用户名称>@sdw ~]$ mxpacklogs --hosts sdw1,sdw2 --base-data-dirs /mxdata_20221229075012
    • 此命令表示表示收集 sdw1sdw2 的日志信息。sdw1base-data-dirs/mxdata_20221229075012sdw2base-data-dirs/data1/mxdata_20221229075013
     [<用户名称>@sdw ~]$ mxpacklogs --hosts sdw1,sdw2 --base-data-dirs /mxdata_20221229075012,/data1/mxdata_20221229075013

3 详细参数信息

参数名 默认值 描述
--base-data-dirs 数据库元信息中的数据目录 可选。仅当数据库不可访问时,才需要提供此参数。提供到 mxdata_xxxx 目录层级即可。格式:mxpacklogs --base-data-dirs /data/mxdata_20230324145536
--hosts 集群内所有主机的日志 -- hosts 可以收集特定 Segment 的主机的日志,避免过大的空间、时间开销。格式:mxpacklogs --hosts sdw1,sdw2mxpacklogs --hosts sdw1 --hosts sdw2
-h / --dbhost 127.0.0.1 数据库服务器主机
-p / --dbport 5432 数据库服务器端口
--debug 不涉及 开启调试日志输出
--help 不涉及 打印帮助信息
--host 127.0.0.1 安装 supervisor/mxgate 服务的主机
--mode api 输出格式为 api 或 cli
-W / --password NULL 数据库用户密码
--port 4617 supervisor 服务器端口
-U / --username mxadmin 数据库用户名
--validate 不涉及 验证模式 - 试运行
--verbose 不涉及 开启详细日志输出
-v / --version 不涉及 显示工具版本
--path /opt/ymatrix/matrixdb[x] supervisor 主机上的 matrixdb 安装路径;[x]为数据库版本号,如matrixdb5,matrixdb6

注意!
更多日志内容相关信息请见日志