【发布时间】:2013-12-19 11:14:36
【问题描述】:
我已尝试按照https://docs.newrelic.com/docs/dotnet/dotnet-agent-custom-metrics 上的 New Relic 文档在我们的 Web 应用程序上设置自定义指标,但无法使其正常工作。
在 New Relic 的踪迹中,我们看到了很多
应用程序代码(在 System.Web.Mvc.MvcHandler.BeginProcessRequest() 中) - 我们的代理无法看到您的 .NET 代码中发生的情况。请参阅我们的文档,了解如何向您的应用添加自定义指标。
所以,我创建了一个 MyInstrumentation.xml 文件,将它放在扩展文件夹中,但仍然没有看到任何其他指标。我做错了什么?
这是我的自定义指标的示例 XML:
<?xml version="1.0" encoding="utf-8"?>
<extension xmlns="urn:newrelic-extension">
<instrumentation>
<tracerFactory>
<match assemblyName="WebSite.Area" className="WebSite.Area.Controllers.MyController">
<exactMethodMatcher methodName="MyMethod" />
</match>
</tracerFactory>
<tracerFactory>
<match assemblyName="Business.CustomerBL" className="Business.CustomerBL.MyBusinessClass">
<exactMethodMatcher methodName="SaveCustomer" />
</match>
</tracerFactory>
</instrumentation>
</extension>
【问题讨论】:
-
我已经离开了一天,现在我看到了我丢失的数据。我是否必须重新启动某些东西才能获取我的更改?
-
是的,为您的自定义指标添加扩展文件后,您需要重新启动 IIS。更具体地说,如果您要收集的指标适用于不受信任的程序集(不在 GAC 中)中的方法,则需要应用程序池回收,如果您要收集的指标适用于受信任程序集中的方法(在 GAC 中)。