Преимущества и недостатки включения файлов PDB с Вашим приложением выпуска

У меня есть приложение VB.net. В настоящее время версия выпуска приложения производится без файла PDB. Это дает мне журналы ошибок, испытывающие недостаток в полезных деталях, таких как номера строки. Я смотрю включая файлы PDB с будущими сборками, но я хотел бы знать то, что преимущества и недостатки этого (мудрая производительность, мудрый размер, кодируйте мудрую безопасность),

10
задан zeocrash 13 May 2010 в 09:51
поделиться

4 ответа

Когда вы развертываете символы отладки для своего приложения, кому-то становится очень легко прийти и реконструировать вашу работу, что некоторые люди считают нежелательным. Точно так же вам нужно развернуть больше файлов, и ваш развертываемый проект станет больше. Сами файлы PDB не замедляют работу приложения, поскольку доставка PDB не всегда исключает отказ от оптимизаций (вам просто нужно быть осторожным - настройки проекта «Отладка» по умолчанию не оптимизируют ваши результаты, когда они генерировать PDB).

11
ответ дан 3 December 2019 в 16:09
поделиться

Я знаю, что меня накажут за это, но ...

Я согласен с Дэйвом Маркл, но я хотел бы добавить, что преимущество публикации файлов PDB, как вы сказали, ОЧЕНЬ приятно для отладки.

Тем не менее, я не продаю программное обеспечение, и весь код, который я пишу, предназначен для внутреннего использования в нашей компании. В этом контексте я не вижу проблем с запуском кода отладки в производство вместе с файлами PDB. Я никогда не видел снижения производительности, и, честно говоря, наши пользователи редко предоставляют нам правильную информацию, если сталкиваются с необработанными исключениями. Конечно, мы стараемся правильно обрабатывать исключения, но, как вы знаете, ошибки будут. Наша стратегия состоит в том, чтобы добавить глобальный обработчик исключений ко ВСЕМ проектам и регистрировать эти события в базе данных. Эти ошибки содержат номера строк, потому что мы включаем файлы отладки, и в результате мы можем быстро определить и отреагировать на плохой код, исправить его и получить больше приложений без ошибок. Для меня (и для наших пользователей) это ОГРОМНОЕ преимущество, без которого я бы не хотел обойтись.

Так что, если вы находитесь в подобной ситуации, я говорю: забудьте официальную позицию (в данном случае) и опубликуйте файлы pdb с ОДНОЙ важной оговоркой.

Тщательно убедитесь, что любое веб-приложение, которое вы развертываете с файлами PDB, должно быть полностью уверено, что ВСЕ исключения обрабатываются должным образом, и что вы случайно не открываете строки кода на стандартной странице ошибок Asp.NET.

13
ответ дан 3 December 2019 в 16:09
поделиться

Я считаю полезным также создать отладочную информацию для версии Release - помогает отлавливать ошибки. Это не замедляет работу программы. Но вам не следует отправлять файл PDB вместе с вашим приложением, если вы не хотите, чтобы другие могли легче его реконструировать. Отдайте только тестерам.

0
ответ дан 3 December 2019 в 16:09
поделиться

Создайте pdbs для вашей релизной сборки, но не отправляйте их. Храните pdbs в безопасном месте вместе с соответствующей сборкой и исходным кодом. Если вы получите сбой в реальном времени или что-то подобное, вы можете использовать pdbs для посмертной отладки с помощью Debugging Tools for Windows, или Visual Studio.

2
ответ дан 3 December 2019 в 16:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: