在使用本地服务端录制前,建议使用我们提供的 enablecoredump.sh
脚本开启系统 core dump 功能,以便在后续录制出现问题时,能够快速调查和定位问题,提高问题解决效率。
首先,你可先执行 ulimit -c
命令查看是否已开启 core dump。输出结果如果为 0,则说明 core dump 没有打开。
参考以下步骤在 Linux 系统中开启 core dump 功能。
打开终端,运行以下命令执行 enablecoredump.sh
脚本打开 core dump:
sudo ./enablecoredump.sh
注意:
运行脚本后,要重启服务器才能生效。
如不能重启,请额外执行 ulimit -c unlimited
命令,使其在当前用户下生效。
生成的 core 文件将位于 /var/corefile
目录下。
如果你是在 docker 中跑录制进程,则运行以下命令:
docker run --ulimit core=-1 --security-opt seccomp=unconfined --privileged=true --cap-add=SYS_PTRACE
参数 | 描述 |
---|---|
--ulimit core=-1 | 不限制 coredump 大小 |
--security-opt seccomp=unconfined | 允许容器执行全部系统调用 |
--privileged=true | 允许 createdump 访问其他进程 |
--cap-add=SYS_PTRACE | 允许在docker 中进行 gdb 调试 |