并在项目中的任何地方调用"/>
如何使Pino库成为通用库并在项目中的任何地方调用
我对node.js和JS世界非常陌生。我正在对现有的基于node.js的测试应用程序进行记录。我刚刚选择了“ pino”,并按如下所示使用它:
const pino = require('pino');
const logger = pino({
prettyPrint: true
});
logger.info("Flow---XXXX");
当我运行npm run test | pino-pretty -c -t
时返回以下响应>>
输出:
[[1589538447177]信息(L-MAA-13i28828820上的00020:流--- XXXX
我在这里有两个问题:
我在命令中设置了-t标志,我希望它将时间戳转换为用户可理解的格式(例如yyyy-mm-dd HH:mm:ss),但它仍然像上面一样打印纪元格式。 >
我正在尝试将以下行添加到项目中的所有JS文件中。是否可以将其命名为一些JS文件并将记录器对象导出到其他js文件中?就像不是在项目中到处都调用以下行,我可以创建可重用的js文件并导出函数吗?
const pino = require('pino'); const logger = pino({ prettyPrint: true });
我不确定是否可以实现2个请求,但是如果能获得一些潜在客户,那就太好了。
提前感谢。
更新:
我通过使用module.export选项解决了第一个问题,如下所示:
module.export.log = function(input) { logger.info(input); }
有人可以帮助我在日志中显示用户可读的格式时间吗?现在它打印出时代。.我尝试了下面的代码,但还是没有运气。
const logger = pino({ prettyPrint: true, timestamp:`,"time":"${new Date(Date.now())}"` });
我可以看到在pino库中有一个名为timestamp的const变量,并且默认值被指定为纪元时间。
如果有任何解决方案,我会发帖的
我对node.js和JS世界非常陌生。我正在对现有的基于node.js的测试应用程序进行记录。我只是选择了'pino'并按如下方式使用它:const pino = require('pino'); const logger ...
回答如下:我刚刚更改了pino.js文件中的以下详细信息,现在返回了用户可读的时间戳格式
const defaultOptions = {
timestamp:isoTime
}
const time = (timestamp instanceof Function)
? timestamp : (timestamp ? isoTime : nullTime)
const timeSliceIndex = time().indexOf(':') + 1
更多推荐
如何使Pino库成为通用库并在项目中的任何地方调用
发布评论