lib/daengine.rb in daengine-0.1.2 vs lib/daengine.rb in daengine-0.1.3
- old
+ new
@@ -1,44 +1,72 @@
-require "daengine/version"
-require 'daengine/engine'
-require File.expand_path('../../app/models/digital_asset',__FILE__)
-require 'daengine/teamsite_metadata_parser'
-require 'daengine/digital_asset_processor'
-require 'mongoid'
-
-module Daengine
- @config = {
- :assets_path => '/digital-assets'
- }
-
- @mongoid_config = {
- 'database' => 'ssc_assets', # mongoid database name
- 'host' => nil, # mongoid server
- 'port' => nil, # mongodb server port
- 'hosts' => nil
- }
-
- @valid_mongoid_keys = @mongoid_config.keys
-
- # yaml file config
- def self.configure(config_options)
- config_options.each {|k,v| @config[k.to_sym] = v}
- config_options.each {|k,v|
- @mongoid_config[k] = v if @valid_mongoid_keys.include? k
- }
- @mongoid_config.delete_if { |k,v| ! v }
- Mongoid.configure do |config|
- config.from_hash(@mongoid_config)
- end
- p "configured with keys #{@config.keys}"
- end
-
- def self.config
- @config
- end
-
- def self.execute(config_options)
- self.configure(config_options)
- return DigitalAssetProcessor.process_tuple_directory # start the thread daemon
- end
-
-end
+require "daengine/version"
+require 'daengine/engine'
+require File.expand_path('../../app/models/digital_asset',__FILE__)
+require 'daengine/teamsite_metadata_parser'
+require 'daengine/digital_asset_processor'
+require 'mongoid'
+require 'logger'
+
+module Daengine
+ @logger = "/logs/daengine.log"
+
+ @config = {
+ :assets_path => '/digital-assets'
+ }
+
+ @mongoid_config = {
+ 'database' => 'ssc_assets', # mongoid database name
+ 'host' => nil, # mongoid server
+ 'port' => nil, # mongodb server port
+ 'hosts' => nil
+ }
+
+ @valid_mongoid_keys = @mongoid_config.keys
+
+ def self.log(message, level)
+ message = "[#{Time.now.strftime("%Y-%m-%d %H:%M:%S")}] #{message}"
+
+ puts "#{message}"
+ case level
+ when "warn"
+ @logger.warn "#{message}"
+ when "error"
+ @logger.error "#{message}"
+ else
+ @logger.info "#{message}"
+ end
+ end
+
+ # yaml file config
+ def self.configure(config_options)
+ config_options.each {|k,v| @config[k.to_sym] = v}
+ config_options.each {|k,v|
+ @mongoid_config[k] = v if @valid_mongoid_keys.include? k
+ }
+ @mongoid_config.delete_if { |k,v| ! v }
+ Mongoid.configure do |config|
+ config.from_hash(@mongoid_config)
+ end
+ end
+
+ def self.config
+ @config
+ end
+
+ def self.execute(config_options)
+ self.configure(config_options)
+ self.set_logger()
+ self.log("Daengine: ### Loading application config ###", "info")
+ config_options.each { |key, value| self.log("CONFIG #{key}\t#{value}", "info")}
+ return DigitalAssetProcessor.process_tuple_directory # start the thread daemon
+ end
+
+ def self.set_logger
+ logfile = self.config[:logfile_location]
+ @logger = Logger.new(logfile, 'daily')
+ end
+
+ def self.logger
+ @logger
+ end
+
+end