You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何导出runc的堆栈追踪信息以排查runc运行时卡住的问题

runc 卡住时导出堆栈追踪信息操作指南
  • 首先确认你使用的 runc 版本已开启调试特性:官方发布的正式版本默认已启用 debug 编译参数,自行编译的版本需在编译时添加 DEBUG=1 配置,确保堆栈导出功能可用。
  • 定位卡住的 runc 进程 PID,可执行命令:pgrep runc 或 ps aux | grep runc,记录得到的进程ID为 <RUNC_PID>。
  • 向目标进程发送 SIGUSR1 信号触发堆栈导出,执行命令:kill -SIGUSR1 <RUNC_PID>
  • 接收堆栈输出:
    • 若 runc 进程由 systemd 或 containerd 等托管,堆栈信息会输出到进程的标准错误流,可直接从 journald 或对应运行时的日志目录中抓取
    • 若为手动执行的 runc 命令,堆栈会直接打印到启动命令的终端窗口
    • 若需要持久化存储堆栈,可在启动 runc 时提前重定向标准错误,示例:runc run <容器ID> 2> /var/log/runc_debug.log,后续触发的堆栈会自动写入该日志文件

注意:SIGUSR1 信号仅会触发 runc 输出堆栈信息,不会终止进程运行,也不会影响关联容器的正常运行,无业务侧可用性风险。

内容的提问来源于stack exchange,提问作者systolicDrake

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 07:06:02