我目前正在开发一个网络应用程序。基本上在生产环境中部署为.war文件。服务器是tomcat7。 由于代码是用java编写的。服务器端有ocassional日志语句。 如果我有一个问题要解决,我没有重复的数据集/数据子集,就像生产一样。所以我面临的问题是在测试的情况下复制场景。
由于这是生产环境,附加一个远程调试器,意味着当我逐步通过断点时,该功能将停止,所以我无法远程调试。
所以,目前,我对系统行为的唯一可见性是,代码库和代码中的日志语句。
您如何建议我在不重新启动应用程序的情况下调试服务器端代码。
对此问题的任何见解将不胜感激。
谢谢。
答案 0 :(得分:0)
由于无法在生产中附加远程调试器,除了日志和匹配代码中的行号之外,没有其他方法可以调试代码。
1)您可以询问导致问题的示例场景,并尝试在附加调试器的开发环境中重现它。
2)您可以将日志级别微调到DEBUG模式以捕获更多有用的日志。
3)检查应用程序日志,服务器日志,访问日志等各种日志
3)您可以询问导致问题的测试数据并在开发环境中尝试相同的操作。
理想情况下,您需要一个具有最少模拟数据的模拟生产环境,以便您可以附加调试器并进入代码。
否则重现生产问题将是耗时且不可能的。