如果这是一个重复的问题,我提前道歉。我相信有人之前曾问过它,但我没有找到它。无论如何,它就在这里。
我有一个复杂的Web应用程序正在生产中。有时,我们会收到记录的错误,包括堆栈跟踪,但很难确定。我想访问错误的行号,这需要调试文件存在于服务器上。
出于安全原因,我总是看到很多关于不包括这些文件的建议。在这种情况下,我不太关心这一点。在生产网站上包含调试文件是否有任何其他缺点,例如性能下降?
编辑: 为了稍微改进一下这个问题,我建议仍然将应用程序编译为Release模式,但也要在解决方案中包含PDB文件。
答案 0 :(得分:0)
根据您的正常运行时间要求,一个选项是并排部署Release和Debug文件夹,并在它们之间切换。基本上你按照正常情况拥有bin
文件夹,并且旁边有一个bin_debug
目录。
在正常生产期间,您可以像往常一样从bin目录运行。如果您想要追踪错误或错误,请将bin
重命名为bin_release
,将bin_debug
重命名为bin
。在追踪错误的同时,您将在几天内遇到性能损失,但您将收到更详细的错误消息。一旦确定了问题,就可以切换回发布目录。