问题: 我刚刚使用New Relic对节点微服务进行了检测,我无法在聚合(与其他服务)和个人(没有其他服务数据)形式中查看该服务的数据。
问题阐述: 作为New Relic仪器/配置的一部分,我设置了" app_name"使用服务名称。 (这是New Relic的标准配置设置。)
完成此操作后,我可以通过从应用程序列表中选择(通过app_name)来查看运行微服务的New Relic。我可以看到概述,服务地图,交易,数据库......这些页面都非常注重我的服务,并突出显示我作为服务所有者/开发者感兴趣的指标。
然而,我的经理有一个团队,每个人都拥有/开发服务。我的经理希望所有这些服务共享相同的" app_name",这样他就可以去New Relic,看看概述,服务地图,交易......所有这些都很好地显示了所有服务中感兴趣的指标他负责。
如果我们在服务中使用唯一的名称,我的经理不会获得聚合视图。如果我们在所有服务中使用通用名称,则服务所有者无法获得有关其服务的重点视图。
我想让New Relic数据的两个消费者都能得到他们想要的东西。
这必须是具有共同解决方案的共同需求。
我尝试/学到了什么: 多个" app_name" s: 我了解到我最多可以提供三个" app_name"每个服务/应用程序的值。我试过这个,似乎工作得很好。通过提供唯一名称和通用名称,这两个应用程序名称都可以在"应用程序"选择清单。 这似乎做了我们需要的,但文档暗示这是为了支持在不同环境中运行的应用程序。 它似乎也像一个像黑客一样的"方法,因为它限于三个值,可以想象想要更多的方法来聚合数据。 如果这是推荐/常用方法,那么我很好。
类别/标签方法: 我还尝试为应用程序添加标签(标签是New Relic配置中设置的键/值对)。这似乎是一种更为通用的方法,可以根据需要进行扩展。但是,它并没有解决问题。它只允许按类别过滤应用程序/服务列表。这些类别不可用作汇总指标的方法。
洞察/基础设施: 还有New Relic功能,我还不了解。我们的帐户无法访问这些功能,因此如果这些功能正确,我们需要建议我们改进帐户。
因此。 这似乎是一个相当基本的共同愿望。我可能错过了一个明显的方法,但我还没有看到它。搜索New Relic文档有点棘手,因为它是使用New Relic功能的语言编写的,而且我不知道我是否使用了正确的搜索术语。 / p>
如果有人知道解决这个问题的一般方法,我真的很感谢您的回复。
答案 0 :(得分:0)
New Relic旨在按照您最初开始使用它的方式工作:现实世界中的一个应用程序是New Relic中的一个应用程序。每个服务或微服务都应作为APM中的单独应用程序向New Relic报告。否则,您将污染您正在接收的数据。
考虑一个应用程序面向公众(“foo”),另一个应用程序仅限内部(“bar”)的情况。如果他们都只使用一个应用程序名称(“foobar”)向New Relic报告,那么您可以在APM中打开“foobar”并看到它具有中等吞吐量但响应时间很长。实际上,面向公众的人可能会受到严重的请求或可能表现不佳,但由于您的流量较低的内部网站可以非常快速地响应每个请求平均吞吐量和您的“foobar”的平均响应时间看起来不错。
如果您的经理需要能够查看应用数据,那么他们应该使用New Relic Insights。您可以跨多个应用查询数据,例如:
SELECT * FROM Transaction WHERE appName = 'foo' OR appName = 'bar'
您可以使用数据分析中的Event explorer查找要查询的更多字段。