41 lines
		
	
	
		
			926 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			926 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| require "logger"
 | |
| 
 | |
| class DevopsLogger
 | |
| 
 | |
|   def self.create out, level=Logger::INFO, format='%a %d-%m-%Y %H%M '
 | |
|     logger = Logger.new out
 | |
|     logger.level = level
 | |
|     logger.datetime_format = format
 | |
|     logger.debug("Logger has been created")
 | |
|     logger
 | |
|   end
 | |
| 
 | |
|   def self.access_logger out, level=Logger::INFO, format='%d-%m-%Y %H:%M:%S'
 | |
|     logger = Logger.new out
 | |
|     logger.level = level
 | |
|     logger.datetime_format = format
 | |
|     logger.formatter = proc do |severity, datetime, progname, msg|
 | |
|       date_format = datetime.strftime(format)
 | |
|       "[#{date_format}] #{msg}\n"
 | |
|     end
 | |
|     logger.debug("Logger has been created")
 | |
|     logger
 | |
|   end
 | |
| 
 | |
|   def self.logger
 | |
|     @_logger ||= DevopsLogger.create(File.join(DevopsConfig.config[:log_dir], "devops.errors.log"))
 | |
|   end
 | |
| 
 | |
|   def self.logger= logger
 | |
|     @_logger = logger
 | |
|   end
 | |
| 
 | |
|   def self.level= level
 | |
|     @level = level
 | |
|   end
 | |
| 
 | |
|   def self.level
 | |
|     @level || Logger::INFO
 | |
|   end
 | |
| end
 | 
