Malagu 默认提供的日志功能比较简单,底层是基于 loglevel 库实现。如果我们想要功能更为强大的日志,可以选择 @malagu/logger
组件,该组件是基于 pino 库实现。当然,我们也可以很容集成其他第三方日志库。在 Serverless 场景,基于 loglevel 库实现已经足够了,因为 Serverless 平台会自动帮我们收集日志,方便我们查看与分析应用。
接口定义
我们可以实现以下日志接口,并以 Logger
为 ID 注入到 IoC 容器,并设置 rebind 为 true,即可替换框架默认的日志实现。
import * as log from 'loglevel';
export interface Logger extends log.Logger {
}
使用方式
export class A {
@Autowired(Logger)
protected readonly logger: Logger;
}
属性配置
设置日志输出级别。支持的级别(由低到高):trace、debug、info、warn、error、silent。
# malagu.yml
malagu:
logger:
level: error