新文物的顾客经常问如何陈列开放在新的Relic仪表盘上提醒事件或违规。一种方法是配置New Relic警报,将事件数据发送到New Relic Insights使用webhook,但每当一个事件或违规被打开、确认或关闭时都会创建一个事件。

虽然这些数据很适合在事实之后分析警报事件,回答诸如“哪些警报条件最常被违反?”“哪些实体产生的违规行为最多?”以及“mean time to resolution (MTTR)是什么?”“如果你只想看到事件和违规,这是没有帮助的目前开放。你可以在警报UI中查看打开的事件和违规的列表,但是许多客户希望在仪表板上显示这些数据,以及其他性能指标。

幸运的是,新遗迹休憩API包括返回警报列表的端点事件违反。这些端点接受only_open参数指定它们应该只返回当前打开的项。这很好,但是如何在仪表板上显示这些信息呢?

跟随此示例,了解如何使用自定义脚本,通过两个简单步骤创建显示open Alerts违规的指示板。

1.运行open violations脚本

这个脚本实际上是New Relic人造纤维API测试它利用了合成材料安全证书。要使用这个脚本,你需要:

  1. 安全证书为你的新Relic REST API密钥,一个见解插入键,你的新Relic帐户ID
  2. API测试监测器脚本如下所示。
    注意:您将希望调度监视器每分钟至少从一个位置运行一次,以减少延迟。

该脚本查询New Relic REST API以获得一个开放违规列表,在该列表上迭代,并生成一个调用的Insights定制事件AlertViolationsSample关于每一次违规的信息。

要使用脚本,请将其粘贴到合成程序中脚本编辑器

const请求=需要(“请求”);var{Content-Type': json/application', 'X-Api-Key': $secure。API_KEY};varoptions = {url: 'https://api.newrelic.com/v2/alerts_violations.json', qs: {'only_open': 'true'}, headers: headers};var违反=;//公开违反request.get(选项,函数(err, response, body) {如果(响应。statusCode == 200) {vardata = JSON.parse(身体);违反= data.violations;//每一次违反…(var我= 0;我< violations.length;我+ +){/ /……创建见解事件insertViolationEvent(违规[我]);}}});函数insertViolationEvent(违反){var{Content-Type': 'json/application', 'X-Insert-Key': $secure. json/application'INSERT_KEY};varoptions = {url: 'https://insights-collector.newrelic.com/v1/accounts/' + $secure。ACCOUNT_ID + '/events', headers: headers} options['body'] = JSON。stringify({'eventType': 'AlertViolationsSample', 'id':违规。id、“标签”:侵犯。标签,“持续时间”:侵犯。持续时间,'policy_name': violation.policy_name, 'condition_name': violation.condition_name, 'priority': violation.priority, 'opened_at': violation.opened_at, 'entity.product': violation.entity.product, 'entity.type': violation.entity.type, 'entity.id': violation.entity.id, 'entity.name': violation.entity.name } ); request.post(options); }

2.创建仪表板

一旦你收集了数据,你就可以使用New Relic Insights或新遗迹一个图表建设者查询New Relic查询语言),并创建一个仪表板,如下所示:

选择最新的(持续时间) / 60作为'Duration (min)', latest(condition_name), latest(label), latest(policy_name), latest(' entity.name '), latest(优先级)AlertViolationsSample方面id

New Relic One仪表盘显示了New Relic警报中的公开违规。

根据需要增强脚本

如果您想在其他地方运行脚本,例如作为AWS Lambda函数,只需替换脚本中的安全凭据值(以安全的美元)与你的新文物帐户价值。

还要注意,这个脚本查询打开违反从REST API;你可能更喜欢打开事件代替。同样,没有问题:只需将脚本中的API端点更改为https://api.newrelic.com/v2/alerts_incidents.json,并修改这是很有必要的。

最后,如果您有大量的开放事件或违反,那么REST API分页的结果。您必须检查响应,看看是否有其他页面;如果有,您可以再次调用API,传递一个页面参数请求所需的页面。

如果您有兴趣了解更多关于我们的api,请查看New Relic开发商中心,并在新遗迹探险者中心

菲尔·韦伯(Phil Weber)是新Relic大学的高级技术培训专家。他从事软件开发工作超过15年,自2005年以来一直担任技术培训师。作为顾问,他为英特尔和凯萨永久等客户工作过。查看贴子

有兴趣为New Relic博客写作吗?亚搏体育登入网给我们发一份建议书!