5

在我的 springboot 应用程序中,我在 application.properties 中添加了以下内容:

management.metrics.export.newrelic.api-key=MY_INSIGHT_KEY

management.metrics.export.newrelic.account-id=MY_NEWRELIC_ACCOUNT_ID

在 pom 文件中,我将 micrometer-newrelic 依赖项插入为:

<dependency>
        <groupId>io.micrometer</groupId>
        <artifactId>micrometer-registry-new-relic</artifactId>
        <version>${micrometer.version}</version>
</dependency>

但我在洞察站点上看不到任何指标。

我在配置中缺少什么?

编辑:

此链接记录了在 Spring Boot 2 中为新遗物配置千分尺。

它要求实现 NewRelicConfig 接口并用它创建 NewRelicMeterRegistry。

但是我需要将此代码放在 springboot 2 应用程序中的哪个位置。

4

2 回答 2

3

除了您的(正确的)Spring 配置之外,您还必须添加:

management.metrics.export.newrelic.enabled=true

您还需要一份 New Relic 代理 newrelic.jar 和一个 newrelic.yml 配置文件,其中包含您的许可证密钥。

要获得它,请登录您的 New Relic 帐户并转到 Insights。页面顶部的菜单在右侧有一个头肩图像和您的帐户名称。单击它,然后在下拉菜单中单击帐户设置。

在帐户设置页面的右侧有一个标题为“更新您的新遗物代理”的部分。单击 Java SE 代理的版本号以下载 zip 文件。解压 zip 文件,newrelic.jar 和模板 newrelic.yml 是您需要的文件,它们位于解压缩的顶级目录中。

编辑 newrelic.yml 并找到这一行:

license_key: '<%= license_key %>'. 

删除 <%= license_key %> 并将其替换为“帐户设置”页面上显示的许可证密钥(位于标题为“更新您的新 Relic 代理”部分的正上方)。该行现在应该看起来像这样(顺便说一句,这不是真正的许可证密钥):

license_key: 'aab23456cf2a09'

现在,当您运行应用程序时,您需要添加以下 JVM 参数:

-javaagent:newrelic.jar 
-Dnewrelic.config.file=newrelic.yml 
-Dnewrelic.environment=DEV

如果 newrelic.jar 或 newrelic.yml 不在您的工作目录中,请适当调整这些参数中的路径。如果您不提供 newrelic.jar,那么将使用 API 的存根实现,并且不会向 New Relic 发送任何内容。

如果您想从您的应用程序确认它正在向 New Relic 发送指标,请在您的应用程序属性文件中打开日志记录:

logging.level.io.micrometer.newrelic=TRACE

这将显示发送到 New Relic 的详细信息。

于 2018-07-11T12:17:53.380 回答
1

这些说明假设您没有使用 Spring Boot。Spring Boot 参考手册指出了如何正确配置 New Relic:https ://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#production-ready-metrics-export-newrelic

于 2018-06-07T14:45:51.233 回答