Heroku的新遗物,如何让它工作?

时间:2011-11-23 20:36:22

标签: java scala heroku playframework newrelic

我在Heroku上部署了一个Scala,play框架,应用程序。 我已将新的遗物插件添加到我的应用程序中。

我已经遵循Java指南,因为Scala在Java VM上运行。

$ heroku addons:add newrelic:standard
-----> Adding newrelic:standard to ... done, v7 (free)

在应用程序中将newrelic解压缩为newrelic

$ git add newrelic
$ git commit -m 'add newrelic'
$ heroku config:add JAVA_OPTS='-Xmx384m -Xss512k -XX:+UseCompressedOops -javaagent:newrelic/newrelic.jar'
$ git push heroku master

现在问题。首先,当我访问添加时,我必须使用新密码在新文件上创建一个新帐户并且它需要我的凭据?它是否正确?我的Heroku帐户不应该足够了,我后来觉得它开始工作了。奇怪的过程所以现在我相信我有两个帐户。在Herokus页面中,我的帐户是每小时标准,在新文物中它是标准精简版。

我不明白如何查看我的表现统计数据。我实际上认为新的遗物没有正确设置?

一个荒谬的事情是新文物主页说没有足够的权限,除了“告诉朋友赚钱”甚至不支持作品WTF。

我附上了两张屏蔽我屏蔽的屏幕截图。任何人都可以评论,如果他们看起来应该或新的遗物设置错误吗?

enter image description here enter image description here

4 个答案:

答案 0 :(得分:3)

您应该可以通过heroku界面使用New Relic,而无需创建单独的帐户。

一旦您的应用程序与代理一起部署,并且已经收到一些请求,您应该开始在界面中查看数据。

代理会创建一个日志(我相信你可以通过heroku logs获得输出),这样也可以帮助你排除故障。

我建议在http://support.newrelic.com上打开支持服务单。

答案 1 :(得分:3)

检查您是否在heroku logs的heroku日志中找到了任何内容。此外,您可以通过设置系统属性newrelic.config.log_levelnewrelic.debug来增加新文件的日志级别。另请注意,在创建新帐户或密码更改后,需要一段时间才能传播更改的凭据。

设置更精细的日志日志级别:

$ heroku config:set JAVA_OPTS=”-Xmx384m -Xss512k -XX:+UseCompressedOops -Dfile.encoding=UTF-8 -javaagent:target/staged/newrelic-agent-2.20.0.jar -Dnewrelic.bootstrap_classpath=true -Dnewrelic.config.file=./conf/newrelic.yml newrelic.config.log_level=finer newrelic.debug=true”

确保不在生产中使用它。它产生了大量的日志。

请参阅我们的博客文章,了解如何在Heroku上使用Play 2.1 / Scala设置New Relic:http://techblog.nezasa.com/2013/08/performance-monitoring-of-nezasa-with.html

答案 2 :(得分:2)

这可能会发生,因为您的托管应用程序没有newrelic提供的正确凭据(例如许可证密钥)。

您是否更新了从'newrelic.jar'提取中获取的默认newrelic.yml文件?通过heroku界面访问newrelic时,您可以在帐户设置菜单中获取应用程序的许可证密钥(您的第一个屏幕截图)。然后在heroku上设置以下配置变量;

NEW_RELIC_LICENSE_KEY="your license key"
NEW_RELIC_APP_NAME="your app name"

不要忘记设置适当的RACK_ENV配置变量,例如RACK_ENV=production

然后通过查找并更改以下行来更新您的newrelic.yml文件;

license_key: '<%= license_key %>'license_key: '<%= ENV["NEW_RELIC_LICENSE_KEY"] %>'

app_name: My Applicationapp_name: '<%= ENV["NEW_RELIC_APP_NAME"] %>'

app_name: My Application (Development)app_name: '<%= ENV["NEW_RELIC_APP_NAME"] (Development) %>'

app_name: My Application (Staging)app_name: '<%= ENV["NEW_RELIC_APP_NAME"] (Staging) %>'

这是设置了环境变量的sample newrelic.yml file

推送更改后,您应该能够从heroku界面访问新文件。

答案 3 :(得分:0)

当我尝试在Heroku上使用New Relic时,我被提示输入信用卡信息

$ heroku addons:add newrelic:standard

但我刚退出并且我的Rails应用程序的日志记录正在运行*。 请注意,根据您的New Relic设置,您可能只是在本地登录(development mode的默认设置不会登录到云,但可以在本地访问)。

很抱歉用Ruby的东西污染这个帖子,但你可能会发现类似于Heroku和New Relic的东西。

*更新:我在部署另一个应用程序时再次遇到同样的问题,并意识到要使用Heroku New Relic插件,您必须提供信用卡信息,但如果您只是directly instrument your application则不需要提供信用卡信息。但是,你必须已经创建了一个帐户。