我正在尝试将一个Koop.js网络应用程序部署到Heroku。 (我需要在GeoServices REST端点上提供一些地理空间数据。Koop本质上是由Esri构建的,以完成此操作。)
Koop提供了一些有关将Koop应用程序部署到Heroku的简单说明:https://koopjs.github.io/docs/deployment/heroku我遵循了这些说明,并且能够在Heroku上成功构建我的Koop应用程序,并且许多路由都可以正常工作,但是关键的{{1} }路线实际上返回了地理空间要素本身,却导致该应用崩溃,我不知道为什么。
我可以(并且会)对此提出一个问题,但是我首先尝试自己调试问题。但是我遇到了一个元问题:Heroku日志表明,一个可能对调试有用的日志文件正在被写入Heroku dyno本地文件系统上的某个路径。但是Heroku dynos具有ephemeral filesystem,并且崩溃导致dyno立即重新启动,因此日志文件丢失。 如何保存/查看此文件的内容?
相关的Heroku日志如下。据我所知,query
/ npm ERR! code ELIFECYCLE
仅仅意味着我的应用由于某种原因崩溃了。我想查看errno 132
的内容以尝试理解原因,因为当我通过/app/.npm/_logs/2020-09-10T16_42_34_702Z-debug.log
在本地计算机上运行应用程序时,此路由工作正常。但是,当然,当我通过heroku local web
SSH到Heroku dyno时,我正在查看干净的临时文件系统,并且该日志文件不存在。
heroku run bash
This old question似乎相关,但从未收到令人满意的答案...似乎我必须弄清楚如何将2020-09-10T16:42:34.690463+00:00 app[web.1]: Illegal instruction
2020-09-10T16:42:34.696426+00:00 app[web.1]: npm ERR! code ELIFECYCLE
2020-09-10T16:42:34.696632+00:00 app[web.1]: npm ERR! errno 132
2020-09-10T16:42:34.697093+00:00 heroku[router]: at=error code=H13 desc="Connection closed without
response" method=GET path="/koop-provider-csv/food-data/FeatureServer/0/query"
host=myfakeappname.herokuapp.com request_id=90b6a4a1-afc5-4a95-abf9-1889f94c7b26 fwd="my.ip.address"
dyno=web.1 connect=1ms service=358ms status=503 bytes=0 protocol=https
2020-09-10T16:42:34.700630+00:00 app[web.1]: npm ERR! koop-test@0.1.0 start: `node src/index.js`
2020-09-10T16:42:34.700820+00:00 app[web.1]: npm ERR! Exit status 132
2020-09-10T16:42:34.700948+00:00 app[web.1]: npm ERR!
2020-09-10T16:42:34.701032+00:00 app[web.1]: npm ERR! Failed at the koop-test@0.1.0 start script.
2020-09-10T16:42:34.701111+00:00 app[web.1]: npm ERR! This is probably not a problem with npm.
There is likely additional logging output above.
2020-09-10T16:42:34.708490+00:00 app[web.1]:
2020-09-10T16:42:34.708678+00:00 app[web.1]: npm ERR! A complete log of this run can be found in:
2020-09-10T16:42:34.708804+00:00 app[web.1]: npm ERR! /app/.npm/_logs/2020-09-10T16_42_34_702Z-debug.log
2020-09-10T16:42:34.763071+00:00 heroku[web.1]: Process exited with status 132
2020-09-10T16:42:34.798034+00:00 heroku[web.1]: State changed from up to crashed
目录中所有文本文件的内容转储到Heroku日志中,或者这样的事情。感谢您提供的任何建议!
对于它的价值,我毫不费力地将Koop应用程序部署到Heroku。我在下面粘贴了构建日志; Heroku和我的本地计算机上使用的Node.js版本都匹配。在我看来,没有什么异常。
.npm