【问题标题】:Node.js Log location in Heroku DeploymentHeroku 部署中的 Node.js 日志位置
【发布时间】:2021-04-24 01:52:44
【问题描述】:

我正在尝试在 Heroku 中运行我的 Node 应用程序。它部署没有错误,但它在开始时崩溃。下面的日志不清楚问题是什么,当我尝试在 .npm/_logs/2021-04-22T19_59_52_474Z-debug.log 查看建议的日志时,它说找不到文件。我试图从命令提示符进入我的应用程序,并且文件夹 .npm 甚至不存在。所以想知道如何访问上述日志文件以查看发生了什么?

$ ls

app bin dev etc lib lib64 lost+found proc sbin sys tmp usr var /

$ cd app ~

$ ls

LICENSE README.md app.json node_modules package-lock.json package.json pages public src

2021-04-22T19:59:42.811730+00:00 heroku[web.1]: State changed from crashed to starting
2021-04-22T19:59:47.698499+00:00 heroku[web.1]: Starting process with command `npm start`
2021-04-22T19:59:52.168600+00:00 app[web.1]: npm info it worked if it ends with ok
2021-04-22T19:59:52.169476+00:00 app[web.1]: npm verb cli [ '/app/.heroku/node/bin/node',
2021-04-22T19:59:52.169750+00:00 app[web.1]: npm verb cli   '/app/.heroku/node/bin/npm',
2021-04-22T19:59:52.170011+00:00 app[web.1]: npm verb cli   'start' ]
2021-04-22T19:59:52.170326+00:00 app[web.1]: npm info using npm@6.14.12
2021-04-22T19:59:52.170710+00:00 app[web.1]: npm info using node@v10.24.1
2021-04-22T19:59:52.171113+00:00 app[web.1]: npm verb config Skipping project config: /app/.npmrc. (matches userconfig)
2021-04-22T19:59:52.379409+00:00 app[web.1]: npm verb run-script [ 'prestart', 'start', 'poststart' ]
2021-04-22T19:59:52.382021+00:00 app[web.1]: npm info lifecycle heroku-nextjs@1.0.0~prestart: heroku-nextjs@1.0.0
2021-04-22T19:59:52.386151+00:00 app[web.1]: npm info lifecycle heroku-nextjs@1.0.0~start: heroku-nextjs@1.0.0
2021-04-22T19:59:52.405835+00:00 app[web.1]: 
2021-04-22T19:59:52.405837+00:00 app[web.1]: > heroku-nextjs@1.0.0 start /app
2021-04-22T19:59:52.405838+00:00 app[web.1]: > next start -p $PORT
2021-04-22T19:59:52.405838+00:00 app[web.1]: 
2021-04-22T19:59:52.440871+00:00 app[web.1]: sh: 1: next: not found
2021-04-22T19:59:52.443031+00:00 app[web.1]: npm verb lifecycle heroku-nextjs@1.0.0~start: unsafe-perm in lifecycle true
2021-04-22T19:59:52.448691+00:00 app[web.1]: npm verb lifecycle heroku-nextjs@1.0.0~start: PATH: /app/.heroku/node/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/app/node_modules/.bin:/app/.heroku/node/bin:/app/.heroku/yarn/bin:/usr/local/bin:/usr/bin:/bin:/app/bin:/app/node_modules/.bin
2021-04-22T19:59:52.449080+00:00 app[web.1]: npm verb lifecycle heroku-nextjs@1.0.0~start: CWD: /app
2021-04-22T19:59:52.449413+00:00 app[web.1]: npm info lifecycle heroku-nextjs@1.0.0~start: Failed to exec start script
2021-04-22T19:59:52.453617+00:00 app[web.1]: npm verb stack Error: heroku-nextjs@1.0.0 start: `next start -p $PORT`
2021-04-22T19:59:52.453943+00:00 app[web.1]: npm verb stack spawn ENOENT
2021-04-22T19:59:52.454262+00:00 app[web.1]: npm verb stack     at ChildProcess.<anonymous> (/app/.heroku/node/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:48:18)
2021-04-22T19:59:52.485168+00:00 app[web.1]: npm verb stack     at ChildProcess.emit (events.js:198:13)
2021-04-22T19:59:52.485187+00:00 app[web.1]: npm verb stack     at maybeClose (internal/child_process.js:982:16)
2021-04-22T19:59:52.485192+00:00 app[web.1]: npm verb stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:259:5)
2021-04-22T19:59:52.485211+00:00 app[web.1]: npm verb pkgid heroku-nextjs@1.0.0
2021-04-22T19:59:52.485212+00:00 app[web.1]: npm verb cwd /app
2021-04-22T19:59:52.485213+00:00 app[web.1]: npm verb Linux 4.4.0-1088-aws
2021-04-22T19:59:52.485213+00:00 app[web.1]: npm verb argv "/app/.heroku/node/bin/node" "/app/.heroku/node/bin/npm" "start"
2021-04-22T19:59:52.485214+00:00 app[web.1]: npm verb node v10.24.1
2021-04-22T19:59:52.485214+00:00 app[web.1]: npm verb npm  v6.14.12
2021-04-22T19:59:52.485214+00:00 app[web.1]: npm ERR! code ELIFECYCLE
2021-04-22T19:59:52.485215+00:00 app[web.1]: npm ERR! syscall spawn
2021-04-22T19:59:52.485215+00:00 app[web.1]: npm ERR! file sh
2021-04-22T19:59:52.485216+00:00 app[web.1]: npm ERR! errno ENOENT
2021-04-22T19:59:52.485216+00:00 app[web.1]: npm ERR! heroku-nextjs@1.0.0 start: `next start -p $PORT`
2021-04-22T19:59:52.485216+00:00 app[web.1]: npm ERR! spawn ENOENT
2021-04-22T19:59:52.485217+00:00 app[web.1]: npm ERR! 
2021-04-22T19:59:52.485218+00:00 app[web.1]: npm ERR! Failed at the heroku-nextjs@1.0.0 start script.
2021-04-22T19:59:52.485233+00:00 app[web.1]: npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
2021-04-22T19:59:52.485234+00:00 app[web.1]: npm verb exit [ 1, true ]
2021-04-22T19:59:52.528236+00:00 app[web.1]: npm timing npm Completed in 497ms
2021-04-22T19:59:52.528239+00:00 app[web.1]: 
2021-04-22T19:59:52.528240+00:00 app[web.1]: npm ERR! A complete log of this run can be found in:
2021-04-22T19:59:52.528240+00:00 app[web.1]: npm ERR!     /app/.npm/_logs/2021-04-22T19_59_52_474Z-debug.log
2021-04-22T19:59:52.776725+00:00 heroku[web.1]: Process exited with status 1
2021-04-22T19:59:52.840106+00:00 heroku[web.1]: State changed from starting to crashed

