V objektu kurzoru jsme našli atribut s názvem cursor._last_executed
který uchovává poslední řetězec dotazu, který se má spustit, i když dojde k výjimce. V produkci to pro nás bylo snazší a lepší než používat neustále profilování nebo protokolování dotazů MySQL, protože obojí má dopad na výkon a vyžaduje více kódu nebo více korelujících samostatných souborů protokolu atd.
Nerad odpovídám na svou vlastní otázku, ale tohle nám funguje lépe.