lib/dataload.rb in GFunk911-dataload-0.3.4 vs lib/dataload.rb in GFunk911-dataload-0.8.0
- old
+ new
@@ -1,33 +1,66 @@
-require File.dirname(__FILE__) + "/dataload/loader"
+def handle_errors
+ yield
+rescue => exp
+ msg = [exp.message,exp.backtrace.join("\n")].join("\n")
+ Dataload.log msg
+ puts exp.message
+ raise "Error occured and logged. Exiting."
+end
+
+require File.dirname(__FILE__) + "/dataload/table_loader"
+require File.dirname(__FILE__) + "/dataload/table_manager"
+require File.dirname(__FILE__) + "/dataload/master_loader"
+Dir[File.dirname(__FILE__) + "/dataload/dsl/*.rb"].each { |x| require x }
+
+class Dataload
+ class << self
+ fattr(:logger) { DataloadLogger.new }
+ def log(str)
+ logger.log(str)
+ end
+ end
+end
+
+class DataloadLogger
+ def log(str)
+ File.append(filename,"#{Time.now.short_dt} #{str}\n")
+ end
+ fattr(:filename) do
+ t = Time.now.strftime("%Y%m%d%H%M%S")
+ res = File.expand_path("dataload_#{t}.log")
+ puts "Logging to #{res}"
+ res
+ end
+end
\ No newline at end of file