Egg内部已经集成了日志,就不需要引入任何的包
当我们第一次运行项目的时候
项目目录下就会成logs和run两个目录
下面就来看看这两个目录到底有什么用
run目录是运行时候的配置,是Egg运行的时候自动帮我们添加的,这里面的代码不需要做任何的修改
重点看logs目录
logs目录下有一个和我们的项目名称一样的目录,这个目录下面有很多.log的文件,这些文件就是来记录日志的
默认情况下已经帮我们记录了日志,我们不需要做任何的配置
那下面来看看这些文件分别有什么作用
那下面来我们来简单处理一下日志
简单做个get请求
module.exports = (app) => {
const { router, controller } = app;
router.get("/test", controller.home.test);
};
const Controller = require("egg").Controller;
class HomeController extends Controller {
async test() {
this.ctx.logger.debug("我是DEBUG日志");
this.ctx.logger.info("我是INFO日志");
this.ctx.logger.warn("我是WARN日志");
this.ctx.logger.error("我是ERROR日志");
}
}
module.exports = HomeController;
效果图
但是也没有发现我们的debug日志没有输出
为什么?
因为官方文档说了: 默认只会输出 INFO 及以上(WARN 和 ERROR)的日志到文件中。
如果想输入debug日志我们需要对配置文件进行一些配置(详情看文档)
exports.keys = "sandy";
exports.logger = {
keys: "sandy",
level: 'DEBUG',
};
配置好了以后我们来刷新一下看看能不能成功
好了以后成功输出了,是不是就没有问题了
那么如何进行日志切割?
这个很简单,看看官方文档,已经详细的讲解了如何切割