我有一个ASP.NET应用程序,我试图将自定义参数记录到NewRelic。日志记录的代码如下所示:
this.searchResults = performanceMonitor.RecordQuery(() => searchManager.DoQuery(this.searchRequest));
performanceMonitor
只是一个执行此操作的对象:
public TSearchResult RecordQuery<TSearchResult>(Func<TSearchResult> query) where TSearchResult : SearchResult
{
var stopwatch = Stopwatch.StartNew();
var result = query();
stopwatch.Stop();
var externalTime = stopwatch.ElapsedMilliseconds;
var internalTime = ToMilliseconds(result.ExecutionTicks);
NewRelicHelper.AddAttributeToTransaction("QueryExternalTime", externalTime);
NewRelicHelper.AddAttributeToTransaction("QueryInternalTime", internalTime);
return result;
}
NewRelicHelper
所有的行都是NewRelic.Api.Agent.NewRelic.AddCustomParameter
和"QueryExternalTime"
来召唤externalTime
。
然而,在使用NewRelic代理的计算机上执行此代码后,当我运行NewRelic查询时,我无法在任何交易中看到QueryExternalTime
或QueryInternalTime
各自的值。