我正在寻找处理一个相当高级别的问题的具体建议:如何调试软件(如果你感兴趣的话,Genetic Algorithm):
到目前为止,我已尝试过以下方法:
检查调试器中的各个线程:这是有问题的,因为大多数任务成功完成(在问题发生之前设置断点会导致许多误报)。另一方面,如果我设置一个断点,一旦任务处于不良状态就停止,我不能回过头来弄清楚我是如何在那里结束的。
在理论上倾倒跟踪日志是很好的(我可以在发现一个糟糕的状态时回过头来)但是我还没弄清楚如何将一个任务的状态序列化为一个单位人类可读的格式。
在一个理想的世界中,我希望能够为一个糟糕的状态设置一个断点,然后使用调试器来检查我是如何达到这一点的。
你以前遇到过这种问题吗?你是如何调试它的?
答案 0 :(得分:0)
我做了以下事情:
然后,当您诊断问题时,使用工具将日志过滤到您感兴趣的任务。“穷人”""这样做的方法是使用grep。富人""方法是使用类似Splunk的东西。
使用调试器的策略不会让您走得更远,因为(就您的诊断数据而言),您将受限于您可以承受的能力和#34;保持堆积。