2011-02-10 4 views
4

Existe-t-il un moyen de désactiver/tronquer les champs BLOB dans les requêtes SQL journalisées? Lorsque j'insère ou que je mets à jour un enregistrement contenant des champs BLOB, l'enregistreur Rails imprime le contenu de ces champs, ce qui est très ennuyeux. J'ai trouvé quelques solutions, mais aucun d'entre eux travaillent avec Rails 3.Désactiver la journalisation BLOB dans Rails 3

Répondre

1

Je pense qu'il ya deux ou trois choses que vous pouvez faire, on serait de passer outre la fonction format_message de l'enregistreur et supprimer des champs BLOB du message enregistreur:

class Logger 
    def remove_blobs msg 
    ... 
    end 

    def format_message(severity, timestamp, progname, msg) 
    "#{remove_blobs msg}\n" 
    end 
end 

La prochaine étape consisterait à ajouter vos champs blob aux paramètres_paramètres dans votre fichier application.rb. Cela signifierait que les champs blob seraient filtrés de vos journaux d'application entièrement:

config.filter_parameters += [:blob_field1, :blob_field2] 

Enfin, vous pouvez regarder dans d'autres pierres précieuses de l'exploitation forestière, comme logging, d'ajouter une personnalisation plus poussée à vos journaux.

Questions connexes