使用New Relic的NerdGraph API来获取数据
通过采用GraphQL的NerdGraph API可以访问到发送到New Relic的数据。该API仅供参考,与用于发送数据的API有所区别。
访问API的示例
以下是对GraphQL API的一种常见方法,供参考。
使用Altair GraphQL客户端来访问
-
- 在Chrome中安装Altair GraphQL Client扩展
-
- 打开Altair GraphQL Client,并在URL中输入https://api.newrelic.com/graphql
-
- 点击左侧导航中的”设置头部”图标,并添加以下头部
头部键: Api-Key
头部值: (输入API密钥)
在查询窗口中输入查询并点击“发送请求”可以发送请求,点击“文档”可以查阅API文档。
使用Curl进行访问
我們將按照以下方式進行。
NEW_RELIC_USER_KEY=(API キー)
QUERY="{requestContext { userId apiKey }}"
curl -X POST "https://api.newrelic.com/graphql" \
-H "Content-Type: application/json" \
-H "Api-Key: ${NEW_RELIC_USER_KEY}" \
-d "{\"query\":\"${QUERY}\"}"
查询示例
在上述的查询部分中,指定GraphQL查询。
获取账户信息
{
actor {
organization {
accountManagement {
managedAccounts {
name
id
regionCode
}
}
}
}
}
获取最新值
您需要在“账户ID”中指定您上面获取到的ID。
{
actor {
account(id: (アカウントID)) {
nrql(query: "SELECT latest(temperature) AS temperature FROM Metric WHERE name = 'M5Stack-test'") {
results
}
}
}
}
获取图表图片
{
actor {
account(id: (アカウントID)) {
nrql(query: "SELECT min(temperature), max(temperature) FROM Metric WHERE name = 'M5Stack-test' SINCE 1 DAY AGO TIMESERIES") {
staticChartUrl(width: 640, height: 320)
}
}
}
}