【问题讨论】:

  • 它在npm verb stack Error: heroku-nextjs@1.0.0 start: next start -p $PORT 上失败。您无需在启动脚本中指定端口。如果您直接从根目录 app.js 或 index.js 执行此操作,它应该自动执行此操作,无论您决定如何调用它
  • 感谢您的回复。但是同一个应用程序在我的本地计算机上运行没有问题。关于我的第二个问题,你知道我如何才能真正看到 .npm/_logs/2021-04-22T19_59_52_474Z-debug.log 的内容吗?该文件在我的 Heroku 环境中似乎根本不存在
  • 很遗憾没有。但是您可以尝试直接从仪表板的 heroku 日志中的日志中找到它。抱歉,我无法提供更多帮助
  • "not found" -> 下一个可能意味着你不应该在 package.json 中包含该模块。本地,如果你 rm ./node_modules/* 然后 npm install 然后构建然后“heroku local”你应该在开发中得到与你在生产中看到的相同的错误,即找不到 -> 下一个
  • 所以我通过 GIT 部署到 heroku,我注意到我的仓库中也有 package-lock.json。删除包锁就可以了

标签: node.js heroku next.js nodes


【解决方案1】:

所以我通过 GIT 部署到 heroku,我注意到我的仓库中也有 package-lock.json。删除包锁就可以了

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-10
    • 2017-06-27
    • 2015-01-13
    • 2016-01-05
    • 1970-01-01
    • 2019-09-05
    相关资源
    最近更新 更多