aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib
diff options
context:
space:
mode:
Diffstat (limited to 'activerecord/lib')
-rwxr-xr-xactiverecord/lib/active_record/base.rb6
-rwxr-xr-xactiverecord/lib/active_record/connection_adapters/abstract_adapter.rb20
2 files changed, 18 insertions, 8 deletions
diff --git a/activerecord/lib/active_record/base.rb b/activerecord/lib/active_record/base.rb
index 2725e3c7f5..b198f0a636 100755
--- a/activerecord/lib/active_record/base.rb
+++ b/activerecord/lib/active_record/base.rb
@@ -264,6 +264,12 @@ module ActiveRecord #:nodoc:
cattr_accessor :pluralize_table_names
@@pluralize_table_names = true
+ # Determines whether or not to use ANSI codes to colorize the logging statements committed by the connection adapter. These colors
+ # makes it much easier to overview things during debugging (when used through a reader like +tail+ and on a black background), but
+ # may complicate matters if you use software like syslog. This is true, by default.
+ cattr_accessor :colorize_logging
+ @@colorize_logging = true
+
# Determines whether to use Time.local (using :local) or Time.utc (using :utc) when pulling dates and times from the database.
# This is set to :local by default.
cattr_accessor :default_timezone
diff --git a/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb b/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb
index d686d71246..b0865d9aab 100755
--- a/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb
+++ b/activerecord/lib/active_record/connection_adapters/abstract_adapter.rb
@@ -422,16 +422,20 @@ module ActiveRecord
end
def format_log_entry(message, dump = nil)
- if @@row_even then
- @@row_even = false; caller_color = "1;32"; message_color = "4;33"; dump_color = "1;37"
+ if ActiveRecord::Base.colorize_logging
+ if @@row_even then
+ @@row_even = false; caller_color = "1;32"; message_color = "4;33"; dump_color = "1;37"
+ else
+ @@row_even = true; caller_color = "1;36"; message_color = "4;35"; dump_color = "0;37"
+ end
+
+ log_entry = " \e[#{message_color}m#{message}\e[m"
+ log_entry << " \e[#{dump_color}m%s\e[m" % dump if dump.kind_of?(String) && !dump.nil?
+ log_entry << " \e[#{dump_color}m%p\e[m" % dump if !dump.kind_of?(String) && !dump.nil?
+ log_entry
else
- @@row_even = true; caller_color = "1;36"; message_color = "4;35"; dump_color = "0;37"
+ "%s %s" % [message, dump]
end
-
- log_entry = " \e[#{message_color}m#{message}\e[m"
- log_entry << " \e[#{dump_color}m%s\e[m" % dump if dump.kind_of?(String) && !dump.nil?
- log_entry << " \e[#{dump_color}m%p\e[m" % dump if !dump.kind_of?(String) && !dump.nil?
- log_entry
end
end