如何将HTTP请求和错误发送至New Relic的Network板块对应分区
可以实现,具体有两种可行方案,操作步骤如下:
方案一:使用New Relic Browser Agent 自定义埋点(推荐,操作成本最低)
- 首先确认你的站点已正确部署New Relic Browser JS探针,完成基础上报配置
- 在指定URL的请求逻辑中添加埋点:
成功请求上报调用方法:newrelic.addPageAction('HttpRequestSuccess', { url: '目标URL', statusCode: 响应状态码, duration: 请求耗时, 其他自定义字段 })
失败请求上报调用方法:newrelic.noticeError('HttpRequestFailed', new Error('请求异常'), { url: '目标URL', statusCode: 响应状态码, errorMsg: 错误详情, 其他自定义字段 }) - 进入New Relic后台配置分区展示规则:
打开Network板块下的HTTP requests分区,新增筛选条件:pageAction.name = 'HttpRequestSuccess'且url为你指定的监控地址,保存后即可展示所有成功请求
打开HTTP errors分区,新增筛选条件:error.class = 'HttpRequestFailed'且url为你指定的监控地址,保存后即可展示所有失败请求
方案二:通过New Relic Event API 自主上报(适合无法部署官方探针的场景)
- 首先获取你的New Relic账号的Insert API Key、账号ID,开通事件写入权限
- 按要求组装上报数据:成功请求按照
BrowserInteraction事件规范组装字段,失败请求按照JavaScriptError事件规范组装字段,必填字段需包含timestamp、requestUrl、statusCode、domain,字段命名需和New Relic Network板块的内置字段匹配 - 在请求的成功/失败回调中调用接口上报数据,示例上报命令如下:
curl -X POST https://insights-collector.newrelic.com/v1/accounts/替换为你的账号ID/events -H "Api-Key: 替换为你的Insert API Key" -H "Content-Type: application/json" -d '[{"eventType": "BrowserInteraction", "requestUrl": "替换为指定监控URL", "statusCode": 200, "duration": 152, "domain": "你的站点域名"}]' - 后台分区配置逻辑和方案一完全一致,配置对应筛选规则即可
效果验证
上报测试请求后1-2分钟即可在对应分区查看到数据,参考效果如下:
内容的提问来源于stack exchange,提问作者user6747225
相关产品推荐
相关产品推荐

