Технически это лог, т.е. можно натыкать 100500 этих printf, и посмотреть до какого момента и в каком состоянии доходит. И если тебе нужно совершить например сотню итераций, а падает на рандомном этапе, то только так по сути и "дебажить". Причем дэбаг это ещё и остановка кода, что порой приводит к всяким нежелательным таймаутам.
Ну или ещё более веселое -- падает в релизной сборке, которую особо не подэбажишь.
"веселая" ситуация случилась пару месяцев назад.
В дебаге не воспроизводится
В релизе воспроизводится
Логируешь и в релизе не воспроизводится. Оказалось что движок подвисал чутка и время на логирование ему давало время что бы раздуплиться.
Вот это печальная ситуация.
Никогда по звонку с плохой связью не решал проблему "у меня там раньше был этот кругленький ну звонить внукам чтобы а потом я куда-то что-то нажал или не нажал и теперь не звонит" ?
В итоге опустили в могилу вертикально и вверх ногами. И привязанным к гробу снаружи.