Dr. Watson — отладчик приложений в операционных системах Microsoft Windows. Он обычно носит имя drwatson.exe, drwtsn32.exe или dwwin.exe, в зависимости от версии Windows. Отладчик получил свое название от доктора Джона Ватсона (John Watson) из произведений Артура Конан Дойля о Шерлоке Холмсе, так как цель отладчика — сбор симптомов, сопутствующих ошибке. Изначально название этого диагностического инструмента было «Sherlock»[]. Использование слова «Watson» позднее было расширено и включило в себя сбор и отправку отзывов от пользователей программного обеспечения[].
Информация (отчёт об ошибке), собранная Dr. Watson — это техническая информация, нужная разработчикам ПО, чтобы диагностировать причину ошибки. Текстовый файл (Drwtsn32.log) создается в момент, когда случилась ошибка, и может быть доставлен персоналу, ответственному за поддержку ПО предпочтительным им способом. Также может быть создан файл-минидамп — бинарный файл, который может быть открыт и проанализирован с помощью программы-отладчика. Dr. Watson может определить точное место ошибки в коде приложения, если имеются необходимые символьные файлы (symbol files) и настроены пути для поиска этих файлов.
В момент, когда в приложении Windows происходит критическая ошибка, система производит поиск программного обработчика ошибки (англ. error handler). Программный обработчик ошибки — это обычно зарегистрированная в системе функция, которая вызывается, когда в программе возникает исключение. Если система не обнаруживает зарегистрированный обработчик ошибки, система удостоверяется, что программа в данный момент не находится в режиме отладки, и ошибка считается необработанной. Система затем ищет в реестре Windows информацию об установленных программах-отладчиках ошибок, где по умолчанию записан Dr. Watson. Сторонний отладчик также может быть использован вместо Dr. Watson. Например, компилятор языка С Watcom включает в себя похожий инструмент обработки ошибок, называемый «Dr. Watcom»[].
Начиная с Windows Vista, название Dr. Watson было заменено на «Problem Reports and Solutions»[].
Отчёт об ошибке отправляется с помощью службы Windows Error Reporting на специальный сервер Microsoft, где все отчёты сортируются и хранятся в централизованной базе данных. Для того, чтобы получить доступ к отчётам для конкретного приложения, разработчику нужно зарегистрироваться на сервере Microsoft, после чего он получает возможность анализировать отчёты об ошибках.
Google Breakpad[] является многоплатформенной библиотекой с открытым исходным кодом для обработки исключительных ситуаций и отправки отчёта об ошибке. Он используется в популярном браузере Firefox для доставки отчётов об ошибках от пользователей.
Библиотека CrashRpt[] также предназначена для сбора и отправки сообщений об ошибках на стороне пользователя. Она является открытой библиотекой, но, в отличие от Breakpad предназначена только для платформы Windows.