Class: AdWords::AdWordsLogger
- Inherits:
-
Object
- Object
- AdWords::AdWordsLogger
- Defined in:
- lib/adwords4r/adwordslogger.rb
Overview
Wrapper class to handle logging to console and/or files.
Instance Method Summary collapse
-
#<<(text) ⇒ Object
Overload << operator to perform logging.
-
#initialize(filename, log_to_console = false) ⇒ AdWordsLogger
constructor
Constructor for AdWordsLogger.
-
#log_to_file(path = '.') ⇒ Object
Enables logging to a file.
Constructor Details
#initialize(filename, log_to_console = false) ⇒ AdWordsLogger
Constructor for AdWordsLogger.
Args:
-
filename: the filename for the log file to be written (if log_to_file is called)
-
log_to_console: boolean, indicates whether or not to log to the console
36 37 38 39 40 41 42 43 44 |
# File 'lib/adwords4r/adwordslogger.rb', line 36 def initialize(filename, log_to_console=false) @filename = filename @loggers = [] if log_to_console stderr_logger = Logger.new(STDERR) stderr_logger.level = Logger::INFO @loggers << stderr_logger end end |
Instance Method Details
#<<(text) ⇒ Object
Overload << operator to perform logging.
62 63 64 65 66 |
# File 'lib/adwords4r/adwordslogger.rb', line 62 def << (text) @loggers.each do |logger| logger.info text.to_s end end |
#log_to_file(path = '.') ⇒ Object
Enables logging to a file. May be called several times to log to multiple files.
Args:
-
path: where to write the file (defaults to current dir). Path only, do not provide filename.
53 54 55 56 57 58 59 |
# File 'lib/adwords4r/adwordslogger.rb', line 53 def log_to_file(path='.') new_logger = Logger.new(File.join(path, @filename)) new_logger.level = Logger::INFO @loggers << new_logger return nil end |