module Eye::Process::Data
Public Instance Methods
app_name()
click to toggle source
# File lib/eye/process/data.rb, line 7 def app_name self[:application] end
debug_data()
click to toggle source
# File lib/eye/process/data.rb, line 54 def debug_data { queue: scheduler_actions_list, watchers: @watchers.keys, timers: timers_data } end
environment_string()
click to toggle source
# File lib/eye/process/data.rb, line 72 def environment_string s = [] @config[:environment].each { |k, v| s << "#{k}=#{v}" } s * ' ' end
full_name()
click to toggle source
# File lib/eye/process/data.rb, line 19 def full_name @full_name ||= [app_name, group_name, self[:name]].compact.join(':') end
group_name()
click to toggle source
# File lib/eye/process/data.rb, line 11 def group_name self[:group] == '__default__' ? nil : self[:group] end
group_name_pure()
click to toggle source
# File lib/eye/process/data.rb, line 15 def group_name_pure self[:group] end
logger_tag()
click to toggle source
# File lib/eye/process/data.rb, line 3 def logger_tag full_name end
self_status_data(opts)
click to toggle source
# File lib/eye/process/data.rb, line 36 def self_status_data(opts) h = { name: name, state: state, type: (self.class == Eye::ChildProcess ? :child_process : :process), resources: Eye::SystemResources.resources(pid) } if @states_history h[:state_changed_at] = @states_history.last_state_changed_at.to_i h[:state_reason] = @states_history.last_reason.to_s end h[:debug] = debug_data if opts[:debug] h[:procline] = Eye::SystemResources.args(self.pid) if opts[:procline] h[:current_command] = scheduler_current_command if scheduler_current_command h end
shell_string(dir = true)
click to toggle source
# File lib/eye/process/data.rb, line 78 def shell_string(dir = true) str = '' str += "cd #{self[:working_dir]} && " if dir str += environment_string str += ' ' str += self[:start_command] str += ' &' if self[:daemonize] str end
status_data(opts = {})
click to toggle source
# File lib/eye/process/data.rb, line 23 def status_data(opts = {}) p_st = self_status_data(opts) if children.present? p_st.merge(subtree: Eye::Utils::AliveArray.new(children.values).map { |c| c.status_data(opts) }) elsif self[:monitor_children] && self.up? p_st.merge(subtree: [{ name: '=loading children=' }]) else # common state p_st end end
sub_object?(obj)
click to toggle source
# File lib/eye/process/data.rb, line 66 def sub_object?(obj) return false if self.class == Eye::ChildProcess self.children.each { |_, child| return true if child == obj } false end
timers_data()
click to toggle source
# File lib/eye/process/data.rb, line 58 def timers_data if actor = Thread.current[:celluloid_actor] actor.timers.timers.map(&:interval) end rescue [] end