首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Sitecore中使用New Relic

在Sitecore中使用New Relic
EN

Stack Overflow用户
提问于 2013-07-05 13:22:29
回答 3查看 2.1K关注 0票数 4

我正在用Sitecore CMS测试New Relic。所有New Relic web事务都被发送到items布局文件,所以我无法深入到New Relic中的item级别的详细信息。

我正在尝试使用New Relic API来调用SetTransactionName并将其设置为items,但我似乎无法使其工作。我已经创建了一个httprequestbegin流水线处理器,并且我将它放在了最后,紧接着:

代码语言:javascript
复制
<processor type="Sitecore.Pipelines.HttpRequest.ExecuteRequest, Sitecore.Kernel"/>

我已经安装了New Relic API程序集,并且也在我的bin文件夹中。下面是我正在尝试运行的代码行。

代码语言:javascript
复制
NewRelic.Api.Agent.NewRelic.SetTransactionName("Custom", Sitecore.Context.RawUrl);

知道我可能做错了什么吗?所有web事务仍显示为项目布局文件。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-07-05 23:26:08

我在httpRequestProcessed管道中设置事务名称,这是可行的。开始使用httpRequestBegin,但我发现这并不是每次都能正常工作。还要记住,在NewRelic获取请求之前,执行请求的时间必须超过500ms。

我使用Sitecore做的其他集成点:

  • Log4Net附加器,使用NoticeError
  • HttpModule向NewRelic报告拾取Application_Error并向NewRelic报告使用NoticeError
  • Use项目路径命名事务,并使用AddCustomParameter添加语言、数据库、用户等
票数 1
EN

Stack Overflow用户

发布于 2014-02-12 18:18:17

市场上有一个模块可以解决所有这些问题:

http://marketplace.sitecore.net/en/Modules/New_Relic.aspx

票数 1
EN

Stack Overflow用户

发布于 2013-07-08 19:07:00

大约18个月前,当我们开始在我们的Sitecore应用程序中使用New Relic时,我们也遇到了类似的问题。不幸的是,当时没有人将New Relic与Sitecore一起使用。我们最终决定将以下代码添加到站点中的每个页面都继承的基础Page类中:

代码语言:javascript
复制
    // --- Set custom transaction name for New Relic.
NewRelic.Api.Agent.NewRelic.SetTransactionName("Pages", Sitecore.Context.Item.Template.FullName));

// --- Set custom parameter to store raw url to assist with diagnostics.
NewRelic.Api.Agent.NewRelic.AddCustomParameter("RawUrl", Request.RawUrl);

对于我们的应用程序,模板名称足以区分趋势,我们添加了自定义参数来填充整个RawUrl (我们注意到了New Relic没有为我们捕获完整的url时的奇怪之处,现在可能不再是这样了)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17481590

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档