lib/bluepill/process_journal.rb in bluepill-0.0.62 vs lib/bluepill/process_journal.rb in bluepill-0.0.63

- old
+ new

@@ -4,14 +4,21 @@ module ProcessJournal extend self class << self attr_reader :logger + attr_reader :journal_base_dir def logger=(new_logger) @logger ||= new_logger end + + def base_dir=(base_dir) + @journal_base_dir ||= File.join(base_dir, "journals") + FileUtils.mkdir_p(@journal_base_dir) unless File.exists?(@journal_base_dir) + FileUtils.chmod(0777, @journal_base_dir) + end end def skip_pid?(pid) !pid.is_a?(Integer) || pid <= 1 end @@ -47,27 +54,27 @@ System.delete_if_exists(f) if File.directory?(f) end end def pid_journal_filename(journal_name) - ".bluepill_pids_journal.#{journal_name}" + File.join(@journal_base_dir, ".bluepill_pids_journal.#{journal_name}") end def pgid_journal_filename(journal_name) - ".bluepill_pgids_journal.#{journal_name}" + File.join(@journal_base_dir, ".bluepill_pgids_journal.#{journal_name}") end def pid_journal(filename) - logger.debug("pid journal PWD=#{Dir.pwd}") + logger.debug("pid journal file: #{filename}") result = File.open(filename, 'r').readlines.map(&:to_i).reject {|pid| skip_pid?(pid)} logger.debug("pid journal = #{result.join(' ')}") result rescue Errno::ENOENT [] end def pgid_journal(filename) - logger.debug("pgid journal PWD=#{Dir.pwd}") + logger.debug("pgid journal file: #{filename}") result = File.open(filename, 'r').readlines.map(&:to_i).reject {|pgid| skip_pgid?(pgid)} logger.debug("pgid journal = #{result.join(' ')}") result rescue Errno::ENOENT []