在过去的几天里,我遇到了一个问题,每隔10-15分钟,我的整个服务器就会失去响应,关闭所有的TCP连接,大约3分钟。
我最终发现连接被关闭了,因为在这3分钟的时间里,所有的16个核心都达到了稳定的100% CPU。
我正在积极地试图找出什么是最大的CPU,然而,由于服务器上的一切完全冻结(即使在控制台),我无法检查足够快,以找出它是什么。
这显然是个大问题,我需要马上处理。有没有办法记录这个CPU峰值,并将其与其他通信量区分开来?
发布于 2014-08-14 00:43:30
我目前唯一能想到的答案是有点烦躁,但它可能会给你一个答案。首先是捕获导致问题的过程。请在命令窗口中安排如下步骤,每分钟运行一次:
wmic path Win32_PerfFormattedData_PerfProc_Process get Name,PercentProcessorTime或者,您可以对其进行调度,并将命令行更改为将其输送到>>文件中。
这将为您提供所有正在运行的进程的CPU使用情况。在那里,您可以使用像ProcDump (http://technet.microsoft.com/en-us/sysinternals/dd996900)这样的工具来监视麻烦的应用程序,并在CPU达到一定百分比时转储有关它的信息。
希望这能帮上忙。
发布于 2014-08-14 00:42:05
尝试一下:在事件中,查看器对日志进行保存,并在另一台机器上打开日志,这样您就有时间查看它们了。通过选择要保存的日志并选择actions -保存为。如果将它们保存为默认文件格式,则可以在另一台计算机上的事件查看器中打开它们。我想甚至是一个windows桌面。您还可以将它们保存为.csv。
这里的说明http://technet.microsoft.com/en-us/library/cc749339.aspx
https://serverfault.com/questions/620288
复制相似问题