Guest User

Untitled

a guest
Feb 21st, 2018
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.75 KB | None | 0 0
  1. class Article < ActiveRecord::Base
  2.  
  3. LOGFILE = File.join(RAILS_ROOT, '/log/', "article_#{RAILS_ENV}.log")
  4.  
  5. def validate
  6. log "was validated!"
  7. end
  8.  
  9. def log(*args)
  10. args.size == 1 ? (message = args; severity = :info) : (severity, message = args)
  11. Article.logger severity, "Article##{self.id}: #{message}"
  12. end
  13.  
  14. def self.logger(severity = nil, message = nil)
  15. @article_logger ||= Article.open_log
  16. if !severity.nil? && !message.nil? && @article_logger.respond_to?(severity)
  17. @article_logger.send severity, "[#{Time.now.to_s(:db)}] [#{severity.to_s.capitalize}] #{message}\n"
  18. end
  19. message or @article_logger
  20. end
  21.  
  22. def self.open_log
  23. ActiveSupport::BufferedLogger.new(LOGFILE)
  24. end
  25.  
  26. end
Add Comment
Please, Sign In to add comment