2013-08-22 5 views
0

Скажите, что у вас есть приложение .net, которое вы передали своему клиенту, с помощью кнопки эта кнопка выполняет какой-то код, пользователь нажимает на эту кнопку и сбой генерирует общее сообщение об ошибке.Отладка доставленных приложений

Любые идеи или советы о том, как можно отлаживать такую ​​ошибку, не имея окружения этой ошибки под вашим контролем? как и что я должен записывать во время выполнения моего кода, чтобы иметь возможность точно определить проблему, просто попросив клиента отправить мне сообщение об ошибке?

Я был бы признателен, если был бы вам предложен подобный подход для javascript-кода.

ответ

0

Это очень широкий вопрос, но, вероятно, первое, что нужно для регистрации деталей исключения. Существует множество библиотек, которые помогут вам сделать это, без необходимости писать весь код низкого уровня (NLog, log4net и т. Д., Просто выберите один). Поймайте любые необработанные исключения в вашем приложении (точный метод зависит от типа приложения) и передайте их в структуру ведения журнала.

Из трассировки стека исключения вы, вероятно, можете собрать полезную информацию, но этого может быть недостаточно. Используйте фреймворк регистрации, чтобы регистрировать больше информации, чем только исключения, возможно, в критических точках вашего приложения. Сделайте его необязательным, чтобы вы могли включить его, но обычно он отключается для лучшей производительности.

Помимо этого, используйте свое воображение и инструменты в своем распоряжении и задайте любые другие более конкретные вопросы.

+0

Таким образом, нет типичных аспектов поведения приложения или частей кода, которые должны регистрироваться, чтобы помочь выполнить dubugging? вы просто регистрируете исключение и его данные вместе с любыми частями кода, которые я вижу как критические, в зависимости от контекста моего кода? – Sisyphus

+0

Это мое занятие, да. Теперь я только что видел там тег javascript, и все может быть различным в зависимости от того, что на самом деле представляет приложение. Для приложений ASP.Net вы также можете регистрировать состояние запроса, например, с максимально возможным количеством переменных сервера. Но в общем случае на самом деле нет ничего общего, насколько я знаю. –

+0

я вижу, спасибо :) – Sisyphus