为 .NET Core 2.0 应用程序设置新的遗迹监控

Setting up new relic monitoring for .NET Core 2.0 application

我需要为托管在同一台服务器上的多个 .NET Core 2.0 Web 应用程序设置监控。 据我所知,你应该为此添加环境变量,所以我在 web.config 中添加了这些行并且 New Relic 代理正确启动:

<environmentVariable name="CORECLR_ENABLE_PROFILING" value="1" />
<environmentVariable name="CORECLR_PROFILER" value="{36032161-FFC0-4B61-B559-F6C5D41BAE5A}" />
<environmentVariable name="CORECLR_NEWRELIC_HOME" value="C:\Program Files\New Relic\.NET Agent NetCore2.0" />
<environmentVariable name="CORECLR_PROFILER_PATH" value="%CORECLR_NEWRELIC_HOME%\NewRelic.Profiler.dll" />
<environmentVariable name="NEW_RELIC_APP_NAME" value="Some App Name" />

但是,在 ASP.NET Core 2.0 中,web.config 是在您发布应用程序时自动生成的,因此它不是为 CI/CD 管道定义变量的合适方式。有没有其他方法可以在其他地方指定这些变量,例如在 appsettings.json 中?或者我怎样才能将它们自动添加到自动生成的 web.config 文件中?

在我的相关搜索中,我发现了一种在我的 .net 核心应用程序中设置变量的简便方法

"CoreApp": {
      "commandName": "Project",
      "launchBrowser": true,
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Production",
        "CORECLR_ENABLE_PROFILING": "1",
        "CORECLR_PROFILER": "{36032161-FFC0-4B61-B559-F6C5D41BAE5A}",
        "CORECLR_NEWRELIC_HOME": "PATH_TO_INSTALL",
        "CORECLR_PROFILER_PATH": "PATH_TO_INSTALL\NewRelic.Profiler.dll"
      },

查看更多讨论here