我正在寻找一种工具来测量或检测台式电脑的“无响应”

我有一个客户端,它提供了一些服务器系统到医院,并提出了一个支持票据,桌面应用程序正在等待服务器。 我们做了一些广泛的testing,很清楚,服务器是响应式的,networking很好,问题出在客户端。 (在挂机过程中没有收到任何请求…)

我们来看看台式机,它们应该没问题,所以我们和软件供应商一起上门票,硬件公司说硬件是硬件,硬件公司说是软件等等

无论如何,与护士谈话时,他们说这些机器每次经常“挂”30秒,有时在需要为不舒服的患者获取数据的重要时刻,例如图表和状态。

所以我想在这些机器上粘贴一个客户端,这个客户端能够检测出键盘/鼠标的任意“无响应”,然后logging下来进行分析。

显然,我提醒一些应用程序需要资源,使问题变得更糟,所以我希望看到任何能够检测到这些键盘中断都被丢弃的工具。操作系统放弃中断,或任何适当的这里。

所以继续serverfault,这是你的机会来拯救生命…. 😉


编辑:我开始认为,与实时系统相关的一些工具可能是适当的,至less作为诊断。


像航天飞机那样想。 一旦事情启动,就是这样。 它的推出,你坚持什么安装。 所以没有我能够访问的机器的远程pipe理,我不能坐下来查看日志。 所有的情况都必须先解决。 (我的想法是,如果我可以“检测”无响应,那么我可以触发一个VB脚本将相关的日志文件和性能指标复制到一个文件,并让本地技术通过这些文件)

这将需要修改客户端应用程序,但您可以添加调用来发送和观看对服务器的调用并计入响应。 这将为您提供build立基线和build立具有问题模式的机器的方法,或者机器或应用程序事实上没有响应。

石墨对此特别好。


另一方面,如果是桌面本身就是问题,我知道没有比用户和你的直接电话号码组合更好的检测无响应的方法。

(根据定义,系统不会知道缓慢或无响应。)

这是一场无休止的战斗。 硬件公司责备指责IT员工的软件公司…责备… … … … <YEAH外包!

不幸的是,“挂”可能是由许多不同的原因造成的。 没有一种魔法工具可以监视每一个可能的“等待时间”的原因。 至于你可以做什么…是使用内置在Windows中的“perfmon”工具,并添加不同的性能计数器,你感兴趣….可以是任何东西。 (是的,你可以监控远程机器)从基本知识开始…如CPU使用率,物理磁盘队列长度,networking违反等…

如果您看到大量的CPU使用情况…是时候弄清楚应用程序在做什么以及为什么它消耗太多的CPU。

如果在磁盘队列中看到大量的事情正在等待…也许你应该优化你的磁盘(磁盘碎片整理,用更快的磁盘驱动器replace,检查错误等等)如果你还没有完成运气在这里…也许应用程序不是很好的优化。 糟糕的开发人员经常在应用程序只读取日志的最后5行时读取100mb的数据时出错。

如果你看到大量的networkingstream量…时间来找出原因。 也许有很多“重新传输”由于错误的布线/硬件…也许networking有一个循环,交换机不支持生成树…也许有很多过量的垃圾在networking上苹果通话/ ipx启用打印机…名单继续。

您甚至可能需要更进一步,实施像鲨鱼一样的东西,并监视客户端和服务器之间的数据包交换。 也许应用程序发送一个数据包到服务器,并等待(块)的响应,然后继续执行该程序。 也许服务器本身被过度征税,跟不上客户端连接的数量。

…这只是一个表面上的问题…当你无法访问源代码或者知道自己在做什么的开发人员时,对“挂起”应用程序进行故障排除是一项巨大的任务。