ruby-on-rails – 将New Relic定位为仅在1个(共3个)app服务器上运行

我们的中型轨道应用程序在三台服务器上运行(在生产中).我们刚刚完成试用期,使用New Relic作为宝石.在试用期间,我们跟踪了所有三台服务器,但要继续订阅,我们只需要(并且只有预算)来跟踪app1.

所以我们需要在app2和app3上禁用新的遗物.在与他们的客户服务沟通时,我被告知这是可能的,并已被引导到this page的最后一个条目,但我无法弄清楚这有助于我在其他两台服务器上禁用新的遗物跟踪,特别是因为有在environment.rb中没有提到newrelic_rpm – 毕竟它是一个gem,因此只在Gemfile中提到过.

在newrelic.yml中有一个agent_enabled布尔选项,我认为我们可以在每个服务器的基础上设置,但我不知道如何做到这一点.有没有办法找出我们在rails中使用的服务器,类似于RAILS_ENV变量?

解决方法

在代理读取配置值之前,使用ERB呈现newrelic.yml文件.所以你可以这样做:
monitor_mode: <%= 'app1' == Socket.gethostname ? 'true' : 'false' %>

这将使代理仅向该主机报告New Relic.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...