Testing 如何解决不可生产、随机且无法立即测试更改的问题?

Testing 如何解决不可生产、随机且无法立即测试更改的问题?,testing,diagnostics,Testing,Diagnostics,我想我会把这个扔出去看看其他人的经历是什么样的 我遇到一个系统在工作时出现问题,它停止处理队列中的作业,可以说是“阻塞”。一旦服务重新启动,软件将处理队列,一切恢复正常 根据我目前的经验,我一生都无法找出造成这些中断的原因。这一点,我自己也无法重现。队列在所有不同的时间间隔内失败,有时连续运行一个月,有时在一天内失败两次。从那以后,我在部门内涉及了两个不同的供应商和不同的同事,每个人都被难住了,而且已经被难住了几个月 自我开始以来,我们已经将处理隔离到单个服务器,并启动了发送给供应商的日志记录。

我想我会把这个扔出去看看其他人的经历是什么样的

我遇到一个系统在工作时出现问题,它停止处理队列中的作业,可以说是“阻塞”。一旦服务重新启动,软件将处理队列,一切恢复正常

根据我目前的经验,我一生都无法找出造成这些中断的原因。这一点,我自己也无法重现。队列在所有不同的时间间隔内失败,有时连续运行一个月,有时在一天内失败两次。从那以后,我在部门内涉及了两个不同的供应商和不同的同事,每个人都被难住了,而且已经被难住了几个月

自我开始以来,我们已经将处理隔离到单个服务器,并启动了发送给供应商的日志记录。他们都不知道问题出在哪里

我们在这里和那里更新了一些设置,升级了客户端和服务器,但我们不知道我们正在做的事情是否有助于整体解决方案

所以我有一个问题,似乎是不可生产的、随机的和不稳定的。

有没有人遇到过类似的情况? 解决这种情况的方法有哪些

任何分享的意见或经验都会很好

干杯


编辑::启动日志记录,将所有组件更新为最新版本,并确保正确排除防病毒,到目前为止,它还没有阻塞一个多月

使用可以在生产中打开的日志框架。一开始可能需要进行太多的日志记录,但这应该有助于缩小问题的范围,随着时间的推移,可以缩小日志记录的范围,同时增加详细性(这是一个词吗)除了Kelly指出的日志记录之外,还有可能发生死锁,因为事情似乎停止了。如果这是一个Java应用程序,一个选项是使用并连接到JVM实例。jconsole有一个detect deadlock选项,它可以在发生挂起时提供非常有价值的信息


如果这不是一个Java应用程序,也可能不是一个.NET应用程序,那么您可以利用它。

是否有任何东西会影响程序的内存使用?我想你已经做了负载测试和分析了吧?除此之外,我能想到的唯一一件事是它会阻塞某些属性可能不太明显的工作。。。你看到的干扰工作有什么相似之处吗?