TeamCity 的 DotTrace 插件 - 进程过滤器不排除 nunit3-console.exe

DotTrace plugin to TeamCity - process filter is not excluding nunit3-console.exe

我想寻求一些关于为我们的一个 TeamCity 构建设置 DotTrace 插件的帮助 - 到目前为止,我已经按照此处的说明进行操作,并得到了一个有时有效的构建:

https://blog.jetbrains.com/dotnet/2016/02/16/performance-profiling-in-continuous-integration-an-updated-dottrace-plugin-to-teamcity/

但是,这有时会失败,因为构建会生成两个快照(snapshot.dtpsnapshot-2.dtp).

经过反复试验,我发现有时失败的原因是因为我的测试有时会出现在第一个 .dtp 文件中(这是 DotTrace 的 Reporter.exe 使用的文件),有时在第二个文件中。

另一个 .dtp 文件似乎与 nunit3-console.exe 程序相关联,因此应该排除在外,因为我已将此程序添加到 TeamCity 构建设置中的“进程过滤器”:

*nunit3-console.exe

(我已经尝试了这里的所有组合,包括输入完全限定的文件路径)

当探查器为 运行 时,这会在 dotTrace.project.xml 文件中添加以下行:

<ProcessNameFilter>*nunit3-console.exe</ProcessNameFilter>

我的理解是,这应该会停止分析指定的进程(这样就不会生成额外的 .dtp 文件。但是,当构建 运行ning 时,我在日志文件:

[16:01:04][Step 12/14] dotTrace Console Profiler 2018.3.2 build 777.0.20190124.112417. Copyright (C) 2019 JetBrains s.r.o.

[16:01:10][Step 12/14] Profiling in progress...

[16:01:10][Step 12/14] Executable='[file path]\nunit3-console.exe' (non-child) is being passed for filtering

[16:01:10][Step 12/14] Passed filter executable='[file path]\nunit3-console.exe'

这表明 nunit3-console.exe 没有被排除,正如过滤器建议的那样。

我能找到的最接近的建议在这里,它似乎暗示了我在做什么,但仅适用于 NUnit 2:

https://www.jetbrains.com/help/profiler/Profiling_Guidelines__Profiling_Unit_Tests.html

有谁知道有什么方法可以确保 nunit3-console.exe 被排除在外,这样它就不会生成快照文件吗?

此插件设计生成多个快照,并根据所有快照生成报告,因此此处不需要过滤。

我创建了 issue