class Object
Public Instance Methods
fill_attrib(attribs, mode, set_length)
click to toggle source
# File lib/autoflow/logging.rb, line 33 def fill_attrib(attribs, mode, set_length) query = attribs[mode] if query.nil? attribs[mode] = Array.new(set_length, 0) elsif query.length < set_length (set_length - query.length).times do query << 0 end end end
parse_log(log_path)
click to toggle source
# File lib/autoflow/logging.rb, line 1 def parse_log(log_path) log = {} if Dir.exists?(log_path) Dir.entries(log_path).each do |entry| next if entry == '.' || entry == '..' File.open(File.join(log_path, entry)).each do |line| line.chomp! name, status, time_int = line.split("\t") time = time_int.to_i query = log[name] if query.nil? log[name] = {status => [time]} else query_status = query[status] if query_status.nil? query[status] = [time] else query[status] << time end end end end end log.each do |task, attribs| #puts "#{attribs.inspect}" set_length = attribs['set'].length fill_attrib(attribs, 'start', set_length) fill_attrib(attribs, 'end', set_length) end return log end
write_log(log, log_path, job_relations_with_folders)
click to toggle source
# File lib/autoflow/logging.rb, line 44 def write_log(log, log_path, job_relations_with_folders) Dir.mkdir(log_path) if !Dir.exists?(log_path) job_relations_with_folders.each do |name, folder_deps| if !log[name].nil? #Control check when the wk_log folder has been deleted folder, deps = folder_deps f = File.open([log_path, File.basename(folder)].join('/'), 'w') log[name].each do |mode, times| times.each do |time| f.puts "#{name}\t#{mode}\t#{time}" end end f.close end end end