hanxi / blog

涵曦的博客
https://blog.hanxi.cc
56 stars 5 forks source link

skynet自定义log服务 #80

Open hanxi opened 3 years ago

hanxi commented 3 years ago

本文主要演示如何给 skynet 设置一个自定义的日志服务,并添加一些额外的功能。

参考示例

首先参考示例 examples/userlog.lua ,使用 skynet.register_protocol 注册 skynet.PTYPE_TEXT 文本消息,用于输出日志。注册 skynet.PTYPE_SYSTEM 系统消息,用于接收系统信号。

实现日志等级功能

代码位置 lualib/log.lua ,这里逻辑比较简单,就是根据配置的日志等级和接口对比,决定是否输出日志,分为 debug, info , warn , error 四个等级。其中 error 增加了调用堆栈输出,方便排查错误。

实现日志服务

配置

修改 examples/config.userlog 配置文件。

其他