在我的Apache Storm项目中使用NewRelic?

时间:2015-02-09 14:32:22

标签: apache-storm newrelic

我想监视运行风暴进程的服务器实例。我如何在Apache Storm Projects中使用 new-relic

由于

2 个答案:

答案 0 :(得分:1)

以下是为Storm拓扑添加检测的方法:

1)将新的relic代理api依赖项包含在拓扑代码中。例如:

<dependency>
 <groupId>com.newrelic.agent.java</groupId>
 <artifactId>newrelic-api</artifactId>
 <version>${newrelic.version}</version>
 <scope>compile</scope>
</dependency>

2)添加你的@Traces等(即Spout nextTuple(),Bolt execute()等)

3)将您的代码打包准备好提交给Storm。 (但不要这样做)

4)将newrelic.jar和您编辑的newrelic.yml版本安装到Storm Supervisor服务器(只是主管,因为我们只会检测工作人员)

5)确保newrelic.jar下的logs目录可由Worker进程写入。

6)编辑Storm Supervisor的storm.yaml配置文件(STORM_HOME / conf / storm.yaml)   - 使用您的新位置添加或包含以下内容:(取决于您是否已有worker.childopts设置)

worker.childopts: "-javaagent:/opt/storm/newrelic/newrelic.jar"

7)杀死任何正在运行的拓扑。重启主管。再次提交您的拓扑。观察风暴管理程序日志,您应该看到正常的New Relic日志输出:

com.newrelic INFO: New Relic Agent: Loading configuration file "/opt/storm/newrelic/./newrelic.yml" 

答案 1 :(得分:0)

如果您使用New Relic代理支持的语言,您应该能够监控它。如果监视器没有获得足够的洞察力,可能需要使用自定义检测。