重载日志
Monoceros 很强调热重载,所以“这次重载到底成功没有”本身就是一个非常重要的运维问题。
重载分两类
全局重载
/mono reload
适合你改了很多内容,或者不确定问题属于哪个模块时使用。
指定服务重载
/mono reload <service>
适合你明确知道自己改的是哪一块,例如脚本、调度或分发器。
当前重载系统的特点
- 服务按优先级参与重载
- 支持按服务 ID 精准重载
- 文件监听会结合 SHA-256 内容检测处理变更
- 资源新增、修改、删除都可以被识别
为什么重载日志重要
因为“文件保存了”不等于“框架真的接纳了这次变更”。
重载日志可以帮助你判断:
- 服务有没有真正进入重载流程
- 是全部成功,还是部分成功
- 哪个服务失败了
- 当前失败是加载失败,还是资源根本没找到
常见命令配合
/mono reload/mono reload script/mono reload schedule/mono reload dispatcher/mono debug
什么时候该开调试模式
如果你出现以下情况,就很适合先开 /mono debug:
- 文件改了但没有生效
- 某个服务反复加载失败
- 某个资源热重载后被意外卸载
- 你怀疑文件监听没有工作
最实用的判断标准
对服主来说,最重要的不是“理解底层日志每一行”,而是确认下面三件事:
- 目标服务有没有被重载
- 目标资源有没有被重新注册
- 失败时能不能定位到具体模块
只要这三点能看清,日常热更新基本就够用了。