昨天,我决定给NewRelic一个尝试。 我注册了一个免费帐户,并安装.Net代理,并按照指示重新启动IIS。 该代理立即开始在仪表板上显示丰富的信息,如:
如何简单地通过安装.Net代理来完成上述工作? 我担心实际的应用程序性能 – 我以前使用过分析工具,通过修改编译的DLL来大大减慢应用程序的速度。 但是,这个工具似乎没有修改任何东西。
我仍然需要弥补所有这些信息的意义,以及这对我有什么帮助,但对我来说,这看起来相当“神奇”,并且担心在离开代理运行和向信息中心上传信息方面是否存在任何性能影响。
New Relic自称他们使用.Net分析API。
https://docs.newrelic.com/docs/dotnet/new-relic-net-installation#trouble
.NET代理使用BCI(字节码注入)来应用程序和系统代码。 这是通过将New Relic代理与CLR(公共语言运行时)注册为“分析器”来完成的。 当代码被加载时,CLR调用.NET代理,如果代码是一个有趣的方法调用,代理将处理代码。
New Relic .NET Agent和传统的分析工具之间的主要区别在于,New Relic .NET Agent不能检测所有的东西 。 New Relic的开发人员已经在各种框架(如ASP.NET)和库(如SQL Server)中筛选出关键方法,代理只将代码注入到这些方法中。 传统的分析器会将代码注入所有的东西 ,这就是为什么他们通常会减慢应用程序的速度 通过有select地注入代码,New Relic可以保持低开销,但仍然可以让您深入了解应用程序的有趣部分。