du Guide de rails sur le débogage, j'ai trouvé que je peux personnaliser la sortie à mes fichiers journaux Utilisation de cette méthode simple: J'ai décidé utiliser ceci pour suivre la manière dont une variable change et passe par contrôle de flux. P> Je voudrais pouvoir voir le numéro de ligne de mon code où enregistreur # débogage code> a été appelé. Quelque chose comme ceci: p>
3 Réponses :
logger.debug "Person attributes hash: #{@person.attributes.inspect} from line #{__LINE__}"
Voir ma première phrase. StackoverFlow Message Parser ne montre pas deux souligneurs de la ligne (les cache ou mange d'une manière ou d'une autre; peut-être fait partie du message entre les soulignements audacieux).
OK super! Merci! Je ne savais pas que tu voulais dire des analyses d'aussi. Alors, utilisez ceci: dpaste.com/159599
Utilisez un décorateur sur l'enregistreur:
class LoggerDecorator def initialize(logger) @logger = logger end %w{debug info warn error fatal}.each do |method| eval(<<-eomethod) def #{method}(msg) @logger.#{method}(position) {msg} end eomethod end private def position caller.at(1).sub(%r{.*/},'').sub(%r{:in\s.*},'') end end
AS des rails 5, ceci est maintenant cuit via: voir La documentation pour plus de p> p>