Class: DaemonLogger
- Inherits:
-
Object
- Object
- DaemonLogger
- Includes:
- Mixins, Singleton
- Defined in:
- lib/daemon_logger.rb
Defined Under Namespace
Modules: Mixins Classes: NullLogger
Instance Attribute Summary collapse
-
#email_receivers ⇒ Object
Returns the value of attribute email_receivers.
- #logger ⇒ Object
-
#smtp_server ⇒ Object
Returns the value of attribute smtp_server.
Class Method Summary collapse
Instance Method Summary collapse
-
#init(params) ⇒ Object
Params params<Hash>:: log_file_path<String>:: куда будет писаться лог email_receivers<Array>:: список получателей сообщений о критических ошибках.
Methods included from Mixins
#log, #log_exception, #with_exception_logging
Instance Attribute Details
#email_receivers ⇒ Object
Returns the value of attribute email_receivers.
9 10 11 |
# File 'lib/daemon_logger.rb', line 9 def email_receivers @email_receivers end |
#logger ⇒ Object
38 39 40 41 42 43 44 45 |
# File 'lib/daemon_logger.rb', line 38 def logger if @logger @logger else warn 'Logger not initialized yet, run init with :log_file_path' NullLogger.new end end |
#smtp_server ⇒ Object
Returns the value of attribute smtp_server.
9 10 11 |
# File 'lib/daemon_logger.rb', line 9 def smtp_server @smtp_server end |
Class Method Details
.init(*params) ⇒ Object
34 35 36 |
# File 'lib/daemon_logger.rb', line 34 def self.init(*params) instance.init(*params) end |
Instance Method Details
#init(params) ⇒ Object
Params
- params<Hash>
- log_file_path<String>
-
куда будет писаться лог
- email_receivers<Array>
-
список получателей сообщений о критических ошибках
22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/daemon_logger.rb', line 22 def init(params) raise TypeError.new(":log_file_path required") unless params[:log_file_path] file = File.open(params[:log_file_path], 'a') file.sync = true self.logger = Logger.new(file) logger.level = Logger::DEBUG logger.formatter = Logger::Formatter.new logger.datetime_format = "%y-%m-%d %H:%M:%S.%L" self.email_receivers = params[:email_receivers].to_a self.smtp_server = params[:smtp_server] || 'localhost' end |