Node.js Heroku Review应用程序配置和日志记录(与生产配置/日志记录相比)

Node.js Heroku Review应用程序配置和日志记录(与生产配置/日志记录相比),node.js,bash,heroku,Node.js,Bash,Heroku,我正在调查我的Heroku Review应用程序的一些问题 从Bash来看,似乎无法访问配置(环境变量)或日志记录。如果我跑步: heroku logs --tail 这只是从生产应用程序返回的日志(这很有意义,因为似乎没有办法将范围保留在review应用程序中)。我可以从Heroku仪表板中看到Review应用程序日志,但即使这样也有点不对劲,因为后续刷新将忽略日志中的不同行(这就是为什么我尝试从Bash中查看它们) 此外,如果我这样做: heroku config 它返回预期的配置值(即

我正在调查我的Heroku Review应用程序的一些问题

从Bash来看,似乎无法访问配置(环境变量)或日志记录。如果我跑步:

heroku logs --tail
这只是从生产应用程序返回的日志(这很有意义,因为似乎没有办法将范围保留在review应用程序中)。我可以从Heroku仪表板中看到Review应用程序日志,但即使这样也有点不对劲,因为后续刷新将忽略日志中的不同行(这就是为什么我尝试从Bash中查看它们)

此外,如果我这样做:

heroku config
它返回预期的配置值(即
数据库URL
),但同样,我不确定这是否只是用于生产

例如,从review应用程序运行此操作:

console.log("process.env.PORT: " + process.env.PORT);
console.log("process.env.DATABASE_URL: " + process.env.DATABASE_URL);
console.log("process.env.PAPERTRAIL_API_TOKEN: " + process.env.PAPERTRAIL_API_TOKEN);
端口
正在返回一个值,但是
数据库_URL
文件跟踪_API _令牌
都将返回
未定义
,即使它们都在
heroku配置
中填充

因此,我的问题是:

1) 我如何从Bash(或除Heroku仪表板之外的任何其他可靠方法)查看Review应用程序的日志

2) 查看应用程序和生产应用程序之间的配置值是否不同?如果不同,如何为查看应用程序配置它们?

使用--app指向您的查看应用程序,例如:

heroku config --app my_review_app
heroku config:set VAR=VALUE --app my_review_app

有一些插件可以收集日志,还有很多其他功能,比如警报

所以你可以考虑使用其中一个。我只是给出了一个我们在应用程序中使用的名为Logentries的应用程序


Yoni完全正确,但这里有更多细节

运行heroku config时,响应的第一行显示当前指向的应用程序。这本应该是我的第一条线索,但一开始我就错过了

$ heroku config
=== fathomless-meadow-38193 Config Vars
DATABASE_URL: postgres://xxxxxxxxxx...
一旦我运行了我的评论应用程序的配置,它确实返回空的

$ heroku config --app blooming-river-14132-pr-2
=== blooming-river-14132-pr-2 Config Vars
正如Yoni所说,在设置配置变量时,可以使用
-app
开关来指定应用程序。但我希望我的默认应用程序指向我的
blooming river
应用程序,这将引导我了解如何改变这一点:

$ heroku git:remote -a blooming-river-14132-pr-2
现在,我可以使用以下方法设置
数据库\u URL

$ heroku config:set DATABASE_URL=POSTGRES://xxxxxxxx...
我真的不喜欢为每个新的pull请求手动设置它,所以我发现了这一点。不幸的是,我从来没有得到过这项工作,至少对于
数据库\u URL


因此,我仍在努力解决这个问题,如果我这样做了,我会更新这个答案。

如果你在同一个项目下,这真的不是必需的(指目录)