Module: Flatware

Defined in:
lib/flatware.rb,
lib/flatware/cli.rb,
lib/flatware/job.rb,
lib/flatware/pid.rb,
lib/flatware/sink.rb,
lib/flatware/worker.rb,
lib/flatware/version.rb,
lib/flatware/broadcaster.rb,
lib/flatware/sink/client.rb,
lib/flatware/sink/signal.rb,
lib/flatware/configuration.rb,
lib/flatware/serialized_exception.rb

Defined Under Namespace

Modules: Sink Classes: Broadcaster, CLI, Configuration, Job, Pid, SerializedClass, SerializedException, Worker

Constant Summary collapse

VERSION =
"2.3.4"

Class Method Summary collapse

Class Method Details

.configurationObject



33
34
35
# File 'lib/flatware/configuration.rb', line 33

def configuration
  @configuration ||= Configuration.new
end

.configure {|configuration| ... } ⇒ Object

Yields:



37
38
39
# File 'lib/flatware/configuration.rb', line 37

def configure(&_block)
  yield configuration
end

.log(*message) ⇒ Object



22
23
24
25
26
27
28
29
30
# File 'lib/flatware.rb', line 22

def log(*message)
  case message.first
  when Exception
    logger.error message.first
  else
    logger.info(([$PROGRAM_NAME] + message).join(' '))
  end
  message
end

.loggerObject



14
15
16
# File 'lib/flatware.rb', line 14

def logger
  @logger ||= Logger.new($stderr, level: :fatal)
end

.logger=(logger) ⇒ Object



18
19
20
# File 'lib/flatware.rb', line 18

def logger=(logger)
  @logger = logger
end

.pidsObject

All the pids of all the processes called flatware on this machine



9
10
11
# File 'lib/flatware/pid.rb', line 9

def pids
  Pid.pids { |pid| pid.command =~ /flatware/ }
end

.pids_of_group(group_pid) ⇒ Object



13
14
15
# File 'lib/flatware/pid.rb', line 13

def pids_of_group(group_pid)
  Pid.pids { |pid| pid.pgid == group_pid }
end

.verbose=(bool) ⇒ Object



32
33
34
# File 'lib/flatware.rb', line 32

def verbose=(bool)
  logger.level = bool ? :debug : :fatal
end

.verbose?Boolean

Returns:

  • (Boolean)


36
37
38
# File 'lib/flatware.rb', line 36

def verbose?
  logger.level < Logger::SEV_LABEL.index('FATAL')
end