内容简介:增强 1、@midwayjs/logger 日志库支持多参数输出 由于之前 @midwayjs/logger 的日志对接了 winston3,由于 winston 的入参限制,无法支持多个参数。 比如: logger.info('123', '456', '789'); 对于 winston ...
增强
1、@midwayjs/logger 日志库支持多参数输出
由于之前 @midwayjs/logger 的日志对接了 winston3,由于 winston 的入参限制,无法支持多个参数。
比如:
logger.info('123', '456', '789');
对于 winston 来说,只会识别第一个字符串,midway 在其之上做了调整和优化,使其能支持最多 2 个参数。
在新版本上,我们支持了任意数量的参数,原有的写法都恢复支持,用户不需要去记格式了。
比如下面的格式也能输出的很好。
logger.info('123', [1, 2, 3], new Error('abc');
2、替换阿里云 FC 环境下的默认日志对象
在 FC 下,平台自带的日志输出,会出现无法输出的问题
比如(使用的是阿里云 context 上自带的 context.logger):
this.ctx.logger.error(new Error('ccc'));
这句简单的错误对象输出,原来的效果
新版本我们将 context.logger 切换为了 midway 自带的 @midwayjs/logger 库(仅在阿里云 FC 环境),将会更好的输出信息。
新的错误输出:
3、 bootstrap 时支持捕获额外的错误
之前在 bootstrap 中遗漏了对异步链错误的支持,在一些情况下会导致进程退出,虽然 pm2 等 工具 会记录最后的 error,但是为了优雅的处理和日志的统一性,还是需要增加这一监听。
新版本增加了 uncaughtException
和 unhandledRejection
的监听,让一些特殊的错误也能捕获输出。
比如下面的代码,如果监听了之后,就会输出 'got err',否则就会报一个全局的错误。
let a; // process.on('uncaughtException', err => { // console.log('got err'); //}); async fuction run() { setTimeout(() => { a(); }, 100); } run(); // TypeError: a is not a function
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- Microsoft Edge 更新,提供暗黑模式支持
- 微软为Azure Cognitive服务提供容器支持
- repmgr 4.2 发布,对 PostgreSQL 11 提供支持
- 微软宣布提供 Azure Cognitive Services 容器支持
- Ubuntu Core 给物联网提供更多安全支持
- GoLand 2018.1 EAP 5 发布,提供 dep 支持
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
算法设计与分析基础
Anany levitin / 潘彦 / 清华大学出版社 / 2007-1-1 / 49.00元
作者基于丰富的教学经验,开发了一套对算法进行分类的新方法。这套方法站在通用问题求解策略的高度,能对现有的大多数算法都能进行准确分类,从而使本书的读者能够沿着一条清晰的、一致的、连贯的思路来探索算法设计与分析这一迷人领域。本书作为第2版,相对第1版增加了新的习题,还增加了“迭代改进”一章,使得原来的分类方法更加完善。 本书十分适合作为算法设计和分析的基础教材,也适合任何有兴趣探究算法奥秘的读者......一起来看看 《算法设计与分析基础》 这本书的介绍吧!