我有一位客户遇到了我们的软件不时崩溃的问题。 不幸的是,如果在交易过程中拔掉网线,我们的软件每次都会崩溃,没有任何事情可以做到(或者至less从未做过)。
我相信他们的networking不时经历着打嗝,导致软件崩溃,但我不知道如何去certificate它(我的背景是编程和数据库,但没有太多networking)。
当我从服务器ping任何客户机,他们都在不到一毫秒的时间内响应,但每当它崩溃,我们可以在事件日志中find某种错误信息关于失去连接到一个文件(对不起,我知道这真的是模糊的但是我自己还没去过这个地方,去的人也没把它写下来)。
我真的不知道如何去testing这样的事情,甚至不知道我应该寻找什么样的networking工具。 如果有人能指引我正确的方向,我将不胜感激!
如果您感兴趣的是丢包和延迟,那么Smokeping是一个非常漂亮的监控工具。
如果这不符合法案, 这个问题可能有一些你感兴趣的答案。
要明确:这些问题可能会非常令人沮丧排除故障。 监测工具很可能不会给你任何有用的信息。 你应该考虑用来追踪这个最可能的工具是数据包捕获。 在客户端和服务器上都select一个,然后将时间戳与客户应用程序崩溃时的时间戳相关联,也可能与Smokeping(或您select的任何其他监视工具)的数据相关联。
如果有问题的客户端机器是在一个体面的pipe理型交换机上,networking工程师应该能够告诉你机器的networking端口是否在振荡。 坏的电缆,flakey网卡,交换机上的坏端口,驱动程序问题,都可能导致networking端口本身振荡。
在相关时间周围检查客户端计算机上的Windows事件日志。 在事件查看器中创build一个自定义视图,该视图包含所有事件日志,其中包含崩溃周围的自定义时间段,这将允许您查看在该时间段内窗口注意到的所有事件。
你可以设置从服务器到客户端的一个小的时间间隔 – 每秒两次 – 让它在后台运行,直到出现问题。 将输出logging到文件中,以免丢失结果。
如果您要尝试在多台机器上关联日志,请确保它们的时钟相对同步。