2009-08-17 29 views
6

क्या सक्रिय रिकॉर्ड बताने का कोई तरीका है कि लॉगिंग सामग्री के दौरान ansi रंग कोड लॉग न करें?मैं ActiveRecord को किसी भी नियंत्रण वर्ण को लॉग इन नहीं करने के लिए कैसे कहूं

ईजी। मैं इसे अपने लॉग में नहीं चाहता।

SQL (0.1ms) SELECT count(*) AS count_all FROM `users` WHERE (`user`.id = 133) 

मैं एक समाधान है कि इस तथ्य के बाद गंदगी को साफ करने में शामिल है की तलाश नहीं कर रहा हूँ:

[4;36;1mSQL (0.1ms)[0m [0;1mSELECT count(*) AS count_all FROM `users` WHERE (`user`.id = 133) [0m 

इसके बजाय मैं इस चाहते हैं।

उत्तर

9

उत्तर:

config.colorize_logging = false 

http://guides.rubyonrails.org/3_0_release_notes.html

ActiveRecord :: बेस देखें .colorize_logging और config.active_record.colorize_loggingके पक्ष में बहिष्कृत हैंरेल :: LogSubscriber.colorize_logging या config.colorize_logging

8

रेल 3 के लिए अपनी उचित वातावरण फाइल करने के लिए इस जोड़ें (मेरे मामले development.rb में)

config.active_record.colorize_logging = false 
+0

इस उत्तर रेल के लिए मान्य <3 में है – bjelli

4

मैं अपने JRuby लिपियों में इस विधि का उपयोग। बात यह है कि रंग को निष्क्रिय

ActiveSupport::LogSubscriber.colorize_logging = false 

get_jar_path है एक और तरीका है कि मामले में सही पथ रिटर्न स्क्रिप्ट एक जार

def activate_logger scriptname 
    # delete logs after a month 
    $log = Logger.new("#{get_jar_path}/logs/#{scriptname}_#{Time.now.strftime("%Y%m%d")}.txt", 'monthly') 
    # $log = Logger.new($stdout) 
    ActiveRecord::Base.logger = $log 
    ActiveRecord::Base.logger.level = Logger.const_get($debuglevel) 
    ActiveSupport::LogSubscriber.colorize_logging = false 
    $errors, $verwerkt = 0, 0 
    $log.info "start #{__FILE__}" 
end 
संबंधित मुद्दे

 संबंधित मुद्दे