Skip to main content

关于 GitHub Enterprise Server 的支持包

当 GitHub Enterprise Server 实例出现问题时,支持包会为 GitHub 支持 提供所需的诊断数据,以帮助快速解决问题。

关于支持捆绑包

支持包是 GitHub Enterprise Server 实例中诊断数据的压缩存档。 可以使用支持包与 GitHub 支持 一起处理问题,并生成运行状况检查报告,总结实例的配置、运行状况和活动。

何时生成支持捆绑包

在多个场景中生成支持捆绑包:

支持票证调查

GitHub 支持 在调查性能问题、服务故障、身份验证问题或其他操作问题时,可能会请求提供支持包。 首先打开支持票证,然后生成捆绑包,并包括票证号码,以将其与案例相关联。 有关详细信息,请参阅 命令行实用程序

运行状况检查分析

可以生成支持包以创建健康检查报告。 运行状况检查分析支持捆绑数据,并报告实例的运行状况、安全性、Git 操作和 API 使用情况。 有关详细信息,请参阅“为企业生成运行状况检查”。

支持捆绑包的内容

支持捆绑包包含实例中的多个类别的数据。 具体内容取决于 GitHub Enterprise Server 版本和配置。

系统和实例信息

支持捆绑包包括有关实例设置和环境的诊断数据,例如版本信息、系统配置、许可证详细信息以及命令的 ghe-diagnostics 输出。 有关诊断信息的完整列表,请参阅 向GitHub支持提供数据

日志文件

支持捆绑包包括实例的系统服务、应用程序和数据库的日志文件。 收集的日志数据量取决于捆绑类型。 若要了解有关可用日志文件的详细信息,请参阅 关于系统日志

标准和扩展捆绑包

有两种类型的支持捆绑包。 标准包较小,生成速度更快,而扩展包提供更全面的数据以进行深入故障排除。

标准套餐扩展捆绑包(-x 标志)
          **日志持续时间** | 2 天 | 8 天 |

| 轮换日志文件 | 排除 | 已含 | | 核心转储 | 排除 | 已含 | | 磁盘使用情况报告 | 排除 | 已含 | | 热修补日志 | 仅限最新 | 所有版本 |

GitHub 支持 将建议生成何种类型的捆绑包。 如有疑问,请生成扩展捆绑包,以确保所有诊断数据都可用。 还可以使用 --period 标志(例如, --period '4 days')指定自定义日志持续时间。

服务状态和指标

支持捆绑包包括当前服务运行状况、进程信息、性能指标和实例上运行的关键服务的配置文件。

高可用性信息

如果实例使用高可用性或群集,支持捆绑包包括:

  • 复制状态和滞后信息
  • 群集节点配置
  • 缓存副本详细信息

数据隐私和安全性

支持捆绑包旨在帮助诊断问题,同时保护敏感信息:

  •         **清理**:在收集之前删除或模糊处理敏感数据,例如密码、令牌和私钥。
    
  •         **无存储库内容**:支持捆绑包不包括 Git 存储库的内容,例如源代码、提交数据或文件内容。
    
  •           **用户数据**:支持包不包括系统日志中显示的用户配置文件信息以外的信息。
    
  •         **许可证信息**:捆绑包包括您的组织名称和许可证引用,因此 GitHub 支持 可以用于标识您的实例。
    

当你向 GitHub 支持 提供支持包时,GitHub 仅使用这些数据来满足你的支持请求。 有关 GitHub 如何处理您的数据的详细信息,请参阅 GitHub 隐私声明

支持捆绑包大小和生成时间

支持捆绑包的大小和生成时间会因以下因素而异:

  • 实例大小和活动级别
  • 存储库的数量和大小
  • 自上次日志轮换以来的时间长度
  • 实例是否使用群集或高可用性

典型的支持捆绑包范围从几百 MB 到几 GB。 对于非常大的或大量加载的实例,生成捆绑包可能需要几分钟时间,到一个多小时。

大型支持捆绑包可能会影响生成期间的实例性能。 考虑以下情况:

  •         **系统负载**:生成支持捆绑包使用 CPU、内存和磁盘 I/O 资源。
    
  •         **时间**:如果可能,在非高峰时段生成支持捆绑包。
    
  •         **维护模式**:如果实例存在严重的性能问题,请考虑在生成支持捆绑包之前启用维护模式,以确保其成功完成。 有关详细信息,请参阅“[AUTOTITLE](/admin/administering-your-instance/configuring-maintenance-mode/enabling-and-scheduling-maintenance-mode)”。
    

降低性能影响

ghe-support-bundle 命令自动以最低的 CPU 和 I/O 优先级运行,因此生产工作负荷优先。 若要进一步减少生成期间的资源使用率,可以使用以下标志:

  •         `--no-async` (`-n`):按顺序运行集合,而不是并行运行集合,从而减少资源争用。
    
  •         `--num-jobs 1` (`-l 1`):将并行度限制为单个集合线程。 默认值为可用 CPU 计数的三分之一。
    

例如,若要生成并上传具有最低性能影响的扩展捆绑包:

ghe-support-bundle -x -u --no-async --num-jobs 1

与其他诊断工具的关系

支持包与其他监视和诊断功能一起工作:

诊断文件

ghe-diagnostics 命令生成一个较小的诊断文件,其中包含完全支持捆绑包中的信息子集。 诊断文件对于快速运行状况检查或无法生成完整支持包时非常有用。 诊断输出也包含在每个支持捆绑包中。

监控面板

管理控制台 中的“监视器”页面提供有关实例的实时和历史指标。 有关详细信息,请参阅“关于监控 仪表板”。

生成和共享支持捆绑包

你可以通过 管理控制台 或命令行生成支持包并进行共享。 有关详细说明,请参阅“向GitHub支持提供数据”。

集群时的注意事项

如果使用 GitHub Enterprise Server 群集,则可以生成:

  •         **单节点捆绑包**:支持单个集群节点的捆绑包。
    
  •         **集群包**:由所有集群节点使用 `ghe-cluster-support-bundle` 组合生成的包。
    

GitHub 支持 将根据你正在调查的问题建议生成哪种类型的捆绑包。

支持包生成失败

生成捆绑包失败最常见的原因是 /data/user/tmp 中磁盘空间不足。 支持捆绑包是在压缩之前在此目录中组装的,因此它需要足够的空间来保存未压缩的数据。 在生成捆绑包之前检查可用空间:

df -h /data/user/tmp

如果生成失败或花费了异常长的时间,请在/data/user/tmp释放空间,然后重试。 如果问题仍然存在,请联系GitHub 支持以获得帮助。 或者,可以使用命令生成较小的诊断文件 ghe-diagnostics

延伸阅读

  •         [AUTOTITLE](/admin/monitoring-and-managing-your-instance/monitoring-your-instance/about-system-logs)
    
  •         [AUTOTITLE](/admin/administering-your-instance/administering-your-instance-from-the-command-line/command-line-utilities#ghe-support-bundle)
    
  •         [AUTOTITLE](/support/contacting-github-support/providing-data-to-github-support)