问题标签 [system.diagnostics]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1914 浏览

.net - 如果类别不存在,PerformanceCounterCategory.Exists 会非常慢

我有一种图书馆,它使用一堆自己的性能计数器。但即使没有安装性能计数器,我也希望我的库能够正常工作。

所以我在 PerformanceCounter 周围创建了包装器,并在第一次使用时检查 PerfCounter 是否存在。如果它们存在,那么我将使用本机 PerformanceCounter,而不是使用不执行任何操作的包装器。

所以要检查性能计数器是否存在,我使用 PerformanceCounterCategory.Exists

问题是,如果没有这样的类别,那么 PerformanceCounterCategory.Exists 调用(在我的机器上)大约需要 10 秒!不用说它太慢了。

我能做些什么?

自己尝试的代码: using System; 使用 System.Diagnostics;

0 投票
1 回答
193 浏览

asp.net - 我怎样才能找到导致我的交易得到提升的原因?

我有提供 Web 服务(.asmx 和 WCF 的混合物)的网站,该网站主要使用 LINQ to SQL 和 System.Transactions。有时我们会看到事务被提升为分布式事务,这会导致问题,因为我们的 Web 服务器与我们的数据库隔离,因此我们无法使用 MSDTC。

通过将以下内容添加到我的 web.config 中,我已经为 System.Transactions 配置了跟踪:

它非常有趣,并在交易被提升时向我显示,但我发现它并没有真正帮助找出原因。

ADO.NET 是否有等效的跟踪机制,可以在创建连接时向我显示,包括影响池的变量(用户、cnn 字符串、事务范围)?

0 投票
2 回答
466 浏览

c#-4.0 - C# 4.0:有没有办法检查 System.Diagnostics.Process.Start 中是否不存在应用程序

我想使用以下代码打开任何文件类型:

有没有办法检查系统应用程序是否存在?

例如:pdf,本机没有acrobat reader。

我创建了一个try catch,但我对它不满意,我想模仿windows打开文件的行为。它有一个搜索网络/手动搜索的选项。

0 投票
4 回答
6407 浏览

.net - .net 诊断最佳实践?

我们最初没有使用任何日志记录或调试跟踪,但在花了几周时间来跟踪一些数据损坏后,我们决定将所需的 Debug.Write 和 Trace 用于生产和 Debug.Assert

所以现在的问题是使用调试和跟踪日志的最佳实践是什么。我只是在寻找一些通用的东西。

这对于通用目的是否足够好,我在那里做错了什么?

我们希望坚持使用 .net System.Diagnostics,而不是 log4net 等其他替代方案。

System.Diagnostics 中还有其他有用的东西吗?

0 投票
7 回答
17838 浏览

c# - Can Stopwatch be used in production code?

I need an accurate timer, and DateTime.Now seems not accurate enough. From the descriptions I read, System.Diagnostics.Stopwatch seems to be exactly what I want.

But I have a phobia. I'm nervous about using anything from System.Diagnostics in actual production code. (I use it extensively for debugging with Asserts and PrintLns etc, but never yet for production stuff.) I'm not merely trying to use a timer to benchmark my functions - my app needs an actual timer. I've read on another forum that System.Diagnostics.StopWatch is only for benchmarking, and shouldn't be used in retail code, though there was no reason given. Is this correct, or am I (and whoever posted that advice) being too closed minded about System.Diagnostics? ie, is it ok to use System.Diagnostics.Stopwatch in production code? Thanks Adrian

0 投票
5 回答
542 浏览

.net - 有没有扩展 System.Diagnostics.Trace 的库?

有没有扩展 System.Diagnostics.Trace 的好库?

我正在寻找的一些功能。

  • 滚动原木
  • smtp

而“使用 log4net”不是答案。原因是我不想引用任何第三方程序集。

回复评论:因为使用trace不会污染业务代码。我只调用 Trace.XXX。使用 Trace 的扩展可以在配置或启动时的少量代码中完成。如果我使用 log4net,则需要到处引用它。

0 投票
1 回答
2429 浏览

c# - PerformanceCounter.NextValue 在某些机器上挂起

我不知道为什么,但是许多计算机都挂在以下操作上:

在某些计算程序上,程序在第一次调用时完全挂起UpdateStats(),而另一些则经历 100% 的 CPU 负载,但程序工作(缓慢)。其他计数器new PerformanceCounter("Processor", "% Processor Time", "_Total")似乎工作正常。

任何建议为什么会这样?

0 投票
2 回答
2030 浏览

process - 从 exe 文件运行方法

我需要从 exe 文件中调用一个方法

我不知道如何调用方法和传递参数

请问有什么帮助吗??

可执行文件是我的,但我在使用网络应用程序时遇到了问题,所以我认为最好将其称为进程

谢谢

0 投票
1 回答
2130 浏览

.net - 诊断跟踪:如何仅跟踪一个 WCF 终结点

我有一个连接到多个端点的 WCF 客户端;一些 net.pipe,一些 https。

net.pipe 端点有相当多的喋喋不休,但它们工作可靠,所以我不想跟踪这些,因为日志文件变得太大并且太快混乱。但是,https 端点相当新,我需要跟踪那个端点。如何仅跟踪该端点,而不跟踪其他 net.pipe 端点?如果我必须跟踪所有 https 端点并且没有 net.pipe 端点,那就没问题了,尽管能够打开和关闭单个端点会很好。另外,我希望有一个全部 .config 选项(即,不编写我自己的跟踪侦听器)。

谢谢!

0 投票
4 回答
427 浏览

.net - 不调用 Process.Close() 是否存在重大问题?

Close()System.Diagnostics.Process 类是否需要该方法?

编辑:Process正在监视一个控制台应用程序,该应用程序几乎立即终止......

比利3