如何启用崩溃日志、gdb和restarter ( AzerothCore服务器)?我找不到这方面的任何信息,请帮忙。
发布于 2020-07-16 16:37:07
更新28/04/2021
官方指南可在此查阅:https://www.azerothcore.org/wiki/how-to-restart-and-debug
使用acore仪表板
在这里您可以找到linux/bash环境的重新启动程序:https://github.com/azerothcore/azerothcore-wotlk/tree/master/apps/startup-scripts
这些脚本在编译后自动复制到/dist目录,如果您使用的是./acore.sh仪表板
您可以复制conf.sh.dist并创建一个conf-world.sh文件来自定义这些文档化的配置(对conf-auth.sh也这样做)。通过这种方式,您可以预先配置restarter和gdb,以便在核心崩溃时创建gdb.txt (crashdump)文件。确保使用RelWithDebInfo或Debug编译(在CMake命令中)以获得有意义的崩溃报告。
然后将restarter-world.sh和restarter-auth.sh从您的conf文件旁边的“示例”复制到“run”文件的同一个文件夹中。
最终你会得到这样的东西:

运行这2个重新启动脚本,使authserver和worldserver都能重新启动,并支持gdb。
重新启动程序(没有gdb支持)
您还可以使用./acore.sh run-worldserver和./acore.sh run-authserver。
当您使用仪表板进行编译时,它们都是开箱即用的。
手动方式
始终确保使用RelWithDebInfo或Debug编译(在CMake命令中),以便获得有意义的崩溃报告。
在下面创建一个名为gdb.conf的文件:
set logging on
set debug timestamp
run -c ../etc/worldserver.conf
bt然后,要调试或创建一个crashdump,只需使用gdb命令,如其文档中所述:
gdb -x gdb.conf --batch ./worldserver此命令应该足够附加IDE来调试代码,并且在服务器崩溃时生成一个崩溃转储。
对于“通用”和更高级的重新启动程序,我个人使用的是PM2
pm2 start "gdb -x gdb.conf --batch ./worldserver"它应该足以自动重新启动、监视和gdb您的服务器。
使用码头
工作正在进行中..。
https://stackoverflow.com/questions/62910364
复制相似问题