运行应用程序时出现以下错误:
RuntimeException: E_MISSING_CONFIG: logger.transport is not defined inside config/app.js file
下面是包含记录器配置代码的config/app.js文件(注释已删除),
logger: {
transport: 'console',
console: {
driver: 'console',
name: 'adonis-app',
level: 'info'
},
file: {
driver: 'file',
name: 'adonis-app',
filename: 'adonis.log',
level: 'info'
}
}我还是个adonis新手,想不出这个配置会有什么问题。
依赖关系:
"@adonisjs/ace": "^5.0.1",
"@adonisjs/antl": "^2.0.5",
"@adonisjs/auth": "^3.0.4",
"@adonisjs/bodyparser": "^2.0.2",
"@adonisjs/cors": "^1.0.5",
"@adonisjs/drive": "^1.0.2",
"@adonisjs/fold": "^4.0.7",
"@adonisjs/framework": "^5.0.5",
"@adonisjs/ignitor": "^2.0.8",
"@adonisjs/lucid": "^5.0.3",
"@adonisjs/mail": "^3.0.7",
"@adonisjs/session": "^1.0.23",
"@adonisjs/shield": "^1.0.6",
"@adonisjs/validator": "^5.0.3",
"acler": "^1.0.0",
"adonis-acl": "^1.1.0",
"adonis-scheduler": "^3.0.2",发布于 2020-09-03 17:36:23
我知道之前有人问过这个问题,但我遇到了同样的问题,在任何地方都找不到答案。
无论如何,在我的例子中,它是由HTTPS引起的。由于某些原因,当您在HTTPS模式(as described in their docs)下运行服务器时,如果找不到SSL和证书文件,它将无法再运行您的应用程序/测试。
在生产环境中,这并不重要,因为它将能够找到SSL文件,但在我的示例中,我使用它与gitlab CI一起运行测试,然后将其部署到我的远程主机上。gitlab CI运行器没有SSL文件,因此无法运行测试。
我已经解决了这个问题,只需将server.js复制到server-ssl.js并确保在测试时运行server.js,并在我的远程主机上运行server-ssl.js。
server.js包含默认的HTTP服务器配置,而server-ssl.js包含HTTPS服务器配置。
希望这对将来的人有所帮助!;)
EDIT:当您试图加载其他配置文件中不存在的配置选项时,也会发生此错误。例如,从不存在的文件中读取(fs.readFileSync)。
https://stackoverflow.com/questions/60914600
复制相似问题