1. Подключить к своей программе библиотеку логгирования. Рекомендую log4cplus.
https://habr.com/ru/post/118165/
Дружит с Qt. Логгировать все и вся.
Логгер конфигурируется через текстовой файл конфигурации, который лежит рядом с приложением. В конфигурации задано какого уровня ошибки логгировать и куда (в файл, консоль, сеть).
Уровни логгирования по важности TRACE > DEBUG > INFO > WARN > ERROR > FATAL
При нормальной работе приложения к конфиге устанавливаете логгировать INFO сообщения и выше.
Как только происходит что-то плохое, ваша программа падает - просите клиентов включить логгирование TRACE, завалить программу и прислать логи. Или если можете это сделать сами удаленно.
2. Подключаете Google Breakpad
https://maxsavenkov.livejournal.com/189460.html После падения берете краш-дамп и изучаете. Там будет видно в какой функции упали, это упростит поиск.
Рекомендую начать со 2 пути, он побыстрее. Эти варианты не исключают друг друга, а дополняют.