在我的apache storm项目中使用newrelic?

h6my8fg2  于 2021-06-21  发布在  Storm
关注(0)|答案(2)|浏览(378)

我想监视运行storm进程的服务器示例。如何在我的apachestorm项目中使用newrelic。
谢谢

4dc9hkyq

4dc9hkyq1#

如果您使用的是newrelic代理支持的语言,您应该能够监视它。如果监视器没有从盒子中获得足够的洞察力,那么可能有必要使用定制的工具。

hgb9j2n6

hgb9j2n62#

以下是如何为storm拓扑添加工具:
1) 将newrelic代理api依赖项包含到拓扑代码中。例如:

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

2) 添加@traces等(如spoutnexttuple()、bolt execute()等)
3) 打包您的代码以提交给storm(但现在还不做)
4) 将newrelic.jar和您编辑的newrelic.yml版本安装到storm supervisor服务器上(只安装管理器,因为我们只为工人安装仪器)
5) 确保newrelic.jar下的logs目录可由工作进程写入。
6) 编辑storm supervisor的storm.yaml配置文件(storm\u home/conf/storm.yaml)-使用newrelic位置添加或包括以下内容:(取决于是否已经有worker.childopts设置)

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

7) 删除任何正在运行的拓扑。重新启动监控程序。再次提交拓扑。观看storm supervisor日志,您应该会看到正常的new relic日志输出:

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

相关问题