如何在azure web作业中使用新的自定义指标?

时间:2015-09-21 12:50:31

标签: c# azure newrelic azure-webjobs

我有一个使用c#的网络工作,我想添加一些像这样的自定义指标

NewRelic.Api.Agent.NewRelic.IncrementCounter("IncrementCounter");

据我所知,虽然我需要非IIS代理但我无法找到任何有关使用Web作业实现此功能的信息。

有没有人知道如何设置它?

1 个答案:

答案 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帐户(工具菜单创建自定义仪表板)创建仪表板。 使用指标:自定义/ *来获取所有值...选择每分钟调用以获取运行次数或平均值来计算持续时间(假设您使用了上面的代码)