Nous avons trouvé un attribut sur l'objet curseur appelé cursor._last_executed
qui contient la dernière chaîne de requête à exécuter même lorsqu'une exception se produit. C'était plus facile et mieux pour nous en production que d'utiliser le profilage tout le temps ou la journalisation des requêtes MySQL, car les deux ont un impact sur les performances et impliquent plus de code ou plus de fichiers journaux séparés corrélés, etc.
Je déteste répondre à ma propre question, mais cela fonctionne mieux pour nous.