Monitoring 在查询New Relic v1 REST API上的指标时,如何指定jvm代理id?
我试图从我的应用程序中获取JVM指标,该应用程序使用三个独立的JVM运行三个实例。我可以在NewRelic仪表板的Monitoring->JVMs选项卡上看到我感兴趣的不同数据。通过点击REST API,我还可以获得其中一个JVM所需的信息,如下所示:Monitoring 在查询New Relic v1 REST API上的指标时,如何指定jvm代理id?,monitoring,newrelic,Monitoring,Newrelic,我试图从我的应用程序中获取JVM指标,该应用程序使用三个独立的JVM运行三个实例。我可以在NewRelic仪表板的Monitoring->JVMs选项卡上看到我感兴趣的不同数据。通过点击REST API,我还可以获得其中一个JVM所需的信息,如下所示: % curl -gH "x-api-key:KEY" 'https://api.newrelic.com/api/v1/applications/APPID/data.xml?metrics%5B%5D=GC%2FPS%20Scavenge&am
% curl -gH "x-api-key:KEY" 'https://api.newrelic.com/api/v1/applications/APPID/data.xml?metrics%5B%5D=GC%2FPS%20Scavenge&field=time_percentage&begin=T1&end=T2'
(我已经替换了一些字段的值,但这是我请求的完整形式。)
我得到一个回复,其中包括一长串元素,如下所示:
<metric name="GC/PS Scavenge" begin="T1" end="T2" app="MYAPP" agent_id="AGENTID">
<field name="time_percentage">0.018822634485032824</field>
</metric>
0.018822634485032824
所有的metric
元素都包含相同的agent\u id
字段,我从未指定要使用哪个agent。我怎样才能:
- 获取所有代理的指标
- 指定我感兴趣的代理(这样我可以发送多个请求,每个JVM一个请求)
代理id
可以是一个特定的JVM实例,虽然不能同时请求多个代理,但可以请求单个JVM的指标
您可以通过以下两种方式之一获取JVM的代理id:
1) 对的API调用
https://api.newrelic.com/api/v1/accounts/:account_id/applications/:app_id/instances.xml
2) 浏览到NewRelic用户界面中的JVM(选择应用程序后使用右上角的“JVM”下拉列表),然后从URL中获取ID
ID看起来类似于[account\u ID]\u i2043442
有些数据不可用,按JVM细分,最明显的是调用threshold\u values.xml
将无法工作,如果代理id不是应用程序
v1api的完整文档:
agent\u id
可以是一个特定的JVM实例,虽然不能一次请求多个代理,但可以请求单个JVM的度量
您可以通过以下两种方式之一获取JVM的代理id:
1) 对的API调用
https://api.newrelic.com/api/v1/accounts/:account_id/applications/:app_id/instances.xml
2) 浏览到NewRelic用户界面中的JVM(选择应用程序后使用右上角的“JVM”下拉列表),然后从URL中获取ID
ID看起来类似于[account\u ID]\u i2043442
有些数据不可用,按JVM细分,最明显的是调用threshold\u values.xml
将无法工作,如果代理id不是应用程序
V1 API的完整文档: