为什么 apify 共享的 npm 包打印“日志错误”

问题描述

使用 apify-shared npm 包,当我尝试运行一个项目时,我收到错误消息:

[INFO] 08:52:24 ts-node-dev ver. 1.1.6 (using ts-node ver. 9.1.1,typescript ver. 3.9.9)
Error: Options "level" must be one of log.LEVELS enum!
    at new Log (/usr/src/app/node_modules/apify-shared/log.js:37:60)
    at Object.<anonymous> (/usr/src/app/node_modules/apify-shared/log.js:182:13)
    at Module._compile (internal/modules/cjs/loader.js:1063:30)
    at Module._compile (/usr/src/app/node_modules/source-map-support/source-map-support.js:547:25)
    at Module._extensions..js (internal/modules/cjs/loader.js:1092:10)
    at Object.nodeDevHook [as .js] (/usr/src/app/node_modules/ts-node-dev/lib/hook.js:63:13)
    at Module.load (internal/modules/cjs/loader.js:928:32)
    at Function.Module._load (internal/modules/cjs/loader.js:769:14)
    at Module.require (internal/modules/cjs/loader.js:952:19)
    at require (internal/modules/cjs/helpers.js:88:18)
[ERROR] 08:52:37 Error: Options "level" must be one of log.LEVELS enum!

我不知道是什么导致了上述错误。什么可能导致触发此类错误?有趣的是,在同一个 docker 实例上运行具有相同设置的同一个项目可以正常工作,而不会显示任何错误

PS:我在 docker 上运行它

任何帮助将不胜感激,谢谢!

解决方法

您是否独立使用该软件包?不建议如此处所述: https://www.npmjs.com/package/apify-shared

尽管如此,您的问题似乎是您没有将必需的参数传递给库,根据在这种情况下的代码,您应该使用它支持的日志级别字符串之一调用记录器实用程序: if (!LEVEL_TO_STRING[options.level]) throw new Error('Options "level" must be one of log.LEVELS enum!');

根据共享的信息很难说你应该做什么,但也许你意识到你可以通过这种方式传递记录器的级别之一:log.LEVELS.<string>

你想达到什么目的?

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...