0

New Relic 2.12.0をダウンロードし、Heroku Java 構成ドキュメントに従って構成しました。

次の図に示すように、パッケージの内容を spring mvc アプリケーション ディレクトリのルートに解凍しました。

ここに画像の説明を入力

次に、新しいファイルを Heroku にプッシュしました。

$ git add newrelic
$ git commit -m 'add newrelic'
$ git push heroku master

最後に、新しい遺物エージェントをブートストラップしました。

$ heroku config:add JAVA_OPTS='-Xmx384m -Xss512k -XX:+UseCompressedOops -javaagent:newrelic/newrelic.jar'

その後、私のアプリケーションは次のエラーで失敗し、newrelic.jar ファイルを見つけることができないようです。

new relic のドキュメントには、JVM 引数 (例: -javaagent:newrelic/newrelic.jar) に newrelic.jar ファイルへのフル パスを含める必要があると記載されていますが、Heroku のドキュメントによると、必要なのは -javaagent:newrelic/newrelic.jar だけです。 .

2013-01-15T19:41:11+00:00 heroku[web.1]: Starting process with command `java -Xmx384m -Xss512k -XX:+UseCompressedOops -javaagent:newrelic/newrelic.jar -Dspring.profiles.active=prod -jar target/dependency/webapp-runner.jar --port 47412 target/*.war`
2013-01-15T19:41:11+00:00 app[web.1]: agent library failed to init: instrument
2013-01-15T19:41:11+00:00 app[web.1]: Error occurred during initialization of VM
2013-01-15T19:41:11+00:00 app[web.1]: Error opening zip file or JAR manifest missing : newrelic/newrelic.jar
2013-01-15T19:41:12+00:00 heroku[web.1]: Process exited with status 1
2013-01-15T19:41:12+00:00 heroku[web.1]: State changed from starting to crashed

アップデート

Web dyno で newrelic ディレクトリを確認したところ、jar ファイルが見つからないことに気付きました。現在、jar ファイルが見つからない原因を調べています。

ここに画像の説明を入力

アップデート

私のアプリケーション ディレクトリのルートにある .gitignore ファイルは、newrelic.jar ファイルのデプロイを妨げる jar ファイルを除外します。

<<<<<<< HEAD
/target
/.classpath
/.project
/.settings
/tomcat.*
/.idea
/*.iml
=======
*.class

# Package Files #
*.jar
*.war
*.ear
4

2 に答える 2

3

.gitignoreファイルにjarを無視する何かを残した可能性はありますか? あなたheroku run bashls newrelicあなたはそこに瓶を見ますか?

于 2013-01-16T22:21:17.833 に答える
0

target/dependency フォルダーにある jar ファイルが見つからないという同じ問題がありました。

私にとって問題はpomファイルでした(Herokuの例で提供されています)

ここに私の作業POMがあります:

                <executions>
                 <execution>
                    <phase>package</phase>
                    <goals>
                        <goal>copy</goal>
                    </goals>
                    <configuration>
                        <artifactItems>
                            <artifactItem>
                                <groupId>org.eclipse.jetty</groupId>
                                <artifactId>jetty-runner</artifactId>
                                <version>9.2.3.v20140905</version>
                                <destFileName>jetty-runner.jar</destFileName>
                            </artifactItem>
                            <artifactItem>
                                <groupId>com.newrelic.agent.java</groupId>
                                <artifactId>newrelic-agent</artifactId>
                                <version>3.12.0</version>
                                <destFileName>newrelic-agent.jar</destFileName>
                            </artifactItem>
                        </artifactItems>
                    </configuration>
                  </execution>
                </executions>

そして、確かに New Relic を依存関係として追加します...

        <dependency>
           <groupId>com.newrelic.agent.java</groupId>
           <artifactId>newrelic-api</artifactId>
           <version>3.12.0</version>
        </dependency>
于 2014-12-18T19:11:02.010 に答える