exit 1
end
output = option[:output]
+ flock = "ON"
begin
if output.nil? then
raise RuntimeError, "The output file is already exist."
end
log = File.open(output, "w")
+ log.flock(File::LOCK_EX)
puts "Started query log, writing to the file \"#{output}\""
end
result = JobLog.monitor(addr[0], addr[1], option[:job].strip) do |line,status,errmsg|
log.puts line
+ if flock.eql? "ON" then
+ log.flock(File::LOCK_UN)
+ flock = "OFF"
+ end
end
if result and not output.nil? then
log.puts "=LOG_END"
result = false
rescue => e
puts "ERROR: #{e}"
+ puts e.backtrace.inspect
result = false
ensure
if not output.nil? then
end
if(status == "ALL")
- status = "'FINISHED', 'JUST_CREATED', 'WAITING', 'WORKING', 'REMOTE_WORKING', 'PENDING', 'ERROR', 'CANCELED'"
+ status = "'FINISHED', 'INITIALIZING', 'JUST_CREATED', 'WAITING', 'WORKING', 'REMOTE_WORKING', 'PENDING', 'ERROR', 'CANCELED'"
elsif(status == "SUCCESS")
status = "'FINISHED'"
elsif(status == "WORKING")
- status = "'JUST_CREATE', 'WAITING', 'WORKING', 'REMOTE_WORKING', 'PENDING'"
+ status = "'INITIALIZING', 'JUST_CREATED', 'WAITING', 'WORKING', 'REMOTE_WORKING', 'PENDING'"
elsif(status == "ERROR")
status = "'ERROR', 'CANCELED'"
end
end
if(status == "ALL")
- status = "'FINISHED', 'JUST_CREATED', 'WAITING', 'WORKING', 'REMOTE_WORKING', 'PENDING', 'ERROR', 'CANCELED'"
+ status = "'FINISHED', 'INITIALIZING', 'JUST_CREATED', 'WAITING', 'WORKING', 'REMOTE_WORKING', 'PENDING', 'ERROR', 'CANCELED'"
elsif(status == "SUCCESS")
status = "'FINISHED'"
elsif(status == "WORKING")
- status = "'JUST_CREATE', 'WAITING', 'WORKING', 'REMOTE_WORKING', 'PENDING'"
+ status = "'INITIALIZING', 'JUST_CREATED', 'WAITING', 'WORKING', 'REMOTE_WORKING', 'PENDING'"
elsif(status == "ERROR")
status = "'ERROR', 'CANCELED'"
end
end
if(status == "ALL")
- status = "'FINISHED', 'JUST_CREATED', 'WAITING', 'WORKING', 'REMOTE_WORKING', 'PENDING', 'ERROR', 'CANCELED'"
+ status = "'FINISHED', 'INITIALIZING', 'JUST_CREATED', 'WAITING', 'WORKING', 'REMOTE_WORKING', 'PENDING', 'ERROR', 'CANCELED'"
elsif(status == "SUCCESS")
status = "'FINISHED'"
elsif(status == "WORKING")
- status = "'JUST_CREATE', 'WAITING', 'WORKING', 'REMOTE_WORKING', 'PENDING'"
+ status = "'INITIALIZING', 'JUST_CREATED', 'WAITING', 'WORKING', 'REMOTE_WORKING', 'PENDING'"
elsif(status == "ERROR")
status = "'ERROR', 'CANCELED'"
end
if not File.exist?(path) then
#if file does not exist then execute query-log command
Utils.sbi_query_log_command(id, path)
+ sleep(1)
conti = 1
else
start_line = line