我有一个使用c#的网络工作,我想添加一些像这样的自定义指标
NewRelic.Api.Agent.NewRelic.IncrementCounter("IncrementCounter");
据我所知,虽然我需要非IIS代理但我无法找到任何有关使用Web作业实现此功能的信息。
有没有人知道如何设置它?
答案 0 :(得分:0)
对于初学者,here is the article that explains things on how to get New Relic working with a Webjob.
总结......
对于代码,您必须安装nuget包:NewRelic.Agent.Api并编写一些新的遗留API调用代码...例如,某些自定义事件的日志时间:
public void LogTimeTaken(string taskType, string eventType, long duration)
{
var metric = string.Format("Custom/{0}_{1}", taskType, eventType);
NewRelic.Api.Agent.NewRelic.RecordResponseTimeMetric(metric, duration);
}
在webjob的App.config中配置New Relic应用程序设置:
<appSettings>
<add key="NewRelic.AppName" value="[replace_with_the_name_you_want_reported_to_new_relic]" />
<add key="NewRelic.AgentEnabled" value="true" />
<add key="NewRelic.LicenseKey" value="[replace_with_your_key]" />
</appSettings>
在Web应用程序的Kudu门户中... AKA SCM ...添加&#34; New Relic&#34;网站扩展
一旦您的webjob部署并运行,您就可以从New Relic帐户(工具菜单创建自定义仪表板)创建仪表板。 使用指标:自定义/ *来获取所有值...选择每分钟调用以获取运行次数或平均值来计算持续时间(假设您使用了上面的代码)