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>