2009-11-12 3 views

Répondre

1

Si vous voulez dire Ruby/MySQL, qui fournit une fonction debug() qui effectue la même fonction que mysql_debug() - si votre bibliothèque client a été compilé avec le débogage, vous peut obtenir DBUG to trace things pour vous. Cela pourrait donner ce que vous cherchez (avec un peu de nettoyage.)

Une autre approche serait de capture the MySQL packets using tcpdump and decode them with maatkit.

Une troisième approche consisterait à alias Mysql.query and Mysql.real_query with your own functions qui effectue une journalisation. Quelque chose comme ça (non testé! Exemple trivial! Ne gère pas les blocs!):

class Mysql 
    alias_method :old_query, :query 
    def query(sql) 
    $stderr.puts "SQL: #{sql}" 
    old_query(sql) 
    end 
end 
0

Rails utilise des ORM comme ActiveRecord auquel est associé son enregistreur. Je ne pense pas gem MySQL a un enregistreur ...

Questions connexes